Create a test suite for Disks.

This commit is contained in:
Lukas Ruzicka 2023-01-04 15:01:36 +01:00 committed by Adam Williamson
parent 3781b2796d
commit e211a87fc7
154 changed files with 1690 additions and 3 deletions

View File

@ -185,6 +185,23 @@ for location in ("vilnius", "denali", "wellington", "poysdorf", "pune"):
for percentage in ("zero", "fifty", "hundred"):
testtags.append(f"panel_volume_bar_{percentage}")
testtags.append(f"panel_volume_indicator_{percentage}")
# Needles for Disks
for number in ("one", "two", "three"):
testtags.append(f"disks_partition_{number}_formatted")
testtags.append(f"disks_partition_{number}_selected")
testtags.append(f"disks_partition_mounted_{number}")
testtags.append(f"disks_partition_identifier_{number}")
testtags.append(f"disks_partition_select_{number}")
testtags.append(f"disks_select_partition_{number}")
testtags.append(f"disks_partition_formatted_{number}")
testtags.append(f"disks_partition_identifier_{number}")
for name in ("primavolta", "secondavolta", "terciavolta", "boot", "root", "home", "renamed"):
testtags.append(f"disks_partition_created_{name}")
testtags.append(f"disks_fstype_changed_{name}")
for typus in ("swap", "ext4", "xfs", "linuxroot"):
testtags.append(f"disks_select_{typus}")
testtags.append(f"disks_select_filesystem_{typus}")
testtags.append(f"disks_parttype_changed_{typus}")
# variable-y in custom_change_device but we only have one value
testtags.append("anaconda_part_device_sda")
# for Anaconda help related needles.

241
lib/disks.pm Normal file
View File

