Daniel Egger provided 'nonewline=yes' support for the <stdout> section
authorDaniel Stenberg <daniel@haxx.se>
Fri, 4 Jan 2008 23:31:04 +0000 (23:31 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 4 Jan 2008 23:31:04 +0000 (23:31 +0000)
tests/FILEFORMAT
tests/runtests.pl

index 550bcb6..b29084b 100644 (file)
@@ -275,11 +275,14 @@ off the trailing newline of this given data before comparing with the one
 actually sent by the client
 Variables are substituted as in the <command> section.
 </protocol>
-<stdout [mode="text"]>
+<stdout [mode="text"] [nonewline=yes]>
 This verifies that this data was passed to stdout.
 
 Use the mode="text" attribute if the output is in text mode on platforms that
 have a text/binary difference.
+
+If 'nonewline' is set, we will cut off the trailing newline of this given data
+before comparing with the one actually received by the client
 </stdout>
 <file name="log/filename" [mode="text"]>
 The file's contents must be identical to this after the test is complete.
index 231d756..6a5f4a0 100755 (executable)
@@ -2042,6 +2042,12 @@ sub singletest {
             map s/\r\n/\n/g, @actual;
         }
 
+        if($hash{'nonewline'}) {
+            # Yes, we must cut off the final newline from the final line
+            # of the protocol data
+            chomp($validstdout[$#validstdout]);
+        }
+
         $res = compare("stdout", \@actual, \@validstdout);
         if($res) {
             return 1;