ktest: Allow perl regex expressions in conditional statements

Add '=~' and '!~' to the list of allowed conditionals for DEFAULT and
TEST_START section if statements.

ie.

 TEST_START IF TEST =~ .*test$

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
Steven Rostedt 2012-07-30 14:37:01 -04:00 committed by Steven Rostedt
parent 9b1d367dbb
commit 8fddbe9bbf

View File

@ -623,6 +623,10 @@ sub process_compare {
return $lval eq $rval;
} elsif ($cmp eq "!=") {
return $lval ne $rval;
} elsif ($cmp eq "=~") {
return $lval =~ m/$rval/;
} elsif ($cmp eq "!~") {
return $lval !~ m/$rval/;
}
my $statement = "$lval $cmp $rval";
@ -678,7 +682,7 @@ sub process_expression {
}
}
if ($val =~ /(.*)(==|\!=|>=|<=|>|<)(.*)/) {
if ($val =~ /(.*)(==|\!=|>=|<=|>|<|=~|\!~)(.*)/) {
my $ret = process_compare($1, $2, $3);
if ($ret < 0) {
die "$name: $.: Unable to process comparison\n";