2021-05-03 15:37:46 +00:00
|
|
|
use base "anacondatest";
|
|
|
|
use strict;
|
|
|
|
use lockapi;
|
|
|
|
use testapi;
|
|
|
|
use utils;
|
|
|
|
use anaconda;
|
|
|
|
|
|
|
|
sub run {
|
|
|
|
# This test tests that Anaconda is able to show help for particular Anaconda screens.
|
|
|
|
# It opens various Anaconda panes, clicks on Help button, and checks that correct
|
|
|
|
# Help content is shown for that pane.
|
|
|
|
#
|
|
|
|
# Although this test performs Anaconda routines and it only partly performs the installation,
|
|
|
|
# therefore it is NOT to be considered an *installation test*.
|
|
|
|
#
|
|
|
|
# This tests should run after the _boot_to_anaconda test. Which should take us to Anaconda
|
|
|
|
# main hub.
|
|
|
|
# Now, we should be on Anaconda Main hub, but the hub differs for various
|
|
|
|
# installation media. For each such media (ServerDVD, WS Live, KDE Live),
|
|
|
|
# we create a tailored test plan.
|
|
|
|
#
|
|
|
|
# At first, we check for the main hub help.
|
|
|
|
check_help_on_pane("main");
|
|
|
|
|
|
|
|
# Create test plans
|
|
|
|
my @testplan;
|
|
|
|
# For LIVE KDE:
|
|
|
|
if ((get_var('LIVE')) && (get_var('DESKTOP') eq "kde")) {
|
2022-02-18 22:59:17 +00:00
|
|
|
@testplan = qw/keyboard_layout time_date install_destination network_host_name root_password user_creation/;
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
|
|
|
# For LIVE Workstation
|
|
|
|
elsif ((get_var('LIVE')) && (get_var('DESKTOP') eq "gnome")) {
|
2021-05-31 22:03:17 +00:00
|
|
|
@testplan = qw/keyboard_layout install_destination time_date/;
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
|
|
|
# For Silverblue
|
|
|
|
elsif (get_var('DESKTOP') eq "gnome") {
|
2021-05-31 22:03:17 +00:00
|
|
|
@testplan = qw/keyboard_layout language_support install_destination time_date/;
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
|
|
|
# For ServerDVD
|
|
|
|
else {
|
2022-02-18 22:59:17 +00:00
|
|
|
@testplan = qw/keyboard_layout language_support time_date installation_source select_packages install_destination network_host_name root_password user_creation/;
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
# Iterate over test plan and do the tests.
|
|
|
|
foreach (@testplan) {
|
2021-05-31 22:03:17 +00:00
|
|
|
check_help_on_pane($_);
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
# Now, we will start the installation.
|
2021-05-31 22:22:43 +00:00
|
|
|
# on GNOME installs (Workstation Live and Silverblue) we don't
|
|
|
|
# need to set a root password or create a user; on other flavors
|
|
|
|
# we must
|
2022-07-28 20:32:57 +00:00
|
|
|
unless (get_var("DESKTOP") eq "gnome") {
|
2021-09-15 23:26:05 +00:00
|
|
|
assert_and_click "anaconda_install_root_password";
|
2021-09-02 18:04:17 +00:00
|
|
|
# from anaconda-35.22.1 onwards, we have to click 'enable root
|
|
|
|
# account' before typing the password. For older versions,
|
|
|
|
# clicking this needle does nothing but is harmless
|
|
|
|
assert_and_click "anaconda_install_root_password_screen";
|
2021-05-31 22:03:17 +00:00
|
|
|
type_safely "weakrootpassword";
|
|
|
|
send_key "tab";
|
|
|
|
type_safely "weakrootpassword";
|
2021-08-10 16:00:41 +00:00
|
|
|
assert_and_click "anaconda_spoke_done";
|
2021-05-03 15:37:46 +00:00
|
|
|
}
|
2021-05-31 22:03:17 +00:00
|
|
|
# Begin installation after waiting out animation
|
2021-08-10 16:00:41 +00:00
|
|
|
assert_screen "anaconda_main_hub_begin_installation", 90;
|
2021-05-31 22:03:17 +00:00
|
|
|
wait_still_screen 5;
|
2021-08-10 18:56:56 +00:00
|
|
|
assert_and_click "anaconda_main_hub_begin_installation";
|
2021-05-03 15:37:46 +00:00
|
|
|
|
2021-10-15 11:37:40 +00:00
|
|
|
# Check the last Help screen but wait for some time for the test to settle down.
|
|
|
|
sleep 10;
|
2021-05-03 15:37:46 +00:00
|
|
|
check_help_on_pane("installation_progress");
|
|
|
|
|
|
|
|
# As there is no need to proceed with the installation,
|
|
|
|
# the test ends here and the VM will be destroyed
|
|
|
|
# after some short time.
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
1;
|