diff --git a/tests/upgrade_boot.pm b/tests/upgrade_boot.pm index f20d5071..84f8c399 100644 --- a/tests/upgrade_boot.pm +++ b/tests/upgrade_boot.pm @@ -21,25 +21,26 @@ sub run { # that Gnome Software allows to see prerelease upgrades, too. # We want to deal with it here, in order to save one restart # between the steps. - - if (get_var("GUI_UPGRADE")) { - # Log onto the graphical session - my $login = get_var("USER_LOGIN") // "test"; - my $password = get_var("USER_PASSWORD") // "weakpassword"; - desktop_login($login, $password); - # Let's send one Esc key to come back from Activities later releases. - send_key("esc"); - wait_still_screen 2; - # Start the terminal - menu_launch_type("gnome-terminal"); - wait_still_screen 2; - # Use gsettings to set the upgrade-prerelease to true - type_safely("gsettings set org.gnome.software show-upgrade-prerelease true\n"); - # Exit the application - type_safely("exit"); - } + # # switch to TTY3 for both, graphical and console tests $self->root_console(tty=>3); + + if (get_var("GUI_UPGRADE")) { + # If we want to use Software or some other GUI tool to handle + # upgrades, we need to take into account that for most of our + # tests we will be upgrading to a prerelease version. Therefore + # we need to enable such version to be shown and accessible + # as normally we prevent this behaviour. + # + # First, let's become the corresponding user. + my $login = get_var("USER_LOGIN") // "test"; + my $password = get_var("USER_PASSWORD") // "weakpassword"; + console_login($login, $password); + # Use gsettings to enable prerelease versions to be shown + assert_script_run("gsettings set org.gnome.software show-upgrade-prerelease true"); + # Re-login as root again. + console_login("root", "weakpassword") + } # disable screen blanking (update can take a long time) script_run "setterm -blank 0"; # adjust repo files to use mirrorlist not metalink (to avoid