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