os-autoinst-distri-rocky/tests/applications/evince/dual_mode.pm
Lukáš Růžička e0d9409c74 Create a test suite for Evince.
This PR fixes issue #188. It adds a test suite to test basic
functionality of Evince and brings the following features:

* test scripts for various Evince functions.
* needles to support the Evince test scripts
* new template variables `TESTPATH` and `POSTINSTALL_LOAD_ALL` (see
  below)
* new logic in `main.py` (see below)

The new variables and the new logic make it easier to create test
suites for post-installation tests. If TESTPATH is used, OpenQA
will take all tests mentioned in POSTINSTALL from that specified
TESTPATH. If both TESTPATH and POSTINSTALL_LOAD_ALL are used, then
OpenQA will run all tests it can find at the TESTPATH location.
If POSTINSTALL and POSTINSTALL_LOAD_ALL are set simultaneously,
then only POSTINSTALL will be taken into account and OpenQA will
only load tests mentioned there.
2021-07-28 08:58:23 +02:00

38 lines
903 B
Perl

use base "installedtest";
use strict;
use testapi;
use utils;
# This part of the suite tests that Evince is able to display content in a two-page mode.
sub run {
my $self = shift;
# Click on the Zoom menu to change a different zoom for next steps.
assert_and_click("evince_change_zoom", button => "left", timeout => 30);
# Select the Fit Width option to be able to see the whole layout.
assert_and_click("evince_select_zoom_fitwidth", button => "left", timeout => 30);
#Dismiss the dialogue
send_key("esc");
# Enter the menu
assert_and_click("gnome_burger_menu", button => "left", timeout => 30);
# Select the Dual mode
assert_and_click("evince_menu_dual", button => "left", timeout => 30);
# Dismiss the menu
send_key("esc");
# Check that the content is displayed in dual mode.
assert_screen("evince_dual_mode", timeout => 30);
}
sub test_flags {
return {always_rollback => 1};
}
1;