That last commit to 'fix' the Clocks tests when Silverblue needs
location access to be granted wasn't complete, I left the needle
out. D'oh. Take the chance to give it a better name too.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The previous commit is the correct fix for the problem here.
Adding a needle that matches on the tray icon was not correct,
we need to be sure that we can access the Updates view from
within Discover itself.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR changes the way to download the test data into the VM.
Although it does not use a disk image as suggested in one
of the review, it does not clone the entire repository, but
a simple tar.gz file that holds the data which will be
distributed into the directory structure.
This way, the amount of data needed to be downloaded dropped
from approximately 50MB to below 2MB.
Also, the existing test suites were adapted to this situation.
The wider one seems to happen when text at the bottom of the
login box prevents the "Fedora Linux..." text from wrapping
across two lines. I have no idea why we see two different
cases of the "Fedora Linux text wrapped" variant with very
slightly different amounts of whitespace, but we do, it seems
we need both of these.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Not sure what's going on here, but it seems like the resolution
of the UEFI bootloader screen in some tests changed. Not sure
if this is a qemu or edk2 change or what.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This is the automation of the optional testcase https://fedoraproject.org/wiki/QA:Testcase_i18n_default_fonts.
The test implementation runs the same commands as the mentioned test
case and checks the expected output. It is designed to run in the scope
of postinstall tests when the language is set to "japanese".
We've been told the bookmark toolbar no longer being shown on app
start is by design, so we can't call this a workaround needle
any more really. There's a preference we could use to turn it
back on so we can wait for the bookmark toolbar to show up to
be sure firefox is fully started, but in fact tests seem to be
passing OK with just this needle these days, so we may not need
to.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Firefox 97 is now stable on all releases, so we can forget about
handling browser_download_save and just assume download will
happen automatically.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Before F34 we had to launch the update tool from the systray.
This isn't the case any more, so we can throw all this code and
these needles away.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We seem to be solidly back to always getting a permanent update
notification in current F36/Rawhide, so we don't need this more
complex path any more. We also don't need these needles any more,
they haven't matched for months.
Same difference as for English - 4 pixels of padding was added.
Also move a stray Russian needle to the right directory.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We can wind up with this a bit hidden by the bottom-left URL
location indicator, so shrink it a bit to hopefully match even
in that case.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The Cockpit update test relies on scrolling the Cockpit left bar
to find the Software Updates page, but in Firefox 100, the scroll
bars disappear shortly after the last time you moved the mouse.
To deal with this, instead of looking for a scroll bar to scroll,
we'll click the search box in the left bar and hit 'up' to scroll
it to the bottom.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Not sure what changed in the addon needles. For the webui needle
I think it's affected by the new scrollbar behaviour.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We get these variant needles with the keyboard icon and layout
name at slightly different relative vertical positions every
time we do a Final RC. I think the layout is affected by the
pre-release warning text no longer being present. Usually each
cycle something changes with the icon or with font rendering,
so the needles have to be updated, as in this case.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
So it turns out the translated layout indicators in Arabic are
intentional:
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5257
so we can just add needles for them and we're good. Also update
a couple of other needles which need updates since we last
reached this far in the tests.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The new version of the F36 backgrounds means all these needles
that hit translucent panel elements need updating.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
SDDM looks slightly different on F36 since 20220319.n.0. The
Sleep / Restart / Shut Down / Other... buttons are visible, and
the keyboard layout indicator isn't. Previously on F36, and still
on Rawhide, those buttons aren't shown but the layout indicator
is. I'm not sure why this is, but it means the size of the name
labels is slightly different, and we need new needles.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We very rarely see this needle - only when we run the 'generic'
tests on an Everything image instead of a Server one, which
will usually only happen if we trigger it manually. I did this
recently to test an anaconda update, and found it needs an
update.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
OK, this is annoying. GNOME Software intentionally does *not*
clear the 'download' or 'reboot and update' button when you hit
the refresh button, it just leaves them sitting there while the
refresh happens. So let's specifically require the 'refreshing'
text to appear and go away before we try and click on download
or apply.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Again, a dialog changed a bit in the flatpak version of the app.
For this needle, the shade of grey is slightly different. Change
happened between Fedora-36-20220314.n.0 and 20220315.n.0.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The open/save dialogs for Flatpak apps in current F36 (and
probably Rawhide, but can't tell due to another bug) look a bit
odd: https://github.com/fedora-silverblue/issue-tracker/issues/245
This adds variant needles to handle various differences there.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
For some reason various bits of gte started looking slightly
different on the F36 upgrade test. I don't really know why and
don't care enough to look it up. I'm just hoping all these
variations between gte running in slightly different contexts
calm down soon...
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Both KDE and GNOME saw some changes to desktop_login needles in
recent Rawhide, this updates them.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The dnfdragora window is too big on current KDE so we can't see
the top of it (where we used to match). It's kinda better to
match on some active element of the app than just the window
title anyway (so we don't 'pass' if the window loads but is
empty, or something like that).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Silverblue has an older version of gnome-text-editor, using a
Flatpak base environment built off an older GNOME. Because of
this most of the needles for the current RPM-packaged version
don't match. For some reason the old needles we delete don't
match either - some difference in font rendering configuration
or something. So I had to create a bunch of new needles.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
I do not know what's going on with this quit button and why it
seems to keep showing up looking different. Today it looks
different in the same image (KDE live) from the same compose
(today's Rawhide) on prod and stg openQA. I've no idea how that
is possible, but oh well, let's keep adding needles till the
pain stops.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It matches on the "close the app" button on older Flatpak GTE.
So widen the needle to include the "Preferences" text, and add
a click point.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
To get to the keyboard/input method settings and add an input
method when doing a Japanese install test, we type 'keyboard',
but in current GNOME 42.beta that doesn't find the right pane.
Typing 'input' does work, though, so let's use that instead.
Also the GDM login needle needed updating.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Now KDE is back to being black, this needle almost matches. Let's
just drop the level instead of making a new one.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The backend is now cryfs in F36/Rawhide. I don't think we need
to be policing which backend Vault decides to use, so let's just
accept either.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
These are taken with the latest gnome-shell build, with CSS
fixes for the overview applied. They don't work for current
F36/Rawhide but will work once that gnome-shell build lands.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This was originally a test of nm-connection-editor. However,
at some point that app stopped shipping a .desktop file by
default (it's in a subpackage that is not included in a default
KDE install) and the needle got updated to match on what the
same string now launched, which is a random part of the KDE
system settings. But there's no real sense in this - we don't
test launching every other pane of the system settings app from
the launcher, so it doesn't make sense to just test one random
one like this. Let's just throw the test out.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We have three different needles which all match on a stock KDE
"cancel" button. Let's just have one. Also, update it for latest
Rawhide/F36 KDE.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The last line of text is slightly cut off on KDE lives, so shrink
this needle area so it still matches.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
One of the icons showed up bigger in a UEFI test. I dunno why.
Just keep adding needles till the pain stops.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
GNOME 42 and adwaita-icon-theme 42 changed a lot of things in
GNOME and anaconda, we need to update all these needles.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The help test had its own needle for the user creation link,
but we already have an existing one. We should probably re-
arrange all the needles that are in 'install_process' now the
root and user creation spokes are moved to the main hub, but
that's a big change so I'll do it separately. This just removes
the duplicate needle and tweaks some match names.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
When the printing_builtin test ran on an F35 respin compose it
failed; it turns out the target filename was different for the
built-in print-to-PDF on GNOME on F35. So let's just always
use the 'ls' output to find the file, but pick the directory
to check based on whether we're using cups or not.
Also rename the needles to have unique names, and add one for
F35 GNOME.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We should not use the same name for two different needles even
in two different directories as it can be confusing in some parts
of the UI which don't account for the directory name. Let's use
names differentiated by desktop. Also add a needle for F35 as
the one from the PR doesn't match (different relative placement
of icon and text).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The PR introduces an improved logic to the desktop_printing.pm
that allows to use the USE_CUPS variable in templates to trigger
the installation of cups-pdf prior to the actual test.
The cups-pdf is then used as an alternative PDF printer
instead the built-in Save As PDF method.
It was removed from the default install:
https://pagure.io/fedora-comps/c/5371509
in favor of a new screenshot mechanism that's built in to GNOME
Shell.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It does not need to include any of the language specific text,
I guess Lukas included it in the English needle because it was
based on the IoT needle which is wider. So just shrink it to
not include any language specific text and drop the variants.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
IoT says "FEDORA-IOT" here, not just "FEDORA", and the greyspace
at the right-hand side was making the match fail. Not sure why
this only just started being a problem, but oh well, let's
make it a bit smaller.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The latest version of Gnome-Text-Editor bring a little
bit different UI and some new or modified features.
This commit fixes the suite to run on newest version.
Not sure if we lost one with the recent adjustment to the tests
or F35 actually changed somehow, but hey, we need this.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR adds implementations of distribution methods to make them
usable on Fedora. It adds the following methods
* ensure_installed (to install packages)
* become_root (to switch to root account)
* script_sudo (run script with sudo)
* assert_script_sudo (run and assert a sudo script)
It also adds a helper script to the utils.pm
* make_serial_writable
that makes the serial console writable for normal users
and so enables to run commands that check their progress
by sending messages to the serial console. Normally, they
fail, because the messages will not be written their, so
the checking mechanism will never see them.
These needles have been probably forgotten and left over from one
of the previous commits. The tox tests are failing on other
pull requests and this PR fixes it.
The text line we matched on before changed and is currently
untranslated, let's match on a different line.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Workstation has replaced gedit with gnome-text-editor in Rawhide,
so this is no longer useful. We will replace it with a test suite
for gnome-text-editor.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Workstation replaced gedit with gnome-text-editor. This updates
the needles and also changes the name used for 'tagging' the
application for the core_applications test.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
I forgot to update the language tags in the 'untranslated'
needles when copying them from the English one.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
As of today's Rawhide compose, user accounts added in Rawhide
have admin privs by default. For now we need to handle both
possibilities here (click the box if it's not clicked already);
after F35 EOL we can just drop all handling of that box.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Both were dropped from the default KDE install set:
https://pagure.io/fedora-comps/c/edd0d74
so we need to drop them here too.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Add the download and apply needles (whoops), and tighten the
match area on the update needle a bit so it matches even when
there's a little blue balloon to the left of the text.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Calculator's equals button changed a bit somehow, EOG changed a
button and the kerning on Activities button changed.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE team inform me they fixed a bug in Rawhide which made grey
not quite grey enough. Now it's greyer. So, more needles. So
many needles.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
These incorporate bits of the background so are subject to
non-100% matching, got a 97% match in current Rawhide, let's
see if dropping the match level is enough.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Font's changed since the last time we actually matched this (it
only happens occasionally if specific packages are in the update).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We get a 96% match on this because the "A" in "Activities" moved
a bit. Instead of a new needle let's just be OK with the lower
match.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
So it doesn't fail if there's a dotted line around the entry
(indicating keyboard active, I think).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This seems to happen every cycle: when we get to testing an
RC, the layout indicators in anaconda move a bit (the text
moves relative to the little keyboard icon). I think the fact
that the prerelease text is no longer present is what causes
this. Anyway, we need to handle it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The dropped needles are all of the Beta art, before it was
fuzzed out a bit for Final. We drop the match area on the
Final needles to catch more transitions (saw a 94% today).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
...this reminds me I was naming them by time of day for F33,
which was a good idea. Should've remembered to keep doing that.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We'll need a whole farm of variants for this revised artwork.
Joy. Once it goes stable we can ditch the older versions.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The Japanese "accept your fate" button changed slightly, and
the new root password screen got a French translation.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Somehow this button looks slightly different depending on where
the arrow is or something, even if you don't match on the arrow.
Sigh. So we need two.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Don't match on the arrow, another app has it on the other side.
The color and text should be enough to avoid false matches.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
kgpg had its own, which doesn't make any sense. There are grey
and blue background variants that weren't consistently named.
This should rationalize things sensibly, and adds a new needle
for the new Plasma in Rawhide, with a lighter blue background.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The cross got bigger. This needle might be a dupe with something
but I couldn't be bothered finding it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
There's some issue with font kerning or something on this page
which means we constantly get slightly different rendering of
this text. Rather annoying.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
For background translucency (sigh) and also a color difference
that I guess indicates a critical update or something.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Some changes were made in the icon theme used by the installer
and GNOME, update various needles for this.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The other tag the Help test uses is created by a concatenation
that isn't easy to change, so just add the tag to the other needle.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Similar to the 'open' needle, adjust match area to work even
when there's a notification obscuring the top bar.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We somehow hit a transition point that didn't match any existing
needle. Oh background transitions, how I love you.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We do this slightly differently on KDE and GNOME for whatever
reason, so this needle needs updating too.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
LibreOffice adjusted layout a bit and dropped a template, one
icon changed in the utilities menu compilation.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Arabic doesn't match the English needle even though it's not
translated, because it's RTL, so the radio button is on the
other side of the text.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The screen is not translated in any language yet, so let's just
make the needle language-independent at least for now. We could
change this after translations show up.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This often seems to get a 90-95% match for some reason. Let's
just drop the threshold. I think it may be a kerning difference
based on the width of the MAC address?
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Really this just boils down to needing an extra click. We can
even just do the click in the old UI as well, it's not needed
but won't hurt anything and keeps the code simple.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
See https://github.com/cockpit-project/cockpit/issues/16243 .
This is a fairly minor issue upstream knows about but will not
be fixed immediately, so we'll add a workaround for it for now.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
As suggested by @kparal, this adds a test that specifies an
additional repository using a metalink. The repository contains
a single package, 'testpackage', that supplements glibc (so it
should always get installed). The test runs an install then
checks that testpackage got installed.
We also deduplicate a pair of needles which were matching on the
same anaconda UI feature (an "add" button) and use that same
needle in this test.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This also requires a new needle for accounts.fedoraproject.org, as the webpage
is completely different now. The old needle for browser_fas_home is obsolete via
this change and can be removed
Remove a whole chunk of needles that haven't matched for more
than 3 months. Also move a few needles to appropriate locations,
simplify some code chunks that relied on removed needles (if
we're not matching the needles, we don't need those chunks any
more), and drop some other no-longer-needed conditionals for
older releases.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
As of today's Rawhide, KDE seems to be using a different icon
theme for anaconda. Not sure if this is intentional or not, but
we need to cope with it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This adds a test for fingerprint-based login, as requested by
@benzea in #223. We use the fprintd dummy device to let us
simulate scanning a fingerprint, and check various scenarios
recommended by @benzea.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Now we have two areas, openQA wants to click in the wrong one.
Let's tell it which one to click in.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The main screen now also has identical "Japanese" (that's what it
says) text. To avoid false matching before the picker opens, add
another match area.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The open dialog on Silverblue (which is apparently not at all
the same thing as the open dialog on Workstation, though they
look the same) does not default to the Documents folder, so we
have to open it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
These all failed to match first time the test was run in
production. I guess Lukas was working from an older release.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR fixes issue #188. It adds a test suite to test basic
functionality of Evince and brings the following features:
* test scripts for various Evince functions.
* needles to support the Evince test scripts
* new template variables `TESTPATH` and `POSTINSTALL_LOAD_ALL` (see
below)
* new logic in `main.py` (see below)
The new variables and the new logic make it easier to create test
suites for post-installation tests. If TESTPATH is used, OpenQA
will take all tests mentioned in POSTINSTALL from that specified
TESTPATH. If both TESTPATH and POSTINSTALL_LOAD_ALL are used, then
OpenQA will run all tests it can find at the TESTPATH location.
If POSTINSTALL and POSTINSTALL_LOAD_ALL are set simultaneously,
then only POSTINSTALL will be taken into account and OpenQA will
only load tests mentioned there.
Recent git os-autoinst no longer downsamples screenshots as far
as it did before comparison. This makes a lot of needles where
colors have changed slightly no longer match, so they all needed
updating.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Again, to combat os-autoinst's new behaviour without adding yet
more needles. We're getting 96% match on stg.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Also delete ones for F32 and earlier. This should hopefully help
us not need to have too many needles for the newer stricter
matching.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Latest Firefox has moved the underline down slightly for some
dumb reason. This tweaks the match area to only the text, so it
matches wherever the underline is.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
In #235 we accidentally included an entire disks.pm test that
wasn't meant to be there - the infocenter module test is the
right thing to exercise plasma-disks, there is no standalone
app, running 'disks' just gets you the KDE Partition Manager,
which we already test. So this removes that test and renames a
needle that looks like it's for that test but is actually for
the kinfocenter module, to make this clearer.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR adds a new test that automates the above mentioned test case.
It starts the installation in text mode using the `install_text` test
case, which it interrupts using the Anaconda crash trigger.
When the crash happens, it goes through the process of reporting
the bug to Bugzilla, checks that Bugzilla sends a positive
confirmation of the action, but also performs some REST API
calls to do a proper check and then it closes the bug to clean up.
GNOME dropped the g-i-s new user mode in F34, so on a Japanese
install with user created in the installer, you don't get an
input source configured out of the box or on first boot. So
we'll just have to do it manually after booting, before we test
if it works.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Looks like the latest Rawhide got a permanent update notification
for KDE again. F34 is still around, though, so we can't just
revert to the old code, I don't think.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The 'desktop_pacakge_tool_update-kde-detected' needles and
'desktop_update_notification_systray-kde' needles are actually
matching on exactly the same thing, so drop the redundancy. We
need to have the desktop_package_tool_update tag on the older
(F33) version of this needle because on F33 we click on it to
launch the update tool in the desktop_update_graphical test; from
F34 onwards this is *not* what we want to do so the needle should
not have that tag to avoid throwing the test off. When F33 goes
EOL we can drop that tag from the needle and simplify the
destop_update_graphical test. Also add a needle for the Discover
app's 'update' icon when no updates are found.
Signed-off-by: Adam Williamson <awilliam@redhat.com>