2016-05-18 12:04:45 +00:00
|
|
|
use base "installedtest";
|
|
|
|
use strict;
|
|
|
|
use testapi;
|
2017-01-18 07:15:44 +00:00
|
|
|
use utils;
|
2016-05-18 12:04:45 +00:00
|
|
|
|
|
|
|
sub run {
|
|
|
|
my $self = shift;
|
2016-11-09 15:21:03 +00:00
|
|
|
assert_screen "console_initial_setup", 200;
|
2016-05-18 12:04:45 +00:00
|
|
|
# IMHO it's better to use sleeps than to have needle for every text screen
|
|
|
|
wait_still_screen 5;
|
|
|
|
|
|
|
|
# Set timezone
|
|
|
|
type_string "2\n";
|
|
|
|
wait_still_screen 5;
|
2016-09-28 20:15:56 +00:00
|
|
|
type_string "1\n"; # Set timezone
|
|
|
|
wait_still_screen 5;
|
2016-05-18 12:04:45 +00:00
|
|
|
type_string "1\n"; # Europe
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "37\n"; # Prague
|
|
|
|
wait_still_screen 7;
|
|
|
|
|
|
|
|
# Set root password
|
|
|
|
type_string "4\n";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string get_var("ROOT_PASSWORD") || "weakpassword";
|
|
|
|
send_key "ret";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string get_var("ROOT_PASSWORD") || "weakpassword";
|
|
|
|
send_key "ret";
|
|
|
|
wait_still_screen 7;
|
|
|
|
|
|
|
|
# Create user
|
|
|
|
type_string "5\n";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "1\n"; # create new
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "3\n"; # set username
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string get_var("USER_LOGIN", "test");
|
|
|
|
send_key "ret";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "4\n"; # use password
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "5\n"; # set password
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string get_var("USER_PASSWORD", "weakpassword");
|
|
|
|
send_key "ret";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string get_var("USER_PASSWORD", "weakpassword");
|
|
|
|
send_key "ret";
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "6\n"; # make him an administrator
|
|
|
|
wait_still_screen 5;
|
|
|
|
type_string "c\n";
|
|
|
|
wait_still_screen 7;
|
|
|
|
|
|
|
|
assert_screen "console_initial_setup_done", 30;
|
|
|
|
type_string "c\n"; # continue
|
|
|
|
assert_screen "text_console_login", 60;
|
|
|
|
|
|
|
|
# Try to log in as an user
|
redo console_login with multiple matches, move to main_common
Summary:
Since we can match on multiple needles, we can drop the loop
from console_login and instead do it this way, which is simpler
and should work better on ARM (the timeouts will scale and
allow ARM to be slow here). Also move it to main_common as
there's no logical reason for it to be a class method.
Also remove the `check` arg. `check` was only set to 0 by two
tests, _console_shutdown and anacondatest's _post_fail_hook.
For _console_shutdown, I think I just wanted to give it the
best possible chance of succeeding. But we're really not going
to lose anything significant by checking, the only case where
check=>0 would've helped is if the 'good' needle had stopped
matching, and all sorts of other tests will fail in that case.
anacondatest was only using it to save a screenshot of whatever
was on the tty if it didn't reach a root console, which doesn't
seem that useful, and we'll get screenshots from check_screen
and assert_screen anyway.
Test Plan:
Run all tests, check they behave as expected and
none inappropriately fails on console login.
Reviewers: jskladan, garretraziel
Reviewed By: garretraziel
Subscribers: tflink
Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1016
2016-09-30 15:42:45 +00:00
|
|
|
console_login(user=>get_var("USER_LOGIN", "test"), password=>get_var("USER_PASSWORD", "weakpassword"));
|
2016-05-18 12:04:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
sub test_flags {
|
|
|
|
# without anything - rollback to 'lastgood' snapshot if failed
|
|
|
|
# 'fatal' - whole test suite is in danger if this fails
|
|
|
|
# 'milestone' - after this test succeeds, update 'lastgood'
|
|
|
|
# 'important' - if this fails, set the overall state to 'fail'
|
|
|
|
return { fatal => 1 };
|
|
|
|
}
|
|
|
|
|
|
|
|
1;
|
|
|
|
|
|
|
|
# vim: set sw=4 et:
|