runtests: check protocol before data

When the protocol part fails, the data usually does too but the protocol
part is often more fundamental and often provide the clues you need to
fix the test case.
This commit is contained in:
Daniel Stenberg 2014-03-30 23:15:15 +02:00
parent acefed139f
commit c1f7da1570

View File

@ -3647,40 +3647,6 @@ sub singletest {
$ok .= "-"; # stdout not checked
}
if(!$replyattr{'nocheck'} && (@reply || $replyattr{'sendzero'})) {
# verify the received data
my @out = loadarray($CURLOUT);
# get the mode attribute
my $filemode=$replyattr{'mode'};
if($filemode && ($filemode eq "text") && $has_textaware) {
# text mode when running on windows: fix line endings
map s/\r\n/\n/g, @reply;
map s/\n/\r\n/g, @reply;
}
$res = compare($testnum, $testname, "data", \@out, \@reply);
if ($res) {
return 1;
}
$ok .= "d";
}
else {
$ok .= "-"; # data not checked
}
if(@upload) {
# verify uploaded data
my @out = loadarray("$LOGDIR/upload.$testnum");
$res = compare($testnum, $testname, "upload", \@out, \@upload);
if ($res) {
return 1;
}
$ok .= "u";
}
else {
$ok .= "-"; # upload not checked
}
if(@protocol) {
# Verify the sent request
my @out = loadarray($SERVERIN);
@ -3728,6 +3694,40 @@ sub singletest {
$ok .= "-"; # protocol not checked
}
if(!$replyattr{'nocheck'} && (@reply || $replyattr{'sendzero'})) {
# verify the received data
my @out = loadarray($CURLOUT);
# get the mode attribute
my $filemode=$replyattr{'mode'};
if($filemode && ($filemode eq "text") && $has_textaware) {
# text mode when running on windows: fix line endings
map s/\r\n/\n/g, @reply;
map s/\n/\r\n/g, @reply;
}
$res = compare($testnum, $testname, "data", \@out, \@reply);
if ($res) {
return 1;
}
$ok .= "d";
}
else {
$ok .= "-"; # data not checked
}
if(@upload) {
# verify uploaded data
my @out = loadarray("$LOGDIR/upload.$testnum");
$res = compare($testnum, $testname, "upload", \@out, \@upload);
if ($res) {
return 1;
}
$ok .= "u";
}
else {
$ok .= "-"; # upload not checked
}
if(@proxyprot) {
# Verify the sent proxy request
my @out = loadarray($PROXYIN);