@ -0,0 +1,241 @@
package disks;
use strict;
use base 'Exporter';
use Exporter;
use lockapi;
use testapi;
use utils;
our @EXPORT = qw(add_partitions delete_partition create_partition format_partition edit_partition edit_filesystem authenticate mount_partition resize_partition wipe_disk);
# This routine handles the authentication dialogue when it
# pops out. It provides the admin user (not root) password
# so that system change could be performed on regular
# Workstation.
sub authenticate {
if (check_screen("auth_required", 2)) {
my $password = get_var("USER_PASSWORD") // "weakpassword";
type_very_safely($password);
send_key("ret");
}
}
# This routine adds two partitions. This layout is used in
# several testing scripts.
sub add_partitions {
# The correct disk should be already selected,
# but click on it anyway to make sure it is.
assert_and_click("disks_loopdisk_listed");
# Create the first partition.
create_partition("primavolta", "256");
# Select the empty space
assert_and_click("disks_free_space");
# Create the second partition.
create_partition("secondavolta", "full");
# Create the second partition.
}
# This routine deletes a partition that is defined by its number.
# In GUI it is defined as "Partition $number" which is used
# to assert. If the partition is not found, it will fail.
# The number should be passed as "one", "two" to get use
# of the precreated needles.
sub delete_partition {
my $number = shift;
# Select the partition.
assert_and_click("disks_select_partition_$number");
# Confirm that it has been selected by checking the
# identifier.
assert_screen("disks_partition_identifier_$number");
# Click on the Minus symbol to delete the partition
assert_and_click("disks_partition_delete");
# Confirm the deletion using the Delete button.
assert_and_click("gnome_button_delete");
# Authenticate (if asked)
authenticate();
# Check that the partition has been deleted.
# That means that the identifier disappears and the program
# falls back to another partition and shows its identifier,
# or it shows no identifier, if there are no partitions
# whatsoever.
if (check_screen("disks_partition_identifier_$number", timeout => 10)) {
die("The partition seems not to have been deleted.");
}
}
# This routine creates a partition in the empty space.
# You can define a name and a size. If the size is "full",
# the partition will take up the rest of the free space.
sub create_partition {
my ($name, $size) = @_;
# Click on the Plus button to add partition.
assert_and_click("gnome_add_button_plus");
# Hit Tab to arrive in the size field
send_key("tab");
# Type in the size
if ($size ne "full") {
type_very_safely("$size");
}
# Click on Next
assert_and_click("next_button");
# Hit Tab to arrive in Name field
send_key("tab");
# Type in the name
type_very_safely("$name");
# Click on Create button
assert_and_click("gnome_button_create");
# Authenticate if needed.
authenticate();
# Check that the partition has been created.
assert_screen("disks_partition_created_$name");
}
# This routine formats the existing partition. You can
# define the number of the partition and the filesystem
# type.
sub format_partition {
my ($number, $type, $name) = @_;
# Select the partition
assert_and_click("disks_select_partition_$number");
# Open the partition menu
assert_and_click("disks_partition_menu");
# Select to format partition
assert_and_click("disks_menu_format");
# Name the filesystem
type_very_safely($name);
# Select the filesystem if it is visible.
if (check_screen("disks_select_$type")) {
diag("INFO: The required filesystem type was located on the first screen.");
click_lastmatch();
}
else {
diag("INFO: The required filesystem type was not seen on the first screen");
assert_and_click("disks_select_other");
assert_and_click("next_button");
assert_and_click("disks_select_$type");
}
# Click on the Next button
assert_and_click("next_button");
# Check that there is a warning
assert_screen("disks_warning_shown");
# Click on the Format button to continue
assert_and_click("gnome_button_format");
# Authenticate if needed
authenticate();
# Check that the partition has been formatted.
assert_screen("disks_partition_formatted_$number");
}
# This routine edits the type of partition and its name.
# You can select the type, the name, or both. When changed,
# the changes will be reflected on the partition overview.
sub edit_partition {
my ($number, $type, $name) = @_;
# Select the partition
assert_and_click("disks_select_partition_$number");
# Open the partition menu
assert_and_click("disks_partition_menu");
# Click on Edit partition
assert_and_click("disks_menu_edit_partition");
# Click on Selector
assert_and_click("disks_type_selector");
# Select the new partition type
# The partition type might be visible right ahead,
# if not, press the "Down" key until it has been found.
if (check_screen("disks_select_$type")) {
click_lastmatch();
}
else {
send_key_until_needlematch("disks_select_$type", "down", 50, 1);
click_lastmatch();
}
if ($name) {
# Hit Tab to arrive on the name line
send_key("tab");
# Type the name of the partition
type_very_safely($name);
}
# Click on the Change button
assert_and_click("gnome_button_change");
# Authenticate if needed
authenticate();
# Check that the partition has been changed
assert_screen("disks_parttype_changed_$type");
}
# This routine edits the name of the filesystem. You need
# to set the number of the partition and the name that you
# want to set to the filesystem.
sub edit_filesystem {
my ($number, $name) = @_;
# Select the partition.
assert_and_click("disks_select_partition_$number");
# Open the partition menu
assert_and_click("disks_partition_menu");
# Click on Edit filesystem
assert_and_click("disks_menu_edit_filesystem");
# Type the name
type_very_safely($name);
# Click on Change
assert_and_click("gnome_button_change");
# Authenticate
authenticate();
# Check that the type has changed.
assert_screen("disks_fstype_changed_$name");
}
# This mounts a partition with a filesystem. The partition
# can be chosen by using the $number.
sub mount_partition {
my $number = shift;
# Select the first partition if not selected.
assert_and_click("disks_select_partition_$number");
# Click on the Play symbout to mount the partition.
assert_and_click("disks_button_mount");
# Authenticate if necessary.
authenticate();
# Check that it has been mounted
assert_screen("disks_partition_mounted_$number");
}
# This routine resizes a partition. It takes the number of
# the partition to resize and the target size of the partition.
sub resize_partition {
my ($number, $size) = @_;
# Select the partition
assert_and_click("disks_select_partition_$number");
# Open the partition menu
assert_and_click("disks_partition_menu");
# Select Resize partition
assert_and_click("disks_menu_resize");
# Authenticate
authenticate();
# Click into the Size field and delete
# its content.
assert_and_click("disks_partition_size");
send_key("ctrl-a");
send_key("delete");
# Type in the new size
type_very_safely($size);
# Click on the Resize button
assert_and_click("gnome_button_resize");
# Check that it has been resized.
assert_screen("disks_partition_resized");
}
# This routine wipes the entire disk and formats it using
# the GPT partitions layout.
sub wipe_disk {
# Format the entire disk with a GPT.
assert_and_click("disks_dotted_menu");
assert_and_click("disks_menu_format_disk");
assert_and_click("gnome_button_format_disk");
assert_and_click("gnome_button_format_confirm");
# Do authentication
authenticate();
# Check that the disk has been correctly formatted.
assert_screen("disks_disk_formatted");
}

View File

@ -0,0 +1,15 @@
{
"properties": [],
"tags": [
"disks_about_shown"
],
"area": [
{
"xpos": 590,
"ypos": 311,
"width": 104,
"height": 102,
"type": "match"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 224,
"ypos": 340,
"width": 28,
"height": 27,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_button_mount"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,15 @@
{
"properties": [],
"tags": [
"disks_credits_shown"
],
"area": [
{
"xpos": 564,
"ypos": 388,
"width": 156,
"height": 64,
"type": "match"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 589,
"ypos": 264,
"width": 57,
"height": 28,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_disk_formatted"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 4,
"ypos": 166,
"width": 154,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_diskloop_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"ypos": 166,
"xpos": 4,
"width": 154,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_diskloop_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 0,
"ypos": 164,
"width": 156,
"height": 21,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_diskloop_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"type": "match",
"xpos": 232,
"width": 133,
"ypos": 394,
"height": 28
},
{
"height": 33,
"xpos": 553,
"ypos": 241,
"width": 123,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_diskloop_status"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"xpos": 247,
"ypos": 359,
"width": 224,
"height": 21,
"type": "match"
},
{
"xpos": 232,
"ypos": 397,
"width": 128,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_diskloop_status"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 941,
"ypos": 43,
"width": 25,
"height": 24,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_dotted_menu"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 696,
"ypos": 259,
"width": 60,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_free_space"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 303,
"ypos": 260,
"width": 57,
"height": 38,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_fstype_changed_renamed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"ypos": 164,
"width": 154,
"xpos": 0,
"height": 35,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_loopdisk_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"ypos": 164,
"xpos": 0,
"width": 154,
"height": 35,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_loopdisk_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"ypos": 164,
"height": 35,
"width": 154,
"type": "match",
"xpos": 0
}
],
"properties": [],
"tags": [
"disks_loopdisk_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 3,
"ypos": 166,
"width": 154,
"height": 35,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_loopdisk_listed"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 315,
"ypos": 233,
"width": 123,
"height": 21,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_menu_edit_filesystem"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 318,
"ypos": 209,
"width": 103,
"height": 18,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_menu_edit_partition"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

View File

@ -0,0 +1,15 @@
{
"properties": [],
"tags": [
"disks_menu_format"
],
"area": [
{
"xpos": 284,
"ypos": 177,
"width": 127,
"height": 15,
"type": "match"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 813,
"ypos": 107,
"width": 100,
"height": 17,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_menu_format_disk"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 318,
"ypos": 294,
"width": 63,
"height": 18,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_menu_resize"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 284,
"ypos": 260,
"width": 60,
"height": 38,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_boot"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 786,
"ypos": 260,
"width": 64,
"height": 40,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_home"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 301,
"ypos": 259,
"width": 59,
"height": 43,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_primavolta"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 480,
"ypos": 258,
"width": 59,
"height": 44,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_root"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 694,
"ypos": 260,
"width": 67,
"height": 38,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_secondavolta"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 808,
"ypos": 262,
"width": 61,
"height": 36,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_created_terciavolta"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 981,
"ypos": 345,
"width": 25,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_delete"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 301,
"ypos": 261,
"width": 59,
"height": 39,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_formatted_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 262,
"ypos": 415,
"width": 148,
"height": 18,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_identifier_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 262,
"ypos": 416,
"width": 152,
"height": 18,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_identifier_two"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,15 @@
{
"properties": [],
"tags": [
"disks_partition_menu"
],
"area": [
{
"xpos": 225,
"ypos": 343,
"width": 26,
"height": 23,
"type": "match"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"ypos": 394,
"width": 220,
"xpos": 450,
"height": 23,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"height": 23,
"xpos": 450,
"ypos": 394,
"width": 220,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"type": "match",
"height": 23,
"xpos": 450,
"width": 220,
"ypos": 394
}
],
"properties": [],
"tags": [
"disks_partition_mounted_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 450,
"ypos": 394,
"width": 220,
"height": 23,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"height": 18,
"ypos": 398,
"width": 220,
"xpos": 456,
"type": "match"
},
{
"ypos": 415,
"xpos": 265,
"width": 148,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_three"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"xpos": 456,
"ypos": 398,
"width": 220,
"height": 18,
"type": "match"
},
{
"xpos": 265,
"ypos": 415,
"width": 148,
"height": 19,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_three"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"type": "match",
"width": 146,
"ypos": 417,
"xpos": 264,
"height": 18
},
{
"type": "match",
"ypos": 395,
"width": 272,
"xpos": 454,
"height": 20
}
],
"properties": [],
"tags": [
"disks_partition_mounted_two"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"width": 146,
"ypos": 417,
"xpos": 264,
"height": 18,
"type": "match"
},
{
"type": "match",
"height": 20,
"ypos": 395,
"width": 272,
"xpos": 454
}
],
"properties": [],
"tags": [
"disks_partition_mounted_two"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"xpos": 264,
"ypos": 417,
"width": 146,
"height": 18,
"type": "match"
},
{
"xpos": 454,
"ypos": 395,
"width": 272,
"height": 20,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_mounted_two"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"type": "match",
"width": 146,
"ypos": 417,
"xpos": 264,
"height": 18
},
{
"type": "match",
"ypos": 395,
"width": 272,
"xpos": 454,
"height": 20
}
],
"properties": [],
"tags": [
"disks_partition_mounted_two"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"width": 125,
"type": "match",
"ypos": 254,
"height": 29,
"xpos": 272
}
],
"properties": [],
"tags": [
"disks_partition_one_formatted"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,15 @@
{
"properties": [],
"tags": [
"disks_partition_one_selected"
],
"area": [
{
"xpos": 390,
"ypos": 263,
"width": 54,
"height": 16,
"type": "match"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"height": 36,
"width": 71,
"ypos": 260,
"type": "match",
"xpos": 513
}
],
"properties": [],
"tags": [
"disks_partition_resized"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 512,
"ypos": 261,
"width": 71,
"height": 36,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_resized"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 304,
"ypos": 270,
"width": 52,
"height": 14,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_select_one"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 442,
"ypos": 458,
"width": 112,
"height": 24,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_partition_size"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View File

@ -0,0 +1,22 @@
{
"area": [
{
"xpos": 217,
"ypos": 451,
"width": 301,
"height": 23,
"type": "match"
},
{
"xpos": 283,
"ypos": 273,
"width": 93,
"height": 11,
"type": "match"
}
],
"properties": [],
"tags": [
"disks_parttype_changed_linuxroot"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Some files were not shown because too many files have changed in this diff Show More