1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-11-25 07:13:09 +00:00

Compare commits

..

3 Commits

Author SHA1 Message Date
Adam Williamson
7955c092d6 Add yet another KDE printing sentence needle
Saw slightly different rendering in at least one run on staging.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-10-08 09:05:18 -07:00
Adam Williamson
d88c8e4335 Add several more tests to the desktop update test set
There's no obvious reason we're not also running these tests on
updates, so let's do it. We have to skip the advisory and UEFI
post checks for desktop_login as the last step of that test is
shutting down the system.

We leave out desktop_login for now because of
https://gitlab.gnome.org/GNOME/gjs/-/issues/647

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-10-08 08:51:35 -07:00
Adam Williamson
6d2974f722 keyring: simplify and make more robust
This avoids some magic waits by asserting screens (which is much
more reliable), and combines KDE and GNOME flows in the
passwordless test by adding some needle tags to the nautilus
needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-10-06 08:02:03 -07:00
25 changed files with 123 additions and 73 deletions

View File

@ -352,11 +352,8 @@ sub load_postinstall_tests() {
}
# load the ADVISORY / KOJITASK post-install test - this records which
# update or task packages were actually installed during the test. Don't
# do this for netinst tests; as these just use the default install repo,
# they will not get the packages from the update. But installs from live
# image and ostree installer image should get them.
if (get_var("ADVISORY_OR_TASK") && get_var("TEST") ne "install_default_update_netinst") {
# update or task packages were actually installed during the test.
if (get_var("ADVISORY_OR_TASK") && !get_var("NO_ADVISORY_POST")) {
# don't do this for support server unless the update is for the same
# release as the support server disk image, as we don't install the
# updates on support server when they differ

View File

@ -1,15 +0,0 @@
{
"area": [
{
"xpos": 226,
"ypos": 271,
"width": 164,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"keyring_askpass_password"
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 734 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"height": 21,
"width": 170,
"ypos": 240,
"xpos": 550,
"type": "match"
}
],
"properties": [],
"tags": [
"keyring_askpass_yesno"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 473 KiB

View File

@ -10,6 +10,8 @@
],
"properties": [],
"tags": [
"nautilus_autounlock_password"
"nautilus_autounlock_password",
"keyring_askpass_remember",
"DESKTOP-gnome"
]
}

View File

@ -10,6 +10,8 @@
],
"properties": [],
"tags": [
"nautilus_remember_password"
"nautilus_remember_password",
"keyring_askpass_remember",
"DESKTOP-gnome"
]
}

View File

@ -10,6 +10,8 @@
],
"properties": [],
"tags": [
"nautilus_unlock"
"nautilus_unlock",
"keyring_askpass_confirm",
"DESKTOP-gnome"
]
}

View File

@ -10,6 +10,8 @@
],
"properties": [],
"tags": [
"nautilus_unlock"
"nautilus_unlock",
"keyring_askpass_confirm",
"DESKTOP-gnome"
]
}

View File

@ -10,6 +10,7 @@
],
"properties": [],
"tags": [
"keyring_askpass_confirm"
"keyring_askpass_confirm",
"DESKTOP-kde"
]
}

View File

@ -1,15 +0,0 @@
{
"area": [
{
"xpos": 379,
"ypos": 322,
"width": 167,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"keyring_askpass_password"
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 374 KiB

View File

@ -10,6 +10,7 @@
],
"properties": [],
"tags": [
"keyring_askpass_remember"
"keyring_askpass_remember",
"DESKTOP-kde"
]
}

View File

@ -10,6 +10,7 @@
],
"properties": [],
"tags": [
"keyring_askpass_yesno"
"keyring_askpass_yesno",
"DESKTOP-kde"
]
}

View File

@ -11,6 +11,7 @@
],
"properties": [],
"tags": [
"keyring_askpass_yesno"
"keyring_askpass_yesno",
"DESKTOP-kde"
]
}

View File

