In order to fix the flakiness in cockpit plugin tests introduced by the single login, the tests need a check if they are authenticated at the start of their execution and relog in case the session expired.
Add a single login for all tests in the form of a global setup. This commit also removes the login from all tests and replaces it with navigation to landing page and revamps the popup closing logic from being applied in logging step into a separate fixture.
Since the new SearchInput widget gets decomposed by PatternFly into a
<div> and the actual <input> element we're looking for is nested rather
deeply in this hierarchy, we need to use the locator to allow Playwright
to descend into that input.
Adds a Hostname customization test that creates a BP, edits BP, exports and imports it back and verifies the BP content.
This test also servers as a template for other customization tests. Includes a refactor of existing helper functions.
The jwt decode dependency helps us to keep track of the token that is
present in the Satellite command. jwt-decode is the most popular
dependency for the job, and very easy to use.
Makes the test's base url, user & password configurable through the
environment. Abstracts differences between hosted and cockpit where
possible to lib, and adds conditionals otherwise.