From 8b34729146e138aaeac60abe616566109bfd9607 Mon Sep 17 00:00:00 2001 From: Martin Loviska Date: Tue, 7 Aug 2018 15:37:58 +0200 Subject: [PATCH] 6 --- tests/console/lvm_thin_check.pm | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/tests/console/lvm_thin_check.pm b/tests/console/lvm_thin_check.pm index b31adaadbcba..9c04ef168a93 100644 --- a/tests/console/lvm_thin_check.pm +++ b/tests/console/lvm_thin_check.pm @@ -21,10 +21,11 @@ use serial_terminal 'select_virtio_console'; sub run { my $lv_stats = { - write_access => 'read/write', - status => 'available', - readahead => 'auto', - block_device => "\d+:\d" + write_access => qr/\s{2}LV Write Access \s+ read\/write/, + status => qr/\s{2}LV Status \s+ available/, + readahead => qr/\s{2}Read ahead sectors \s+ auto/, + # 254 as major no. points to dev-mapper, see /proc/devices + block_device => qr/\s{2}Block device \s+ 254:\d/ }; select_virtio_console(); @@ -37,10 +38,12 @@ sub run { # thin volume does not exceed thin pool size in our tests my @volumes = split(/\n/, script_output q[lvscan | awk '{print $2}'| sed s/\'//g]); # check for read only volumes and - foreach (@volumes) { + foreach my $volume (@volumes) { + chomp; + my $lvdisp_out = script_output "lvdisplay $volume"; foreach (keys %{$lv_stats}) { - chomp; - assert_script_run "lvdisplay $_ | grep $lv_stats->{$_}"; + die "Value of $_" unless ($lvdisp_out =~ /(?$lv_stats->{$_})/); + record_info('TEST', "Found $+{tested_string} in $volume"); } } @@ -49,7 +52,7 @@ sub run { assert_script_run "dd if=/dev/zero of=$test_file count=1024 bs=1M"; assert_script_run "ls -lah $test_file"; assert_script_run 'lvs -a | tee instant_usage'; - if ((assert_script_run 'diff original_usage instant_usage') != 1) { + if ((script_run 'diff original_usage instant_usage') != 1) { die "LVM usage stats do not differ!"; } } @@ -57,8 +60,9 @@ sub run { sub post_fail_hook { my $self = shift; select_console 'root-console'; - my $lvmdump_regex = "\/root\/ldmdump-.*-\d+\.tgz"; - if (script_output 'lvmdump' =~ /(?$lvmdump_regex)/) { + my $lvmdump_regex = qr{/root/lvmdump-.*?-\d+\.tgz}; + my $out = script_output 'lvmdump'; + if ($out =~ /(?$lvmdump_regex)/) { upload_logs "$+{lvmdump_gzip}"; } $self->save_and_upload_log('lvm dumpconfig', '/tmp/lvm_dumpconf.out');