Commit Graph

125 Commits

Author SHA1 Message Date
Adam Williamson
4243932d09 Adjust desktop_login and needles for KDE power option changes
KDE in F34+ is now placing sleep, restart and shutdown buttons
right on the system menu, not in a submenu. So we need to sort of
tweak this logic. The approach here is: we count the GNOME
submenu as both a "power" and "leave" menu, so the needle to
enter it has both tags. KDE still has a "leave" submenu, but the
power options are not in a submenu any more, so the new "leave"
needle only has the leave tag, not the power tag. For "leave"
actions we just unconditionally expect the "leave" tag; for
power actions we first match on *either* the submenu tag (for
GNOME and earlier KDE) *or* the action tag, click whatever we
found, and then if we matched the submenu (not the action), we
assert and click the action. After that all paths should be in
sync again and we can continue.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-12 13:34:04 -08:00
Adam Williamson
818bacfb60 Update several needles for KDE going all grimdark
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-12 12:02:05 -08:00
Adam Williamson
429f58bd31 Update some needles for KDE appearance change in Rawhide
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-04 13:58:59 -08:00
Adam Williamson
2b12be440e Drop match threshold on KDE update detected needle
Got a 95% match in
https://openqa.fedoraproject.org/tests/736374#step/desktop_update_graphical/26

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-07 09:33:04 -08:00
Adam Williamson
a038423920 Add a workaround needle for Konsole running with wrong font
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-02 14:50:59 -08:00
Adam Williamson
4f30b59077 Add workaround needles for KDE printing test
Styling on the KDE base disk image seems to have gone wrong
again, which throws this test off. We need to figure out what's
gone wrong in the base image, but it's a Friday night and I don't
want the test failing all weekend, and there's nothing wrong in
the *test itself*, so let's create some workaround needles and
figure it out next week.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-20 20:06:33 -08:00
Adam Williamson
9df165c1a9 Yet another variant of the KDE printing check sentence needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-18 13:59:27 -08:00
Adam Williamson
7c31adbf7c Update KDE package update needles
Seems KDE changed the tool that installs updates again. New
needles for new tools!

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-18 12:17:19 -08:00
Adam Williamson
762f259333 Drop match level of a KDE notifcations needle
Sigh, transparency or something. See:
https://openqa.fedoraproject.org/tests/723120#step/desktop_notifications/19

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-16 11:27:38 -08:00
Adam Williamson
fde492aa5d Update a few desktop needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-10 13:00:46 -08:00
Adam Williamson
9be79d3dc7 Drop match level on KDE update detected needle
Got a 93% match at
https://openqa.fedoraproject.org/tests/708115#step/desktop_update_graphical/22

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-27 08:53:59 -07:00
Adam Williamson
d8f5d3fd0b Update several KDE needles for font rendering / button changes
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-26 12:38:08 -07:00
Adam Williamson
d20f64967c Update a couple of KDE needles
Font rendering change, or transparency, or some damn thing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-23 23:07:10 -07:00
Adam Williamson
33c290d15a Remove now-unused desktop_network_notification needle
Dropped the use of this in the recent notification simplification,
but forgot to remove the needle. Should've run tox...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-15 15:36:37 -07:00
Adam Williamson
a008ffb8be Simplify desktop notification checks (#195)
This is the best option I can come up with to deal with #195.
Update notifications seem to have become transient in KDE lately
(even in F31 and F32, if I'm looking at these screenshots right).
This actually simplifies things a lot to do more or less the
same in the KDE and GNOME paths: open the 'permanent' store of
notifications (in GNOME you get to it by clicking on the clock,
in KDE via the systray) and then look for no notifications (live
path) or only an update notification (post-install path). We
only run this test for composes so we shouldn't need to worry
about anything older than F32, and I believe this should work
for KDE in F32 and F33. I left out click_unwanted_notifications
for now as I'm hoping it should be unnecessary, but we can add
it back in if necessary.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-14 23:30:00 -07:00
Adam Williamson
da0b079686 Update KDE desktop no notifications needle
Probably changed with the background, darn translucency.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-09 18:06:19 -07:00
Adam Williamson
92f5bf90c0 Update Krusader settings close needle
The button changed a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-08 16:22:44 -07:00
Adam Williamson
40974c2f94 Simplify Krusader app test
We don't need a separate 'welcome' needle because it just matches
on an OK button anyway. So turn that needle into an OK needle
(we don't have any existing 'blue OK button' needle) and simplify
the logic to a single loop for kde_ok and krusader_settings_close.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-08 14:47:46 -07:00
Adam Williamson
36fd4c10b1 Correct tag for new kde_ok needle
It had krusader_settings_close as its tag, not kde_ok. That's
why the krusader test module was failing weirdly.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-07 14:39:08 -07:00
Lukáš Růžička
b5a7b49f6e Correct the misconfigured needle from the previous commit and add a proper one. 2020-10-01 12:42:56 +02:00
Lukáš Růžička
3986984eb3 Fix needles for Krusader and Notifications. 2020-09-30 09:08:20 +02:00
Dan Čermák
3316e04d20
Update live_anaconda_icon KDE needle 2020-09-20 11:59:16 +02:00
Adam Williamson
a5aa72da73 Remove new KDE log out entry needle again
Turns out we don't need it, the failed test was run before I
dropped the match level.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 17:00:31 -07:00
Adam Williamson
cbb817fd14 Add new KDE log out entry needle
Rawhide doesn't match the existing one even with the lowered
threshold, so whatever.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 16:43:20 -07:00
Adam Williamson
3c1c9f3436 Rename log_out_entry needles to be unique
Even though we have subdirs, we actually usually make needle
names unique across subdirs due to limitations of openQA's UI
upstream.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 16:42:46 -07:00
Adam Williamson
9d3ac55607 Update printing 'check sentence' needle for latest Rawhide KDE
Rendering seems to have changed/improved a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 16:21:17 -07:00
Adam Williamson
b29b05a359 Drop match threshold on KDE log out entry needle
OK, reducing the match area didn't help. So let's drop the
threshold instead.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-24 12:53:52 -07:00
Adam Williamson
82ebfe37f0 Tighten KDE log_out_entry area
See if this helps it match more reliably.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-24 12:43:00 -07:00
Adam Williamson
041d04d2d1 Update desktop update notification KDE needle
Seems to have changed a little in recent F33/Rawhide.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-17 17:40:51 -07:00
Adam Williamson
7682872d95 desktop_login: update reboot flow for GNOME changes in F33+
GNOME now also splits 'Restart...' and 'Power Off...' as KDE
does, so we need to tweak the conditional and add some needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-17 16:25:32 -07:00
Adam Williamson
aa67975926 Update KDE no notifications needle
Text changed a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-24 15:27:56 -07:00
Adam Williamson
3e5e1104b7 Update a bunch of KDE needles for Rawhide font change
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-27 15:06:09 -07:00
Lukáš Růžička
f3d6a9574c Add desktop login test, revise and rename check_desktop
This adds a new test that implementsQA:Testcase_desktop_login
on both GNOME and KDE.

While working on this, we realized that the "desktop_clean"
needles were really "app menu" needles, and for KDE, this was
a duplication with the new "system menu" needles, because on KDE
the app menu and the system menu are the same. So I (Adam)
started to de-duplicate that, but also realized that "app menu
button" is a much more accurate name for these needles, so I was
renaming the old desktop_clean needles to app_menu_button. That
led me to the realization that "check_desktop_clean" is itself a
dumb name, because we don't (at least, any more, way back in the
mists of time we may have done) do anything to check that the
desktop is "clean" - we're really just asserting that we're at a
desktop *at all*. While thinking *that* through, I *also* realized
that the whole "open the overview and look for the app grid icon"
workaround it did is no longer necessary, because GNOME doesn't
use a translucent top bar any more. That went away in GNOME 3.32,
which is in Fedora 30, our oldest supported release.

So I threw that away, renamed the function "check_desktop",
cleaned up all the needle naming and tagging, and also added an
app menu needle for GNOME in Japanese because we were missing
one (the Japanese tests have been using the "app grid icon"
workaround the whole time).
2020-04-17 17:27:04 -07:00
Adam Williamson
610572f8a0 Add new variant SDDM input needle
Looks like a kerning difference or something.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-14 12:05:33 -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
Lukáš Růžička
a54f020118 Revert "Fix the Konqueror test - handle Locations dialogue."
This reverts commit d784bf54ca.

It turned out that Locations are not connected to Konqueror
at all. The reason why the test is failing is that the
application has been removed to limit the number of
web browsers.
2020-03-31 09:23:13 +02:00
Lukáš Růžička
d784bf54ca Fix the Konqueror test - handle Locations dialogue. 2020-03-26 10:57:00 +01: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
dde0113fb1 Update KDE 'no notifications' needle
Probably a transparency thing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-19 09:47:36 -08:00
Adam Williamson
629c67e1f5 Whoops, add missing area to akonadi notification needle
Needed for the click to actually dismiss the notification.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-06 10:07:40 -08:00
Adam Williamson
e684fed622 Add missing akonadi notification needle
I must've forgotten to include this in the commit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-06 09:34:41 -08:00
Lukáš Růžička
77ae127cce Create an automated test to test printing on Desktop
Add functions to test on KDE, too.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-05 09:22:50 -08:00
Adam Williamson
ee140358b7 Update akonadi migration agent needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-29 13:04:51 -08:00
Adam Williamson
5c03c435ca Stop having two 'firefox close tabs' needle tags, drop old ones
We still have a 'apps_run_firefox_stop' needle tag which is for
the same thing as 'firefox_close_tabs'. That's dumb. Get rid of
it and only have the firefox_close_tabs tag and needles. Also
clean up some old firefox_close_tabs needles that haven't matched
for months and all the 'apps_run_firefox_stop' needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-29 12:10:35 -08:00
Adam Williamson
25cce2361c Update a KDE app test needle
Window title changed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-22 09:13:27 -08:00
Adam Williamson
efec7010cb Handle an 'akonadi did something' notification in KDE, etc.
This handles a case where KDE shows a notification saying
'PIM Maintenance (Finished)', like this:

https://openqa.fedoraproject.org/tests/477345#step/desktop_notifications/34

we need to click it away for the desktop_notification test to
pass. It also clarifies the difference between this notification
and the eternal 'akonadi_migration_agent is doing something'
popup in the needle names and comments. It also replaces the
'check_screen then assert_and_click if found' pattern in several
notifications-related places with the better 'check_screen then
click_lastmatch if found' pattern now available upstream.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-30 09:05:06 -07:00
Adam Williamson
205c0c3d97 Add new variant ABRT needle for KDE app test
Font rendering changed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-10 12:09:41 -07:00
Adam Williamson
0782f4faf2 Add new akonadi migration agent needle for F31 background
Light blue throwing us off again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-26 10:24:37 -07:00
Adam Williamson
61f8adefdf Add some new update-related needles for KDE
The new background seems to be throwing us off here. I think
the menu is *very slightly* transparent so the needles usually
work for most Fedora backgrounds as they tend to have a similar
base color, but the 31 one is unusually light.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-19 10:23:21 -07:00
Lukas Ruzicka
022865ab9f KDE app start/stop: launch apps with commands not menus
This is doing slightly less to exercise the launcher menus and see
whether icons appear or disappear, but it's much faster and more
reliable. We do still use menu launch for one app, just to check
the mechanism works in general.
2019-08-23 12:41:49 -07:00