248b7a9536
Summary: This contains several tweaks to storage handling. It adds a method for disk selection which all the storage tests can share. It sets up a more extensible approach for main.pm to run the storage tests, instead of an ever-growing forest of 'else' clauses. Finally it sets up a couple of methods for changing partitioning schemes on the custom part screen and uses one of them in the software RAID test; the other will be used for other custom storage tests. This kills the two_disks needle. I could keep it and work it into select_disks, but it doesn't fit naturally and I really just don't see the point of the needle. The only thing we lose is we don't check that anaconda actually sees two disks in the 'attach two disks, only install to one' test (that's server_sata_multi), but the other multi-disk tests will serve to catch that case failing for some reason. What I actually intended to do was add some more tests for different custom part storage types, but it seemed a good idea to do some of this cleanup so that can be implemented efficiently. I'll have followups for that. Test Plan: Run all tests and ensure they work exactly as before (not just that they still pass, but that the correct test steps are actually scheduled in each case.) Reviewers: garretraziel, jskladan Reviewed By: garretraziel, jskladan Subscribers: tflink Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D475
34 lines
936 B
Perl
34 lines
936 B
Perl
use base "anacondalog";
|
|
use strict;
|
|
use testapi;
|
|
|
|
sub run {
|
|
my $self = shift;
|
|
# Go to INSTALLATION DESTINATION and ensure two disks are selected.
|
|
# Because DISK_CUSTOM is set, select_disks will select custom for us.
|
|
$self->select_disks(2);
|
|
assert_and_click "anaconda_spoke_done";
|
|
|
|
# Manual partitioning spoke should be displayed
|
|
assert_and_click "anaconda_part_automatic";
|
|
$self->custom_change_type("raid");
|
|
assert_and_click "anaconda_spoke_done";
|
|
assert_and_click "anaconda_part_accept_changes";
|
|
|
|
# Anaconda hub
|
|
assert_screen "anaconda_main_hub", 300; #
|
|
|
|
}
|
|
|
|
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:
|