1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-12-22 18:33:07 +00:00
os-autoinst-distri-fedora/tests/disk_custom_btrfs_preserve_home.pm
Lukáš Růžička ba90c70c8a Add several tests to test QA:Testcase_partitioning_custom_btrfs_preserve_home.
This PR adds the `install_btrfs_upload` to install the btrfs based
image, the `btrfs_preserve_home_extras` to prepare and test the data
on the home partition, as well as the `custom_btrfs_preserve_home` that
uses the preinstalled btrfs image and uses its current partitioning to
preserve the home partition and the data on it.
2021-01-20 16:50:39 +00:00

76 lines
2.0 KiB
Perl

use base "anacondatest";
use strict;
use testapi;
use utils;
use anaconda;
sub use_current_partition {
my ($partition, $reformat) = @_;
# Select the partition
assert_and_click "anaconda_part_select_$partition";
# Select the mountpoint field
send_key_until_needlematch("anaconda_part_mountpoint_selected", "tab", 20);
# Type in the mountpoint
if ($partition eq "root") {
type_very_safely "/";
}
else {
type_very_safely "/$partition";
}
# Click on reformat if we so wish
if ($reformat == 1) {
assert_and_click "anaconda_part_device_reformat";
}
# Update chosen settings
assert_and_click "anaconda_part_update_settings";
# Wait for the UI to settle down.
wait_still_screen 5;
}
sub run {
my $self = shift;
# Go to INSTALLATION DESTINATION and ensure the disk is selected.
# Because PARTITIONING starts with 'custom_', this will select custom.
select_disks();
assert_and_click "anaconda_spoke_done";
# Manual partitioning spoke should be displayed. Select BTRFS
# partitioning scheme
custom_scheme_select("btrfs");
# Select the currently installed system
assert_and_click "anaconda_part_use_current";
# Use the home partition from the current scheme
use_current_partition("home", 0);
# Use the boot partition from the current scheme
use_current_partition("boot", 1);
# Select the root partition from the current scheme
# and delete it
assert_and_click "anaconda_part_select_root";
assert_and_click "anaconda_part_delete";
assert_and_click "anaconda_part_confirm_delete";
# Add the new root partition to the scheme
assert_and_click "anaconda_part_add";
type_very_safely "/\n";
# Confirm changes
assert_and_click "anaconda_spoke_done";
assert_and_click "anaconda_part_accept_changes";
# Anaconda hub
assert_screen "anaconda_main_hub", 300; #
}
sub test_flags {
return { fatal => 1 };
}
1;
# vim: set sw=4 et: