Commit Graph

119 Commits

Author SHA1 Message Date
Adam Williamson 670fc8c306 Add another cockpit login screen variant
More space between "Fedora" and the text below it...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-05 15:01:02 -08:00
Adam Williamson 845cfca12d Add more cockpit log needle variants
We're getting different log messages these days.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-04 14:52:21 -08:00
Adam Williamson adac5323f0 Update Cockpit log entry needle
We don't always get a smartd error any more, so add one for a
different error that's more consistent ATM.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-01-19 16:07:56 -08:00
Adam Williamson fdc4a51e2a Add new Cockpit login needle using the text box area
The background seems to be different in different tests, even
the reduced area I tried most recently seems to be different in
some runs. So let's just match in the text area instead. This
captures some "Fedora" text so it should still notice if branding
is broken.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-01-15 16:52:40 -08:00
Adam Williamson d0a53abda0 Update cockpit log entry details screen for Cockpit 235
The font of the identifier text got a bit smaller. I think it
looks kinda bad now, but it's not an outright bug, so just
living with it. I did file an upstream issue:
https://github.com/cockpit-project/cockpit/issues/15111

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-01-07 11:16:13 -08:00
Adam Williamson 1f757325a6 Reduce login_cockpit needle match area
There seem to be some weird shenanigans going on with the pipe
bit here (it looks different on different test runs? what?) so
let's just match on the plain grey area. Should still be enough.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-15 16:52:35 -08:00
Adam Williamson dc86780a13 Update Cockpit FreeIPA "join complete" needle for new domain
Left this out of previous commit, oops.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-15 14:45:02 -08:00
Adam Williamson 0de57180ee Update cockpit needles and autoupdate test for 234
Auto-update time is shown as '6:00' not '06:00' now, so trim the
needle to match both.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-15 11:20:43 -08:00
Adam Williamson 649fcc51f1 Cockpit 232 fixes
Update a needle with slightly different text rendering, and add
a workaround to hit tab three times rather than once on entering
the "Join a domain" screen, see
https://github.com/cockpit-project/cockpit/issues/14895 .

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-11 12:55:42 -08:00
Adam Williamson 5e5dbac636 Add updated cockpit_updates_reconnect needle
We only use this one rarely. Font rendering on it changed at
some point.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-07 14:42:26 -07:00
Adam Williamson f69e627dc3 Update some cockpit needles for version 228
They dropped Title Case from various things, some of which we
have needles for.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-16 12:27:54 -07:00
Adam Williamson 8e794a6c30 Update a Cockpit needle that changed in the latest release
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-03 15:13:54 -07:00
Adam Williamson 0220334a57 Drop stray match area from cockpit_leftbar_scroll
That's not supposed to be there...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 16:08:51 -07:00
Adam Williamson 078e3f212e Update Cockpit domain needles for Cockpit 224
Some font changes or something.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-22 18:32:05 -07:00
Adam Williamson a58ca4676d Update one more needle for new cockpit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-30 14:18:12 -07:00
Adam Williamson 2e21cfac15 Update cockpit needles and select_cockpit_update for 220
In Cockpit 220, the Updates entry is off the bottom of the screen
so we need to scroll the left bar down before we can click it.
Also update some other needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-30 10:27:20 -07:00
Adam Williamson c7031448ec Update Cockpit 'main screen' needle
It seems like sometimes the machine ID is off the bottom of the
screen now, so let's just match on the section title instead.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-04 17:24:31 -07:00
Adam Williamson 664d5d559f Update cockpit 'services entry' needle for new release
Unfortunately only the entry name is clickable now so we can't
have a 'generic' needle that'll work for any service.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-29 12:16:26 -07:00
Adam Williamson 49c8d46744 Update some Cockpit button needles for 217
Seems like text rendering on buttons changed a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-15 11:40:45 -07:00
Adam Williamson 21eea18562 Add a needle check script, remove some unused needles
I call this...The @lruzicka Catcher!

It's a script that checks for needles that aren't actually used
anywhere. It also checks for cases where we have a needle JSON
file but no image, or an image file but no JSON file (and wipes
one case of the latter). It also adds a run of the script to tox
so we get it in CI.

You could make this script a lot more elaborate if you like, by
being fancier about parsing the test code and templates, but I
don't think it's really warranted, I think it just needs to be
'good enough'. It's not the end of the world if it misses the
odd thing or the whitelisting goes stale.

Quite a lot of the removed needles are remnants of different
approaches to app start/stop testing which weren't caught in the
initial PR review. The short-name partitioning ones are odd; they
were introduced in the commit that moved needles into subdirs,
but at least some of them don't actually appear to be moves. They
may have been non-tracked files Josef had lying around that got
into the commit by mistake, or they may just be old needles we
really used at some point but aren't using any more.
reclaim_space_second_partition was introduced as part of the
shrink test (along with reclaim_space_first_partition) but was
never actually used by that test - I guess, again, the test got
re-written during review but we forgot to remove the needle. We
rejigged user creation to use tab presses not a needle match a
while back, which made user_creation_password_input unnecessary.
The various cockpit_updates_* needles are I think remnants of
rewrites of the cockpit update tests that again were missed in
PR review, the tests as merged never used them.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-08 16:55:46 -07:00
Adam Williamson dc7b7a7241 Great Needle Cleanup 2020
Remove a bunch of needles that have not been used for some time,
plus a few workarounds that are similarly stale.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-20 14:02:10 -07:00
Adam Williamson e2df109539 Update cockpit_updates_check needle
Button changed a bit (likely Patternfly 4 changes).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-18 12:21:18 -07:00
Adam Williamson c18a0d5008 Update cockpit 'updated' needle (check mark got thinner)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-18 11:57:33 -07:00
Adam Williamson 80c54d5491 Add cockpit_updates and remote_logging tests to updates
Again, no reason not to run these on updates. Includes adding
oldcantarell versions of several needles for current cockpit,
as they're needed for the tests to pass. Also tweak a couple of
needles to avoid false matches (add more empty space).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-24 21:03:41 +01:00
Adam Williamson 776d31bd5b Update various Cockpit needles for 211
Note we need two variants of most of these, one for Rawhide with
Cantarell 0.201, one for F30/F31 with Cantarell 0.111.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-24 15:18:27 +01:00
Adam Williamson f11a57f01a Drop match level on cockpit main needle
New cockpit hits 95%, let's just drop the required %age rather
than make a new needle.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-24 12:53:14 +01:00
Adam Williamson c922226d7c Add a variant Cockpit join_complete needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-20 13:36:58 +01:00
Adam Williamson 13da4f2d26 Add another new Cockpit join complete needle
This one from ppc64le test. The difference between all the
recent needles here is the amount of white space between the
'Domain' and 'domain.local'. I don't want to change it to two
match areas as there's a chance we may get a false positive
match when the join actually failed (it may match on 'Domain'
in the right place, and 'domain.local' somewhere else just as
part of the system's hostname). I suppose if this keeps happening
we could try two match areas but include some white space to the
left of 'domain.local' to avoid matching on it as part of the
hostname...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-15 15:22:34 +00:00
Adam Williamson 1e025c0b27 Tweak cockpit main needle to work on ppc64 too
We don't get a CPU model on ppc64, we get a machine ID everywhere
(I hope).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-15 12:16:33 +00:00
Adam Williamson aa0edd263b Update Cockpit 'realm join complete' needle for new cockpit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-08 17:28:49 -08:00
Adam Williamson 3998e9c86c Drop the 'cockpit join progress' needle match
The text we used to get has been replaced with a spinner, which
is difficult and unreliable to match on. This match was only
here to make the test fail a bit faster if it was broken, so
let's just live without it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-08 15:32:29 -08:00
Adam Williamson 7234729949 Drop use of logs_severity needle from Cockpit test entirely
This match keeps giving us problems, and now I look at the test
again, there is actually no need for it at all. Clicking it
doesn't do anything, and we already confirm that we're on the
right page at the next step, where we look for a log entry and
click on that - that will fail if we aren't actually on the
Logs page.

I don't remember what Cockpit used to look like when we first
put this line and needle in, presumably there's a reason we had
them, but they're clearly unnecessary now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-03 09:27:48 -08:00
Adam Williamson 5be282c744 Drop cockpit_logs_severity match requirement again
I am so freaking pissed off with these bizarre 'not quite'
matches, what the hell is Firefox doing

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-20 09:04:52 -08:00
Adam Williamson a88d7b701e Add another Cockpit realm join complete button
Whitespace changed, sigh...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-18 23:21:15 -08:00
Adam Williamson f9f2d08263 Add new cockpit autoupdate on needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-18 12:36:57 -08:00
Adam Williamson 237cdee4b2 Tweak Cockpit log severity needles
Sigh, I don't know why we're having so much trouble with fonts
in browsers lately. Drop the match requirement on the needles
that have been matching or nearly matching the most, and remove
older ones that aren't matching.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-18 10:51:47 -08:00
Adam Williamson beba6426b1 Update realmd_join_cockpit for Cockpit 209
We need a couple of new needles, plus the 'join domain' button
has disappeared from the front page due to the very inefficient
UI redesign, so we need to scroll down to find it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-14 12:29:00 -08:00
Adam Williamson 5692692610 Add new cockpit_main needle for cockpit 209
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-13 17:55:06 -08:00
Adam Williamson 485a24b3ee Yet another cockpit logs_severity needle
I don't know why this is causing so much trouble...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-06 11:54:29 -08:00
Adam Williamson f4ca51e508 Update a few Firefox needles again
Seems the latest Firefox builds in F30 and F31 updates render
fonts a little differently again, not sure why this is.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-04 09:42:02 -08:00
Adam Williamson 7fbaa426e8 Update a bunch of needles for font rendering change in Rawhide
Not sure what changed; it seems like mostly browser needles got
broken, but there's a few installer needles too.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-29 13:00:54 -08:00
Adam Williamson 0722cc5bcf Update Cockpit 'join domain' needle for cockpit 207
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-14 08:43:03 -08:00
Adam Williamson a0e191e097 Update cockpit login screen needle *again*
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-30 15:20:30 -07:00
Adam Williamson 81100e8a17 Add new Cockpit 'software updates' needle
Needed for the UI change in Cockpit 205.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-29 16:01:35 -07:00
Adam Williamson e1030118f9 Add new cockpit login needle
The login screen background changed in 205.1 (it's actually the
same image, but it's now zoomed rather than just a chunk of it
being shown on a smaller screen).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-18 10:35:14 -07:00
Adam Williamson b455e04188 Add new cockpit needles for 205
The cockpit UI went all GRIMDARK so we need a couple of new
needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-16 17:10:28 -07:00
Lukas Ruzicka d82f4ecd7f Develop a new test for system updates via Cockpit.
* server-cockpit-updates tests that Cockpit can be used to update the system.
* server-cockpit-autoupdate tests that users can use dnf-automatic for system
updates.
* cockpit functions were removed from utils.pm and put into an extra library
for cockpit - cockpit.pm which all cockpit tests are now using.

Review cockpit.pm

Review autoupdate test.

Review the update test.

Fix typo in cockpit.pm

Add sleep.

Add missing command.

Delete an unused needle.
2019-10-01 16:04:01 +02:00
Adam Williamson 3fe3fc453c Add new Cockpit log detail variant needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-07-25 14:11:12 -07:00
Adam Williamson 9078bca871 cockpit: update needles for 198, rejig Services page handling
Cockpit 198 comes with a UI overhaul, so almost all needles
need an update.

The 'auditd' service is no longer on the first page. To make
this less fragile (at the cost of not testing that clicking on
a service actually opens the detail page *for that service*,
tweak the needles to just look for *any* running service, click
on it, and check we got to a 'details' page. We also redo the
existing needles for this design.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-07-10 11:43:03 -07:00
Adam Williamson 7ebe604135 Update Cockpit needle for upstream change
Looks like this label went from regular to bold font in a new
cockpit release.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-03-25 08:30:47 -07:00
Adam Williamson b6cf28715a Add new needles for Cockpit 186 UI redesign
Some bits of Cockpit's UI are changed in 186, we need a few new
needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-01-26 23:31:43 +01:00
Adam Williamson ea867ef431 Great Stale Needle Cleanup 2018: everything else
It's my second least favorite day of the year again: Stale
Needle Cleanup Day!

This should get rid of all non-anaconda needles that definitely
are not being used any more. Cleanup of all anaconda needles was
in the previous commit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-12-17 17:07:15 -08:00
Adam Williamson 672d60a840 Clean up a whole bunch of unused needles
Time for an annual spring clean. Based on the admin UI's list
of needles that haven't been matched for a long time, but with
some manual tweaking (some are actually still needed).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-01-02 16:13:47 -08:00
Adam Williamson e157ffc201 Add some new cockpit needle variants
I think the background color changed a bit, or something.
2017-11-27 16:37:54 -08:00
Adam Williamson da7eed3be6 Handle unbranded Cockpit login screen, record soft failure
There's a bug in current Modular Server which results in Cockpit
having an unbranded login screen, let's handle this but record
it as a soft failure.
2017-11-07 16:01:07 -08:00
Adam Williamson 97d4c8b85c Install dejavu fonts for Cockpit tests
The font Firefox uses when we don't ensure dejavu is installed
seems to bounce around a bit, so let's ensure the dejavu fonts
are there before we start Firefox. Also update a needle for
this.
2017-10-10 16:52:02 -07:00
Adam Williamson bbf29ea4b3 Another cockpit log entry variant needle
Font is different on 27 vs. Rawhide, it looks like...
2017-09-12 15:50:27 -07:00
Adam Williamson ffabe772ca Update cockpit log entry needle, again
Some font rendering change or some such...
2017-09-11 15:04:24 -07:00
Adam Williamson ddb6f8e416 Adjust cockpit log needles for Rawhide change
The Logs screen changed a bit. Also, it seems wrong to have
'notices' in all these needle names, so let's fix that.
2017-07-10 10:35:27 -07:00
Adam Williamson ac546e786a Add cockpit 135 variant needles
The cockpit sidebar changed color, so we need new needles.
2017-03-21 16:29:43 -07:00
Adam Williamson effd7a6e40 Add F24 variant needle for cockpit log entry
Needed for update tests.
2017-02-28 09:52:41 -08:00
Adam Williamson 78c4741e00 Replace cockpit 'main screen' needle
They got rid of the 'Dashboard' text we were matching on, so
let's change this needle. This 'Hardware' text should show up
in all cockpit versions, I think.
2017-02-21 11:32:00 -08:00
Adam Williamson 2c644aa204 add a bunch of variant needles for cockpit and freeipa webuis 2016-09-08 09:48:23 -07:00
Adam Williamson 19fccde4f0 add a few more needle updates for font rendering changes 2016-08-29 15:23:24 -07:00
Adam Williamson bc3402397d add a current rawhide join_domain needle
looks like some font change occurred at some point, this test
hasn't reached this point for a long time so I can't really pin
down what changed, so just name it for the date.
2016-08-11 18:25:46 -07:00
Adam Williamson f62c68147b add new cockpit join link needle
recent cockpit changed the Join Domain from a button to a link,
add a needle.
2016-08-10 16:17:33 -07:00
Adam Williamson 9531beff2a new cockpit logs_notices_entry needle for Rawhide font change
something changed in Rawhide's font for this needle, so we need
a variant
2016-06-16 11:39:52 -07:00
Adam Williamson 66fc3cc7d4 add a cockpit realmd FreeIPA join test
Summary:
This requires a few other changes:

* turn clone_host_resolv into clone_host_file, letting you clone
  any given host file (cloning /etc/hosts seems to make both
  server deployment and client enrolment faster/more reliable)
* allow loading of multiple POSTINSTALL tests (so we can share
  the freeipa_client_postinstall test). Note this is compatible,
  existing uses will work fine
* move initial password change for the IPA test users into the
  server deployment test (so the client tests don't conflict over
  doing that)
* add GRUB_POSTINSTALL, for specifying boot parameters for boot of
  the installed system, and make it work by tweaking _console_wait
  _login (doesn't work for _graphical_wait_login yet, as I didn't
  need that)
* make the static networking config for tap tests into a library
  function so the tests can share it
* handle ABRT problem dirs showing up in /var/spool/abrt as well
  as /var/tmp/abrt (because the enrol attempt hits #1330766 and
  the crash report shows up in /var/spool/abrt, don't ask me why
  the difference, I just work here)
* specify the DNS servers from the worker host's resolv.conf as
  the forwarders for the FreeIPA server when deploying it; if we
  don't do this, rolekit defaults to using the root servers as
  forwarders(!) and thus we get the public, not phx2-appropriate,
  results for e.g. mirrors.fedoraproject.org, some of which the
  workers can't reach, so PackageKit package install always fails
  (boy, was it fun figuring THAT mess out)

Even after all that, the test still doesn't actually pass, but
I'm reasonably confident this is because it's hitting actual bugs,
not because it's broken. It runs into #1330766 nearly every time
(I think I saw *one* time the enrolment actually succeeded), and
seems to run into a subsequent bug I hadn't seen before when
trying to work around that by trying the join again (see
https://bugzilla.redhat.com/show_bug.cgi?id=1330766#c37 ).

Test Plan:
Run the test, see what happens. If you're really lucky,
it'll actually pass. But you'll probably run into #1330766#c37,
I'm mostly posting for comment. You'll need a tap-capable openQA
instance to test this.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D880
2016-06-07 13:00:39 -07:00
Adam Williamson aba2814611 add cockpit_default and cockpit_basic tests
Summary:
This adds tests for the Server_cockpit_default and cockpit_basic
test cases. Some notes: I was initially thinking of combining
these into a single test with multiple test modules and coming
up with a system for doing wiki reporting based on individual
test module status, but because we'll also want to do a cockpit
FreeIPA enrol test, I decided against it. We don't really want
to combine all three because then we would skip the cockpit
tests whenever FreeIPA server deployment failed, which isn't
ideal. So since we'll need a separate FreeIPA enrolment test
anyway it doesn't really make sense to go to the trouble of
designing a system for loading multiple postinstall tests (though
I have an idea for that!) and a per-module wiki reporting system.

This was the most minimal and hopefully reliable method for
running Cockpit from a stock Server install that I could think
of. An alternative approach would be to have, say, the most
recent stable Workstation live as a 'stock' asset and have two
tests, one which runs a stock Server install and just waits and
another which boots the live image and accesses the cockpit
running on the other box, but that seems a bit over-complex. It
is not possible to have dependencies between tests for different
ISOs, in case you were wondering about having a Workstation live
test which runs parallel with a Server DVD test, we can't do
that. One funny thing is the font that winds up getting used for
the desktop, but I don't *think* that should be a problem.

Picking needles was a bit tricky; any improvement suggestions
are welcome. I'm hoping it turns out to be safe to rely on some
dbus log messages being present; I think logging into Cockpit
triggers activation of the realmd dbus interface, so there
*should* always be some messages related to that. An alternative
would just be to match on a sliver of the dark grey table header
and the light grey row beneath it and assume that'll always be
the first message (whatever the message is), but then we have to
find some area of the message details screen which is always
present for any message, and it just seems a tad more likely to
result in false passes. Similary I'm making an assumption that
auditd is always going to show up on the first page of the
Services screen and the details screen will always show that
'loaded...enabled' text.

Test Plan:
Run the tests and see if they work! See
https://openqa.stg.fedoraproject.org/tests/21373 and
https://openqa.stg.fedoraproject.org/tests/21371 for my tests.

Reviewers: garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D874
2016-06-01 09:05:33 -07:00