From 0bf020f2005d6ed6a62a907ec2385fbd6a2d35c5 Mon Sep 17 00:00:00 2001 From: besawn <38794505+besawn@users.noreply.github.com> Date: Thu, 21 Apr 2022 15:47:14 -0400 Subject: [PATCH] Added additional validation to check:output --- xCAT-test/xcattest | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/xCAT-test/xcattest b/xCAT-test/xcattest index 47ebfa45f..6c2ffe27a 100755 --- a/xCAT-test/xcattest +++ b/xCAT-test/xcattest @@ -1447,6 +1447,11 @@ sub run_case { || (($op eq '==') && ($lvalue ne $rvalue)) || (($op eq '!=') && ($lvalue eq $rvalue))) { $failflag = 1; + } elsif (($op ne '=~') && ($op ne '!~') && ($op ne '==') && ($op ne '!=')) { + $failflag = 1; + log_this($running_log_fd, "CHECK:output unrecognized operator: $op\t[Failed]"); + push(@caselog, "CHECK:output unrecognized operator: $op\t[Failed]"); + last; } if ($failflag) { log_this($running_log_fd, "CHECK:output $op $rvalue\t[Failed]"); @@ -1491,7 +1496,13 @@ sub run_case { } else { log_this($running_log_fd, "CHECK:output $op $rvalue\t[Pass]"); push(@caselog, "CHECK:output $op $rvalue\t[Pass]"); - } } } + } + } else { + $failflag = 1; + log_this($running_log_fd, "Unrecognized testcase syntax: CHECK:$check\t[Failed]"); + push(@caselog, "Unrecognized testcase syntax: CHECK:$check\t[Failed]"); + } + } foreach my $cmdcheck (@{ $cases_ref->[ $case_name_index_map_ref->{$case} ]->{cmdcheck}->[$j] }) { if ($cmdcheck) { &runcmd($cmdcheck);