@ -0,0 +1,15 @@
{
"area": [
{
"type": "match",
"width": 95,
"ypos": 231,
"xpos": 484,
"height": 19
}
],
"properties": [],
"tags": [
"keyring_wallet_password_reveal"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"type": "match",
"ypos": 97,
"xpos": 460,
"width": 104,
"height": 23
}
],
"properties": [],
"tags": [
"kwalletmanager_runs"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 358 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 219,
"ypos": 136,
"width": 305,
"type": "match",
"height": 18
}
],
"properties": [],
"tags": [
"printing_check_sentence"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -351,12 +351,24 @@
"fedora-updates-workstation-x86_64-*-64bit": 5
}
},
"desktop_keyring": {
"profiles": {
"fedora-updates-kde-x86_64-*-64bit": 5,
"fedora-updates-workstation-x86_64-*-64bit": 5
}
},
"desktop_printing": {
"profiles": {
"fedora-updates-kde-x86_64-*-64bit": 5,
"fedora-updates-workstation-x86_64-*-64bit": 5
}
},
"desktop_printing_builtin": {
"profiles": {
"fedora-updates-kde-x86_64-*-64bit": 5,
"fedora-updates-workstation-x86_64-*-64bit": 5
}
},
"desktop_terminal": {
"profiles": {
"fedora-updates-kde-x86_64-*-64bit": 5,
@ -395,6 +407,7 @@
"INSTALL_UNLOCK": "support_ready",
"ISO": "%ADVISORY_OR_TASK%-netinst-%ARCH%.iso",
"NICTYPE": "tap",
"NO_ADVISORY_POST": "1",
"PACKAGE_SET": "default",
"PARALLEL_WITH": "support_server@%ARCH_BASE_MACHINE%",
"WORKER_CLASS": "tap"
@ -601,6 +614,11 @@
"fedora-updates-everything-boot-iso-x86_64-*-64bit": 5
}
},
"toolbox": {
"profiles": {
"fedora-updates-workstation-x86_64-*-64bit": 5
}
},
"upgrade_desktop_encrypted_64bit": {
"profiles": {
"fedora-updates-workstation-upgrade-x86_64-*-64bit": 5

View File

@ -964,6 +964,8 @@
"settings": {
"BOOTFROM": "c",
"HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
"NO_ADVISORY_POST": "1",
"NO_UEFI_POST": "1",
"POSTINSTALL": "desktop_login",
"START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%"
}

View File

@ -46,10 +46,10 @@ sub connect_localhost {
# in the password. We will also try to remember the
# password and confirm the connection.
if ($type ne "reconnect") {
wait_still_screen(3);
assert_screen("keyring_askpass_remember");
type_very_safely($pass);
assert_and_click("nautilus_remember_password");
assert_and_click("nautilus_unlock");
click_lastmatch;
assert_and_click("keyring_askpass_confirm");
}
# When the connection has been established,
# a new connection icon will appear.
@ -83,9 +83,9 @@ sub connect_localhost {
# Then similarly to Gnome, the password dialogue will appear
# and we type in the password. Also, we click on Remember
# and confirm with the OK button.
assert_screen("keyring_askpass_password");
assert_screen("keyring_askpass_remember");
type_very_safely("$pass");
assert_and_click("keyring_askpass_remember");
click_lastmatch;
assert_and_click("keyring_askpass_confirm");
}
# Check that we have logged in and exit the application.
@ -154,7 +154,7 @@ sub run {
# Boot to login screen and type in the password.
boot_to_login_screen();
dm_perform_login($desktop, $pass);
check_desktop;
check_desktop(timeout => 120);
# Repeat the connection procedure, but skip the password
# handling process as this will be done by the keyring.

View File

@ -46,25 +46,16 @@ sub connect_localhost {
# the SSH key.
my $command = "sftp $user" . '@localhost';
enter_cmd($command);
sleep 2;
# When connecting for the first time, we will remember
# the key password and store it in the keyring.
if ($type ne "reconnect") {
if ($desktop eq "gnome") {
type_very_safely("yes\n");
wait_still_screen(2);
type_very_safely("sshpassword");
assert_and_click("nautilus_autounlock_password");
assert_and_click("nautilus_unlock");
}
else {
type_very_safely("yes\n");
wait_still_screen(2);
type_very_safely("sshpassword");
assert_and_click("keyring_askpass_remember");
assert_and_click("keyring_askpass_confirm");
}
assert_screen("keyring_askpass_yesno");
type_very_safely("yes\n");
assert_screen("keyring_askpass_remember");
type_very_safely("sshpassword");
click_lastmatch;
assert_and_click("keyring_askpass_confirm");
}
# The connection should have been established if everything has worked
@ -105,7 +96,7 @@ sub run {
# Log in.
boot_to_login_screen();
dm_perform_login($desktop, $pass);
check_desktop;
check_desktop(timeout => 120);
# Reconnect without using password. We still should be
# able to log in.