From 5d3b265ba5bd8cb27e08ddf166bb2d9fe330388a Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Fri, 23 Sep 2011 13:02:28 +1200 Subject: [PATCH] Support multiple SCRIPT= lines in a regression test. --- testing/dav_test | 47 ++++++++++++++++++++++++++++++++++------------- 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/testing/dav_test b/testing/dav_test index da648a37..185b2f75 100755 --- a/testing/dav_test +++ b/testing/dav_test @@ -46,6 +46,8 @@ push @arguments, "--silent" unless ( $debug ); push @arguments, "--verbose" if ( $debug ); my $url; +my $script; +my @scripts = ( ); my $is_head_request = 0; my @auth = ( "--user", "user1:user1" ); @@ -182,14 +184,18 @@ while( ) { $url =~ s{alternate.host}{$althost}; }; + $line =~ /^\s*SCRIPT\s*=\s*(\S.*)$/ && do { + $script=$1; + $script =~ s{regression.host}{$webhost}; + $script =~ s{alternate.host}{$althost}; + push @scripts, $script; + }; + } -if ( !defined($url) ) { +if ( !defined($url) && !defined($script) ) { print < ) { - my $line = $_; - foreach my $replacement ( @$replacements ) { - $line =~ s/$replacement->{'pattern'}/$replacement->{'replacement'}/; + open RESULTS, "-|", "curl", @arguments; + while( ) { + my $line = $_; + foreach my $replacement ( @$replacements ) { + $line =~ s/$replacement->{'pattern'}/$replacement->{'replacement'}/; + } + print $line; + } +} + +if ( defined($script) ) { + foreach $script ( @scripts ) { + open RESULTS, "-|", $script; + while( ) { + my $line = $_; + foreach my $replacement ( @$replacements ) { + $line =~ s/$replacement->{'pattern'}/$replacement->{'replacement'}/; + } + print $line; + } } - print $line; } if ( defined(@{$queries}) && @{$queries} ) {