Work around Firefox 'close multiple tabs' warning
Somehow, recently, FreeIPA tests are running into Firefox not quitting because it's showing a warning about closing multiple tabs. (I think we didn't *get* multiple tabs before but now we do, for some reason). So let's work around this by clicking "Close tabs" if the warning appears. Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
parent
d4c87a4f36
commit
e6c8c5f0ff
17
lib/utils.pm
17
lib/utils.pm
@ -7,7 +7,7 @@ use Exporter;
|
|||||||
|
|
||||||
use lockapi;
|
use lockapi;
|
||||||
use testapi;
|
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 get_milestone boot_decrypt check_release menu_launch_type start_cockpit repo_setup gnome_initial_setup anaconda_create_user check_desktop_clean download_modularity_tests/;
|
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 get_milestone boot_decrypt check_release menu_launch_type start_cockpit repo_setup gnome_initial_setup anaconda_create_user check_desktop_clean download_modularity_tests quit_firefox/;
|
||||||
|
|
||||||
sub run_with_error_check {
|
sub run_with_error_check {
|
||||||
my ($func, $error_screen) = @_;
|
my ($func, $error_screen) = @_;
|
||||||
@ -657,3 +657,18 @@ sub download_modularity_tests {
|
|||||||
assert_script_run 'curl -o /root/test.py https://pagure.io/fedora-qa/modularity_testing_scripts/raw/master/f/modular_functions.py';
|
assert_script_run 'curl -o /root/test.py https://pagure.io/fedora-qa/modularity_testing_scripts/raw/master/f/modular_functions.py';
|
||||||
assert_script_run 'chmod 755 /root/test.py';
|
assert_script_run 'chmod 755 /root/test.py';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub quit_firefox {
|
||||||
|
# Quit Firefox, handling the 'close multiple tabs' warning screen if
|
||||||
|
# it shows up
|
||||||
|
send_key "ctrl-q";
|
||||||
|
# expect to get to either the tabs warning or a console
|
||||||
|
if (check_screen ["user_console", "root_console", "firefox_close_tabs"], 30) {
|
||||||
|
# if we hit a console, we're done
|
||||||
|
return unless match_has_tag "firefox_close_tabs";
|
||||||
|
# otherwise, POJITO
|
||||||
|
assert_and_click "firefox_close_tabs";
|
||||||
|
}
|
||||||
|
# it's a bit odd if we reach here, but could mean we quit to a
|
||||||
|
# desktop, or the firefox_close_tabs needle went stale...
|
||||||
|
}
|
||||||
|
15
needles/firefox/firefox_close_tabs-20181031.json
Normal file
15
needles/firefox/firefox_close_tabs-20181031.json
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"tags": [
|
||||||
|
"firefox_close_tabs"
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 669,
|
||||||
|
"ypos": 416,
|
||||||
|
"width": 66,
|
||||||
|
"height": 20,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/firefox/firefox_close_tabs-20181031.png
Normal file
BIN
needles/firefox/firefox_close_tabs-20181031.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
@ -36,7 +36,7 @@ sub run {
|
|||||||
assert_and_click "freeipa_webui_logout";
|
assert_and_click "freeipa_webui_logout";
|
||||||
wait_still_screen 3;
|
wait_still_screen 3;
|
||||||
# close browser, back to console
|
# close browser, back to console
|
||||||
send_key "ctrl-q";
|
quit_firefox;
|
||||||
# we don't get back to a prompt instantly and keystrokes while X
|
# we don't get back to a prompt instantly and keystrokes while X
|
||||||
# is still shutting down are swallowed, so wait_still_screen before
|
# is still shutting down are swallowed, so wait_still_screen before
|
||||||
# finishing (and handing off to freeipa_client_postinstall)
|
# finishing (and handing off to freeipa_client_postinstall)
|
||||||
|
@ -41,7 +41,7 @@ sub run {
|
|||||||
wait_still_screen 1;
|
wait_still_screen 1;
|
||||||
assert_and_click "freeipa_webui_policy_save";
|
assert_and_click "freeipa_webui_policy_save";
|
||||||
# quit browser to return to console
|
# quit browser to return to console
|
||||||
send_key "ctrl-q";
|
quit_firefox;
|
||||||
# we don't get back to a prompt instantly and keystrokes while X
|
# we don't get back to a prompt instantly and keystrokes while X
|
||||||
# is still shutting down are swallowed, so wait_still_screen before
|
# is still shutting down are swallowed, so wait_still_screen before
|
||||||
# finishing (and handing off to freeipa_client_postinstall)
|
# finishing (and handing off to freeipa_client_postinstall)
|
||||||
|
@ -38,7 +38,7 @@ sub run {
|
|||||||
# join involves package installs, so it may take some time
|
# join involves package installs, so it may take some time
|
||||||
assert_screen "cockpit_join_complete", 300;
|
assert_screen "cockpit_join_complete", 300;
|
||||||
# quit browser to return to console
|
# quit browser to return to console
|
||||||
send_key "ctrl-q";
|
quit_firefox;
|
||||||
# we don't get back to a prompt instantly and keystrokes while X
|
# we don't get back to a prompt instantly and keystrokes while X
|
||||||
# is still shutting down are swallowed, so wait_still_screen before
|
# is still shutting down are swallowed, so wait_still_screen before
|
||||||
# finishing (and handing off to freeipa_client_postinstall)
|
# finishing (and handing off to freeipa_client_postinstall)
|
||||||
|
@ -12,7 +12,7 @@ sub run {
|
|||||||
# test cockpit web UI start
|
# test cockpit web UI start
|
||||||
start_cockpit(0);
|
start_cockpit(0);
|
||||||
# quit firefox (return to console)
|
# quit firefox (return to console)
|
||||||
send_key "ctrl-q";
|
quit_firefox;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub test_flags {
|
sub test_flags {
|
||||||
|
Loading…
Reference in New Issue
Block a user