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>
There's some cheating/sloppiness going on here, with the same tag
and sometimes same needle being used to match "LVM2 Volume Group"
and "LVM2 Logical Volume". Today this caused us to pick the thin
pool entry instead in a test, so let's just clean this up and do
it right, with separate needles for matching each thing.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The needle match seems to have changed when bug #1957858 showed
up, but it's actually just a text rendering change in the window
title, it's not exactly caused by the tiny window. So not marking
as a workaround needle.
Maximizing the window makes the test work faster when we hit that
bug, as type_safely needs to be able to see the results of its
typing.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Some fixups for anaconda_help. Two runs of it failed today around
handoff from the root password screen to the install progress
screen; add a couple of wait_still_screens there to make it
safer. Drop the added nonlive needles, because they're too
permissive, causing problems for other tests (they're matching
before they should); instead we solve the problem of spokes being
highlighted by just pressing shift-tab a few times. And fix some
tabs to be spaces.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR automates the mentioned testcase to test that Help can be
displayed in Anaconda during the installation. It navigates through
the available Help screens and if it can see it, it finishes.
This test runs after `install_default_upload` to override the
installation defaults defined for all primary tests.
Delete a duplicated needle.
Reformat list extensions to make it nicer.
Get rid of wrong export and an empty line.
Delete empty line.
Use _boot_to_anaconda for booting and move subroutine accordingly.
Add variable to templates.fif.json
Delete trailing whitespace.
Fix calling the pretest.
Move help checking to another place.
Not sure why these changed, but oh well. Utilities menu was
highlighted in a test run for some reason, so let's just handle
that. Other needles changed very slightly.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We're not using them, so they fail the unused needles check. We
can just revert this commit when we want them back.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The background color of the generic left bar needle has changed
to match the new logo base color. The top bar's background color
has similarly changed, but this also caused us to notice a bug
in fedora-logos - that topbar image file seems to be basically
empty (just a transparent rectangle) so we see no 'image' in the
top bar, just solid electric blue. This needle matches that.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Boxes dropped VNC functionality. It's supposed to be replaced by
Connections, but we can't use that until it has fullscreen:
https://gitlab.gnome.org/GNOME/connections/-/issues/5
so use Vinagre for now. We do also prepare some needles for
Connections in anticipation of being able to use it later (since
I already did the work and don't want to waste it...)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
OK, so sometimes we have a Reboot button, sometimes a Restart
button, sometimes both, but never *always* one or the other. So
we need both needles. Sigh.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
There's a spurious warning on the Updates page, but we don't
want to fail tests for non-related updates on that, and I've
already reported it so it should get fixed.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The 'reboot' button isn't always there in this case, it seems,
but the 'restart services' one is more likely to be. So let's
switch.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Stupid Firefox survey means the thing we usually check isn't
always on the screen. This one checks for PRIORITY.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE switched to using Noto fonts by default (and title bars seem
to be blue again), many needles need to be updated.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
On current F34 we get no permanent update notification in the
notifications view, we only get a *transient* one plus the
systray icon. This tweaks things so on F34 we check both of
those things correctly, behaviour on <F34 should be unchanged.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This dialog gets cut off sometimes, it seems. That's a bug, but
we just want to handle it, because we want to quit cleanly.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE update was still often failing on #1943943, so this tries a
bit harder to work around it. We add a 'refresh' needle for KDE,
and tweak the 'retry' logic to click it if we get to that point.
Note adding the needle also changes behaviour slightly - we may
click this needle if we see it on first entering the screen. So
either change may be helping. Either way, this does make the test
more reliable.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Design team tweaked the new logo a bit in anaconda. We probably
won't need the old needle any more, but I'll take that out later.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Some apps moved around, others the needles stopped matching for
some reason, some kind of slight scale change or something.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The package with the new logo is not submitted as an update yet,
but we ran the tests on the Koji build and these are the new
needles. We'll need more when we run the full set of compose
tests on the change.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
When we have to restart Cockpit during the update, we don't get
the usual "successful" screen after logging back in, we'll have
to match on something indicating an update did happen. I wanted
to use the little icon next to the package count but it seems to
have some kind of problem with anti-aliasing or something, I've
created two needles for it and neither matched on the next run
of the test. So let's match on this "reboot needed" text instead,
I hope it'll always be there when we hit this case.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Make the 'deactivate overview if it's active' thing a bit more
robust by asserting the inactive state after deactivating it,
and add new needles for the new RC (text got a bit brighter).
Signed-off-by: Adam Williamson <awilliam@redhat.com>