diff options
-rw-r--r-- | tests/getpart.pm | 19 | ||||
-rwxr-xr-x | tests/runtests.pl | 2 |
2 files changed, 20 insertions, 1 deletions
diff --git a/tests/getpart.pm b/tests/getpart.pm index 1aeedd6dd..d9510dd20 100644 --- a/tests/getpart.pm +++ b/tests/getpart.pm @@ -124,6 +124,25 @@ sub getpart { return @this; #empty! } +sub partexists { + my ($section, $part)=@_; + + my $inside = 0; + + for(@xml) { + if(!$inside && ($_ =~ /^ *\<$section/)) { + $inside++; + } + elsif((1 == $inside) && ($_ =~ /^ *\<$part[ \>]/)) { + return 1; # exists + } + elsif((1 == $inside) && ($_ =~ /^ *\<\/$section/)) { + return 0; # does not exist + } + } + return 0; # does not exist +} + # Return entire document as list of lines sub getall { return @xml; diff --git a/tests/runtests.pl b/tests/runtests.pl index 65dd9610b..ed234be23 100755 --- a/tests/runtests.pl +++ b/tests/runtests.pl @@ -3499,7 +3499,7 @@ sub singletest { my $outputok; for my $partsuffix (('', '1', '2', '3', '4')) { my @outfile=getpart("verify", "file".$partsuffix); - if(@outfile) { + if(@outfile || partexists("verify", "file".$partsuffix) ) { # we're supposed to verify a dynamically generated file! my %hash = getpartattr("verify", "file".$partsuffix); |