e0d9409c74
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.
37 lines
819 B
Perl
37 lines
819 B
Perl
use base "installedtest";
|
|
use strict;
|
|
use testapi;
|
|
use utils;
|
|
|
|
# This part of the suite tests that Evince can rotate the content.
|
|
|
|
sub rotate_content {
|
|
|
|
# Open the application menu
|
|
assert_and_click("gnome_burger_menu", button => "left", timeout => 30);
|
|
|
|
# Click with the *left* button (needle click area might need some correction)
|
|
assert_and_click("evince_menu_rotate", button => "left", timeout => 30);
|
|
}
|
|
|
|
sub run {
|
|
my $self = shift;
|
|
|
|
# Rotate the content once.
|
|
rotate_content();
|
|
|
|
# Check that the window content has been rotated.
|
|
assert_screen("evince_content_rotated_once", timeout => 30);
|
|
|
|
# Rotate the content again.
|
|
rotate_content();
|
|
|
|
# Check that the window content has been rotated.
|
|
assert_screen("evince_content_rotated_twice", timeout => 30);
|
|
}
|
|
|
|
sub test_flags {
|
|
return {always_rollback => 1};
|
|
}
|
|
|
|
1;
|