curl-library
[PATCH 2/3] Allow multiple client/file and verify/file parts
From: Colin Hogben <curl_at_pythontech.co.uk>
Date: Wed, 18 Jan 2012 13:14:10 +0000
Date: Wed, 18 Jan 2012 13:14:10 +0000
---
tests/runtests.pl | 37 +++++++++++++++++++++----------------
1 files changed, 21 insertions(+), 16 deletions(-)
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 7ee7d60..ee1b7eb 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -2979,16 +2979,20 @@ sub singletest {
unlink($memdump);
}
- # create a (possibly-empty) file before starting the test
- my @inputfile=getpart("client", "file");
- my %fileattr = getpartattr("client", "file");
- my $filename=$fileattr{'name'};
- if(@inputfile || $filename) {
- if(!$filename) {
- logmsg "ERROR: section client=>file has no name attribute\n";
- timestampskippedevents($testnum);
- return -1;
- }
+ my @inputfiles = getparts("client", "file");
+ foreach (@inputfiles) {
+ # create a (possibly-empty) file before starting the test
+ my($fileattr, @inputfile) = @$_;
+ my $filename = $fileattr->{'name'};
+ if(!$filename) {
+ if(@inputfile) {
+ logmsg "ERROR: section client=>file has no name attribute\n";
+ timestampskippedevents($testnum);
+ return -1;
+ }
+ # Missing filename allowed if no content - just ignore
+ next;
+ }
my $fileContent = join('', @inputfile);
subVariables \$fileContent;
# logmsg "DEBUG: writing file " . $filename . "\n";
@@ -3498,12 +3502,12 @@ sub singletest {
$ok .= "-"; # protocol not checked
}
- my @outfile=getpart("verify", "file");
- if(@outfile) {
+ my @outfiles = getparts("verify", "file");
+ foreach (@outfiles) {
# we're supposed to verify a dynamically generated file!
- my %hash = getpartattr("verify", "file");
+ my($hash, @outfile) = @$_;
- my $filename=$hash{'name'};
+ my $filename=$hash->{'name'};
if(!$filename) {
logmsg "ERROR: section verify=>file has no name attribute\n";
stopservers($verbose);
@@ -3516,7 +3520,7 @@ sub singletest {
# what parts to cut off from the file
my @stripfile = getpart("verify", "stripfile");
- my $filemode=$hash{'mode'};
+ my $filemode=$hash->{'mode'};
if($filemode && ($filemode eq "text") && $has_textaware) {
# text mode when running on windows means adding an extra
# strip expression
@@ -3539,7 +3543,8 @@ sub singletest {
$timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
return 1;
}
-
+ }
+ if(@outfiles) {
$ok .= "o";
}
else {
--
1.6.5.6
--------------030205040005020403060202
Content-Type: text/plain;
name="0003-Update-test1315-to-use-multiple-client-file-sections.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename*0="0003-Update-test1315-to-use-multiple-client-file-sections.pa";
filename*1="tch"
RnJvbSBmZmNmNWMyOWNiZjJjYzU4ZmUwY2ZmMGVhYzUwNTgwNGIyNWQxZTU4IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDb2xpbiBIb2diZW4gPGN1cmxAcHl0aG9udGVjaC5j
by51az4KRGF0ZTogU3VuLCAxMiBGZWIgMjAxMiAxMTowMzoxMCArMDAwMApTdWJqZWN0OiBb
UEFUQ0ggMy8zXSBVcGRhdGUgdGVzdDEzMTUgdG8gdXNlIG11bHRpcGxlIDxjbGllbnQ+PGZp
bGU+IHNlY3Rpb25zCgotLS0KIHRlc3RzL2RhdGEvdGVzdDEzMTUgfCAgIDIyICsrKysrKysr
KysrKysrLS0tLS0tLS0KIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgOCBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90ZXN0cy9kYXRhL3Rlc3QxMzE1IGIvdGVzdHMv
ZGF0YS90ZXN0MTMxNQppbmRleCBjMmYxNThhLi43MmQwMWMwIDEwMDY0NAotLS0gYS90ZXN0
cy9kYXRhL3Rlc3QxMzE1CisrKyBiL3Rlc3RzL2RhdGEvdGVzdDEzMTUKQEAgLTI5LDEyICsy
OSwxOCBAQCBodHRwCiBIVFRQIFJGQzE4NjctdHlwZSBmb3JtcG9zdGluZyAtIC1GIHdpdGgg
dGhyZWUgZmlsZXMsIG9uZSB3aXRoIGV4cGxpY2l0IHR5cGUKICA8L25hbWU+CiAgPGNvbW1h
bmQ+Ci1odHRwOi8vJUhPU1RJUDolSFRUUFBPUlQvd2Uvd2FudC8xMzE1IC1GIG5hbWU9dmFs
dWUgLUYgJ2ZpbGU9QGxvZy90ZXN0MTMxNS50eHQsbG9nL3Rlc3QxMzE1LnR4dDt0eXBlPW1h
Z2ljL2NvbnRlbnQsbG9nL3Rlc3QxMzE1LnR4dCcKK2h0dHA6Ly8lSE9TVElQOiVIVFRQUE9S
VC93ZS93YW50LzEzMTUgLUYgbmFtZT12YWx1ZSAtRiAnZmlsZT1AbG9nL3Rlc3QxMzE1YS50
eHQsbG9nL3Rlc3QxMzE1Yi50eHQ7dHlwZT1tYWdpYy9jb250ZW50LGxvZy90ZXN0MTMxNWMu
dHh0JwogPC9jb21tYW5kPgogIyBXZSBjcmVhdGUgdGhpcyBmaWxlIGJlZm9yZSB0aGUgY29t
bWFuZCBpcyBpbnZva2VkIQotPGZpbGUgbmFtZT0ibG9nL3Rlc3QxMzE1LnR4dCI+Cis8Zmls
ZSBuYW1lPSJsb2cvdGVzdDEzMTVhLnR4dCI+CiBkdW1teSBkYXRhCiA8L2ZpbGU+Cis8Zmls
ZSBuYW1lPSJsb2cvdGVzdDEzMTViLnR4dCI+CittYWdpYyBkdW1teSBkYXRhCis8L2ZpbGU+
Cis8ZmlsZSBuYW1lPSJsb2cvdGVzdDEzMTVjLnR4dCI+Cittb3JlIGR1bW15IGRhdGEKKzwv
ZmlsZT4KIDwvY2xpZW50PgogCiAjIFZlcmlmeSBkYXRhIGFmdGVyIHRoZSB0ZXN0IGhhcyBi
ZWVuICJzaG90IgpAQCAtNDcsNyArNTMsNyBAQCBQT1NUIC93ZS93YW50LzEzMTUgSFRUUC8x
LjEKIFVzZXItQWdlbnQ6IGN1cmwvNy4xOC4yIChpNjg2LXBjLWxpbnV4LWdudSkgbGliY3Vy
bC83LjE4LjIgT3BlblNTTC8wLjkuN2EgaXB2NiB6bGliLzEuMS40DQogSG9zdDogJUhPU1RJ
UDolSFRUUFBPUlQNCiBBY2NlcHQ6ICovKg0KLUNvbnRlbnQtTGVuZ3RoOiA3OTUNCitDb250
ZW50LUxlbmd0aDogODA5DQogRXhwZWN0OiAxMDAtY29udGludWUNCiBDb250ZW50LVR5cGU6
IG11bHRpcGFydC9mb3JtLWRhdGE7IGJvdW5kYXJ5PS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS05ZWY4ZDYyMDU3NjMNCiANCkBAIC01OSwyMiArNjUsMjIgQEAgdmFsdWUKIENvbnRl
bnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0iZmlsZSINCiBDb250ZW50LVR5cGU6
IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LWFhYWFhYWFhYWFhYQ0KIA0KLUNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZp
bGVuYW1lPSJ0ZXN0MTMxNS50eHQiDQorQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVu
dDsgZmlsZW5hbWU9InRlc3QxMzE1YS50eHQiDQogQ29udGVudC1UeXBlOiB0ZXh0L3BsYWlu
DQogDQogZHVtbXkgZGF0YQogDQogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tOWVm
OGQ2MjA1NzYzDQotQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9
InRlc3QxMzE1LnR4dCINCitDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxl
bmFtZT0idGVzdDEzMTViLnR4dCINCiBDb250ZW50LVR5cGU6IG1hZ2ljL2NvbnRlbnQNCiAN
Ci1kdW1teSBkYXRhCittYWdpYyBkdW1teSBkYXRhCiANCiAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS05ZWY4ZDYyMDU3NjMNCi1Db250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2ht
ZW50OyBmaWxlbmFtZT0idGVzdDEzMTUudHh0Ig0KK0NvbnRlbnQtRGlzcG9zaXRpb246IGF0
dGFjaG1lbnQ7IGZpbGVuYW1lPSJ0ZXN0MTMxNWMudHh0Ig0KIENvbnRlbnQtVHlwZTogdGV4
dC9wbGFpbg0KIA0KLWR1bW15IGRhdGEKK21vcmUgZHVtbXkgZGF0YQogDQogLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tYWFhYWFhYWFhYWFhLS0NCiAtLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS05ZWY4ZDYyMDU3NjMtLQ0KLS0gCjEuNi41LjYKCg==
--------------030205040005020403060202
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
--------------030205040005020403060202--
Received on 2001-09-17