mirror of
https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git
synced 2025-08-23 15:45:44 +00:00
Add wait function.
This commit is contained in:
parent
c54e42fbe5
commit
ff6165c839
22
lib/utils.pm
22
lib/utils.pm
@ -7,7 +7,7 @@ use Exporter;
|
||||
|
||||
use lockapi;
|
||||
use testapi;
|
||||
our @EXPORT = qw/run_with_error_check type_safely type_very_safely desktop_vt boot_to_login_screen console_login console_switch_layout desktop_switch_layout console_loadkeys_us do_bootloader boot_decrypt check_release menu_launch_type repo_setup setup_workaround_repo cleanup_workaround_repo console_initial_setup handle_welcome_screen gnome_initial_setup anaconda_create_user check_desktop download_modularity_tests quit_firefox advisory_get_installed_packages advisory_check_nonmatching_packages start_with_launcher quit_with_shortcut disable_firefox_studies select_rescue_mode copy_devcdrom_as_isofile get_release_number check_left_bar check_top_bar check_prerelease check_version spell_version_number _assert_and_click is_branched rec_log click_unwanted_notifications repos_mirrorlist register_application get_registered_applications solidify_wallpaper check_and_install_git download_testdata desktop_login/;
|
||||
our @EXPORT = qw/run_with_error_check type_safely type_very_safely desktop_vt boot_to_login_screen console_login console_switch_layout desktop_switch_layout console_loadkeys_us do_bootloader boot_decrypt check_release menu_launch_type repo_setup setup_workaround_repo cleanup_workaround_repo console_initial_setup handle_welcome_screen gnome_initial_setup anaconda_create_user check_desktop download_modularity_tests quit_firefox advisory_get_installed_packages advisory_check_nonmatching_packages start_with_launcher quit_with_shortcut disable_firefox_studies select_rescue_mode copy_devcdrom_as_isofile get_release_number check_left_bar check_top_bar check_prerelease check_version spell_version_number _assert_and_click is_branched rec_log click_unwanted_notifications repos_mirrorlist register_application get_registered_applications solidify_wallpaper check_and_install_git download_testdata desktop_login wait_until_needlematch/;
|
||||
|
||||
# We introduce this global variable to hold the list of applications that have
|
||||
# registered during the apps_startstop_test when they have sucessfully run.
|
||||
@ -1501,7 +1501,25 @@ sub desktop_login {
|
||||
send_key("esc");
|
||||
}
|
||||
|
||||
|
||||
# This routine will regularly check for a $needle. If it does not
|
||||
# find one, it will wait for the given $interval and try again.
|
||||
# Finally it either finds the match or dies after the $count
|
||||
# of unsuccessful attempts have been reached.
|
||||
sub wait_until_needlematch {
|
||||
my ($needle, $interval, $count) = @_;
|
||||
my $iterator = 0;
|
||||
while ($iterator < $count) {
|
||||
if (check_screen($needle)) {
|
||||
last;
|
||||
}
|
||||
else {
|
||||
$iterator += 1;
|
||||
}
|
||||
}
|
||||
if ($iterator >= $count) {
|
||||
die("'$needle' did not appear in the give time frame.");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
1;
|
||||
|
Loading…
Reference in New Issue
Block a user