Commit Graph

742 Commits

Author SHA1 Message Date
Adam Williamson 5d0309b147 desktop_notifications: give login screen a bit longer to appear
Seen a few failures where it takes just longer than 30 seconds
for GDM to show up here, e.g.
https://openqa.fedoraproject.org/tests/968142

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-03 16:56:17 -07:00
Adam Williamson 5d6feb9808 Tweak Cockpit 'Join Domain...' click
Always do the page-down thing, having it conditional just makes
things more complicated unnecessarily. Try up to 5 times to
click the link, because Cockpit sometimes redraws itself before
us identifying it and clicking on it, e.g.:
https://openqa.fedoraproject.org/tests/968422

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-03 10:16:45 -07:00
Adam Williamson a35befab8c Workaround a notification test issue on F35 KDE
Closing the last notification in the tray closes the entire tray
now, which seems odd. Cope with that by re-opening it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-02 11:10:16 -07:00
Adam Williamson 86a7f849e7 Fix root password screen handling in anaconda_help test
Code isn't shared with _do_install_and_reboot, maybe we should
fix that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-02 11:04:17 -07:00
Adam Williamson 34a60ce789 Use stream 12 for postgres, not 13
Rawhide doesn't have a 13 stream, only a 12. F35 has both, so 12
should be safe.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-27 11:37:57 -07:00
Adam Williamson dc82c90abd Handle redesigned root password screen in new anaconda
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>
2021-08-24 13:12:18 -07:00
Adam Williamson e95515a740 Drop two now-unneeded workarounds in _set_root_password
The 'root spoke takes forever to load if debug enabled' bug was
fixed a while back, and we now always set root password before
the install process starts, so the race problem we had when
doing it at the same time as install was happening is no longer
an issue.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-24 13:00:23 -07:00
Adam Williamson c9356ee196 Update _check_install_source for NFS addrepo on F35
We need the same alternate check method logic for NFS addrepo on
F35 now we're testing F35 updates. This is all getting a bit
messy and could maybe stand a refactor at some point...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-20 15:17:39 -07:00
Adam Williamson 8992d37ce6 Add workaround for log filtering issue in cockpit 251
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>
2021-08-19 15:46:45 -07:00
Adam Williamson 803ae7ca57 Add a test of an additional repository using a metalink (#198)
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>
2021-08-18 14:03:27 -07:00
Dan Čermák 6cb0634edc
fix desktop_browser: FAS is deprecated, use accounts.fedoraproject.org
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
2021-08-13 22:53:05 +02:00
Lukáš Růžička b65f470eee Create basic functions tests for Gedit. 2021-08-12 15:37:37 +02:00
Adam Williamson 492fcf62e4 Great Needle Cleanup 2021
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>
2021-08-10 11:57:48 -07:00
Adam Williamson ba5a338e13 More tweaking the damn 'begin installation' bit
`click_lastmatch` wasn't safe there, if we caught the middlle of
the scroll animation. We have to assert again after waiting.
Also do the same in `_do_install_and_reboot` as the same can
happen.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-10 11:56:56 -07:00
Adam Williamson 07aa8cfb32 More tweaking of anaconda_help annoying part
Grr, with the screen changes and the animations...waiting for
screen to change when clicking a button doesn't work very well
as the button animation often counts as a 'screen change', so
we're still having issues with the stupid animation transition.
Let's see if this helps.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-10 09:00:41 -07:00
Adam Williamson 02b32196d0 Wait longer for begin_installation in anaconda_help
The root password spoke takes a long time to exit lately, it
seems.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-10 08:41:14 -07:00
Adam Williamson 05c793179a Add a fingerprint login test (GNOME only) (#223)
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>
2021-08-03 15:21:33 -07:00
Adam Williamson 5b1d3517fe Open Documents folder on Silverblue
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>
2021-07-29 12:09:34 -07:00
Adam Williamson b8c58428b0 Don't check for git on CANNED
`rpm` doesn't work. I dunno off-hand how you'd install git on
ostree if it wasn't there, so let's just assume it will be.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-29 11:19:09 -07:00
Lukáš Růžička e0d9409c74 Create a test suite for Evince.
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.
2021-07-28 08:58:23 +02:00
Dan Čermák 4811ad3fae Replace check_shutdown with assert_shutdown
The power_off function in desktop_login was not really asserting/checking
whether the VM got turned off. However, os-autoinst supports checking whether
the VM is turned off via assert_shutdown. This is additionally much more useful
than using check_shutdown, which does nothing if the VM is still running.
2021-07-21 22:41:08 +00:00
Paul Whalen 146071ca3c Add a timeout to rpm-ostree package removal.
Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
2021-07-20 22:42:33 +00:00
Adam Williamson bc738149ec Try to robustify anaconda_help transition a bit
Wait for a change when clicking the done button in root password
screen (anaconda can pause for a long time there).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-19 12:22:04 -07:00
Adam Williamson 2f4ef74def Avoid a needle duplication in KDE vault test
"show_hidden_icons" is the same thing as "desktop_expand_systray".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-17 12:40:15 -07:00
Adam Williamson 0668357dd7 Fix os_release checks for name change to "Fedora Linux"
A couple of the checks here need updating now we're calling it
"Fedora Linux" not just "Fedora".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-14 14:42:15 -07:00
Paul Whalen 49987a5e41 Extend timeout for podman container test.
Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
2021-07-13 17:44:34 +00:00
Lukáš Růžička 6d1d549941 Introduce a resize check and a postinstall test for custom and blivet
tests.

This PR fixes #228.
2021-06-30 11:01:50 +02:00
Adam Williamson bc611d6975 Tweak the desktop update loop again to try and be more robust
I've seen some failures caused by a sort of race where both
'apply' and 'refresh' needles match at the first assertion, but
openQA "prefers" the 'refresh' match. So we click the 'refresh'
button and *immediately* check_screen for apply, which is still
visible...but by the time we go to click it, it's gone because
the refresh found something new and now it's showing "Download".
This tweak should help, because if we can 'see' both refresh and
apply at the start, we'll just go ahead and click apply, we
won't refresh. The logic becomes a little more obscure, but I'm
not sure I see a fix for that. At least until KDE's tool finally
settles down for two releases in a row and we might be able to
simplify this whole thing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-29 10:53:37 -07:00
Adam Williamson 4553a9e43b desktop_login: bit more generous timeout for check_desktop
It can take some time for first login of a user (especially in
KDE). Test has been failing lately on Rawhide because of this.
It seems until recently we never got a still screen when trying
to log in as Jim - so the effective wait for login to complete
was 60 seconds, 30 seconds for wait_still_screen to time out
then 30 seconds for the actual login needle assertion - but now
we are getting a blank screen for 5 seconds which satisfies
wait_still_screen almost immediately, so effective timeout for
the login process is only 35 seconds, which isn't long enough.
So let's bump the check_desktop timeout to 60 seconds.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-28 16:54:13 -07:00
Adam Williamson 87454c5c98 Simplify KDE anaconda launch double click conditional
The kde-settings update went stable now, so we can just do 'if
KDE and relnum > 33'.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-23 10:50:56 -07:00
Adam Williamson 6807b54a64 Need to double click anaconda launcher with kde-settings 34.6
KDE has made it so you need to double-click icons on the desktop
now. Unfortunately this means a clunky conditional at least until
the update goes stable. When F33 is EOL we can reduce it to
just "if kde".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-21 17:10:35 -07:00
Adam Williamson 6a79565afa Fix up KDE 'plasma-disks' test stuff
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>
2021-06-21 15:16:40 -07:00
Adam Williamson 9174472637 Run podman tests on updates
It has been noted that updates have broken podman in the past and
this is a major issue for some users. Let's create a new update
flavor and run the test in it. We'll use the server image as a
base, but it's not really a server test, so I'm giving it its own
flavor so it's not run on updates that we only want to run server
tests on, and we can schedule just this test to run on container-y
updates.

As part of this, we need to install podman before running the
test; for flavors we currently run it on we expect podman to be
preinstalled, but that's not true for the server base image.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-21 12:20:09 -07:00
Lukáš Růžička 9f0103a95f Enhance the Infocenter test to test the presence of Disks module. 2021-06-18 11:39:28 -07:00
Lukáš Růžička 2c366cc7a4 Add startstop test for Plasma Vault. 2021-06-18 11:39:24 -07:00
Lukáš Růžička 395ed61a1a Automate the Anaconda_Save_Traceback_to_Bugzilla_Text test case.
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.
2021-06-17 16:28:29 -07:00
Lukáš Růžička b87049217c Add testcase for Memtest. 2021-06-16 18:11:01 +00:00
Adam Williamson 526042b0a5 Manually add Japanese input source for install_asian_language
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>
2021-06-15 16:19:31 -07:00
Adam Williamson 9d499eb5e1 Handle KDE having a permanent update notification again
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>
2021-06-15 13:56:00 -07:00
Adam Williamson 0b45cd4adc Try and clean up desktop update needles a bit
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>
2021-06-14 12:32:27 -07:00
Adam Williamson 5a9a65bb5b Remove juk and kget from KDE app tests
They were removed from comps in c4d9287.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-08 15:18:02 -07:00
Adam Williamson 3b4d0aa00b Revert "Prevent the Konqueror test from running on F32 and later."
This reverts commit 603ee871c1. We
are well past F32 at this point so it's not longer needed. Just
wipe the test entirely instead.
2021-06-08 15:17:25 -07:00
Adam Williamson fcf96f73b7 Tweak Blivet LVM device type needles
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>
2021-06-07 18:16:46 -07:00
Adam Williamson b231f87417 desktop_printing: adjust for cups-pdf output filename change
A recent cups-pdf build changed the default filename for files
output by cups-pdf. We need to have the test look for the
correct filename based on the cups-pdf version.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-04 13:51:24 -07:00
Adam Williamson 6c52a1c1dd Update Konsole runs needle, maximize Konsole in desktop_terminal
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>
2021-06-02 11:07:49 -07:00
Adam Williamson 45381f33ff anaconda_help: change the check for root password creation
Seems silly to wait 120 seconds when we know what the criteria
are. GNOME installs, can't do this; others, we have to.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-05-31 16:17:09 -07:00
Adam Williamson 3364732110 anaconda_help: tweak nonlive needle handling, add waits, tabs
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>
2021-05-31 16:17:06 -07:00
Adam Williamson 5d4cf014a2 Add a wait_still_screen to desktop_update_graphical for safety
Had some repeated failures where there's kind of a race between
Software doing some kind of auto-refresh and the test clicking
on stuff. This seems to help.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-05-28 15:04:37 -07:00
Lukáš Růžička c6d443a20f Automate the QA:Testcase_Anaconda_help.
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.
2021-05-27 21:39:26 +00:00
Adam Williamson f475156eff Fix cockpit version check
There's a 244.1. D'oh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-05-27 08:56:58 -07:00