History

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest: ktest: Check parent options for iterated tests

Linus Torvalds committed 14 years ago

Commit f10cdea2 parents 5907c5f f9dfb651 file · +16 −0Browse files

Unified · Split

tools/testing/ktest/ktest.pl+16−0
@@ -747,6 +747,18 @@ sub __eval_option { · 746 unmodified lines
747747 # Add space to evaluate the character before $
748748 $option = " $option";
749749 my $retval = "";
750+ my $repeated = 0;
751+ my $parent = 0;
752+
753+ foreach my $test (keys %repeat_tests) {
754+ if ($i >= $test &&
755+ $i < $test + $repeat_tests{$test}) {
756+
757+ $repeated = 1;
758+ $parent = $test;
759+ last;
760+ }
761+ }
750762
751763 while ($option =~ /(.*?[^\\])\$\{(.*?)\}(.*)/) {
752764 my $start = $1;
@@ -760,10 +772,14 @@ sub __eval_option { · 7 unmodified lines
760772 # otherwise see if the default OPT (without [$i]) exists.
761773
762774 my $o = "$var\[$i\]";
775+ my $parento = "$var\[$parent\]";
763776
764777 if (defined($opt{$o})) {
765778 $o = $opt{$o};
766779 $retval = "$retval$o";
780+ } elsif ($repeated && defined($opt{$parento})) {
781+ $o = $opt{$parento};
782+ $retval = "$retval$o";
767783 } elsif (defined($opt{$var})) {
768784 $o = $opt{$var};
769785 $retval = "$retval$o";