Most GNOME apps now have a standardized About screen with links
(not buttons) for credits, website and links. Lukas called these
'selectors', which I like - but inconsistently; as well as
generic gnome_selector_foo needles, we have some app-specific
needles, and some with 'button' in the name.
Let's always call these 'selectors', always use generic needle
names (since the same needles should match for almost all apps),
and have the one remaining case where we have a 'button' (the
credits button in Evince) be the variant case, handled by putting
'button' in the needle name, but using the same tag as other
needles.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Various tests use scripts or data that are stored within this
distri itself. To improve reliability and lessen the load on
Pagure, let's move them all to data/ and retrieve them from the
test runner using autoinst_url instead of going out to Pagure.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This doesn't affect most cases of the test as it gets replaced by
a subvariant, but it *does* affect i3.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE seems to be taking quite a while to show up after we go to
graphical.target ATM. I've reported this to the KDE team, but
let's just bump the timeout so the test can pass.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
For deciding whether to show a release as available for upgrade,
Discover now also checks its date as well as its 'type'. If the
date is in the future, even if the type is stable, it won't show
it unless the allow-pre-releases flag is set.
So, we need to also patch out the date. Just blanking it also
works, but let's hardcode it to the start of 2025 to be a bit
more realistic (in case there's ever a situation where the check
passes with an empty date, but fails with a date it should pass
with).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
these don't work correctly on IoT. Let's just skip them - testing
on the main release should be sufficient. Let's not do the EOL
consistency check on Rawhide, as Rawhide EOL is a pretty notional
concept. They don't line up ATM and I'm not sure we want to spend
too much time trying to make them line up. Let's just focus on
Branched.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The enhanced method of menu_launch_type does not cover for
special corner cases, where the application starts in a
specific mode (settings dialogues etc.)
This handles exceptions for Software.
The previous version of menu_launch_type took the name of the
application as an argument and it started the application.
To maximize the application or to check that it has started indeed
we had to do it manually.
Now, the application also takes "maximize => 1" or "checkstart => 1"
to maximize the application or check that it has started as optional
arguments to avoid doing it manually, while it still accepts just
the name of the application and behaves like it did before.
Note that if you decide to use the checkstart argument, you
also need to update the check-needles.py script to whitelist
the application needle tag, see the example test scripts
attached to this PR.
Fixes: https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/329
Sometimes, update notification would pop up during the testing
and prevent the needles from being matched correctly.
The addition to the code makes the notifications go away for updates.
Before this PR, we would have a different naming scheme
of application running needles for Gnome, a.k.a
apps_run_application, while for KDE we had application_runs.
This PR unifies all name under the Gnome scheme,
replaces the tags in the needles and test scripts.
This PR fixes https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/330
When we added fmw to apps_startstop tests it was only preinstalled
on Silverblue, but now it's on KDE and Workstation too.
Also includes a needle that matches on part of the UI, which
will work on all desktops.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Normally, the /etc/fedora-release file shows a text consisting
of "Fedora release" with the version number and a spelt out
version number in brackets.
For Fedora 42, the code name Adams should be used instead to
celebrate Douglas Adams's number of the universe.
Fixes: https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/360
This is intended to address the problem that we don't use the
buildroot repo for Branched between branching and u-t activation,
which often causes problems when newly-created updates depend on
builds that recently went stable. So instead of having logic in
the tests that sets up the buildroot repo only if the release is
Rawhide (or ELN), we'll do the decision about whether to set it
up in the scheduler (which decides based on info from Bodhi), and
just have the 'set up the repo' steps in the tests. Let's also
use the same code and repo name for ELN and non-ELN so we don't
have pointless divergence there.
Depends on the matching fedora_openqa change, of course - without
that, no test will use the buildroot repo.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We don't really need two separate CANNED conditionals and two
dnf commands, let's flip it around like this, and give the
remaining command 300 seconds not 240.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This isn't a test of fwupd, and we seem to be having issues with
it in openQA lately - I think maybe the fwupd server is blocking
openqa because we're hitting it too much? Anyway, let's disable
it for now.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This adds two initial custom layout install tests for webUI, and
wires up some library functions for other tests to use. They may
need refining over time but this should be good enough for a
start.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Fixes#347.
This PR adds two tests to check the EOL written in the
/etc/os-release file. The first test checks that the
SUPPORT_END value lies at least 12 months in the future.
The second test checks the EOL values in Fedora Schedule,
Bodhi, and /etc/os-release if they are the same.
Now fwupd is showing us dbx updates, it seems we get *both* a
"Restart & Update..." button *and* a "Download" button at the
same time. If we click Restart & Update without clicking Download
first, package updates aren't applied.
So, tweak this logic yet again so that it 'breaks the tie' in
the way we want (if both buttons are present, click the download
one, take download out of the tags, and go to the next loop
iteration). Hopefully this solves the problem without breaking
any other paths.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
webui has a language selection screen as of anaconda-42.24-1, so
handle it. For now still handle it not appearing, we can drop
that path once the update is stable and in a compose.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We've *usually* already installed it for bodhi or koji clients
(on the update and task paths), but on the COPR path, we have
not, and updvercheck crashes. If it's already there this will
do nothing and return 0 so it's OK.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The VNC installation method has been replaced with a similar method
based on RDP. This PR uses the old mechanism and alters it for the
RDP method.
The test suite consists of two parts, a server and a client part.
The server is the real test on which Fedora Custom installation
is performed from the client via RDP.
The client is spinned off the pre-installed desktop image.
Fixes#345
It's back in ~/Documents on Rawhide. Let's stop trying to guess
when it's where and just be happy with it being in either place.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This workaround is tested on stg and seems to work. If we see the
grey screen, go to a console and reboot from there. Don't do this
on any other test as it might interfere with bootloader param
entry.
Signed-off-by: Adam Williamson <awilliam@redhat.com>