From d29f14b9cf0d38f3887b6eadc71af16903bc7f5b Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Fri, 31 Oct 2025 00:55:13 +0100 Subject: [PATCH] tests: replace significant invisible spaces with macros To make them explicit, visible, avoid being accidentally trimmed. Also prevents Git warnings, e.g. on `git am`. Also: - runtests: add support for `%spc%` and `%tab%` macros. - test59: delete non-significant line-ending space. - spacecheck.pl: drop line-ending whitespace exception for tests. Closes #19300 --- .github/scripts/spacecheck.pl | 7 +------ docs/tests/FILEFORMAT.md | 8 ++++++++ tests/data/test1029 | 2 +- tests/data/test1070 | 2 +- tests/data/test1185 | 8 ++++---- tests/data/test136 | 2 +- tests/data/test1461 | 4 ++-- tests/data/test1654 | 2 +- tests/data/test1664 | 2 +- tests/data/test17 | 2 +- tests/data/test188 | 4 ++-- tests/data/test189 | 4 ++-- tests/data/test1940 | 8 ++++---- tests/data/test1941 | 2 +- tests/data/test1942 | 2 +- tests/data/test1944 | 2 +- tests/data/test1945 | 2 +- tests/data/test1946 | 2 +- tests/data/test1947 | 2 +- tests/data/test1955 | 2 +- tests/data/test1958 | 2 +- tests/data/test2302 | 2 +- tests/data/test2306 | 2 +- tests/data/test2400 | 2 +- tests/data/test2403 | 2 +- tests/data/test2406 | 2 +- tests/data/test2500 | 2 +- tests/data/test2503 | 2 +- tests/data/test378 | 2 +- tests/data/test4 | 4 ++-- tests/data/test421 | 2 +- tests/data/test459 | 2 +- tests/data/test46 | 8 ++++---- tests/data/test54 | 2 +- tests/data/test57 | 2 +- tests/data/test59 | 2 +- tests/data/test689 | 4 ++-- tests/data/test769 | 2 +- tests/data/test792 | 2 +- tests/data/test793 | 2 +- tests/testutil.pm | 3 +++ 41 files changed, 64 insertions(+), 58 deletions(-) diff --git a/.github/scripts/spacecheck.pl b/.github/scripts/spacecheck.pl index fbd064db3b..fc1bf8f76c 100755 --- a/.github/scripts/spacecheck.pl +++ b/.github/scripts/spacecheck.pl @@ -42,10 +42,6 @@ my @need_crlf = ( "\\.(bat|sln)\$", ); -my @space_at_eol = ( - "^tests/data/test", -); - my @non_ascii_allowed = ( '\xC3\xB6', # UTF-8 for https://codepoints.net/U+00F6 LATIN SMALL LETTER O WITH DIAERESIS ); @@ -129,8 +125,7 @@ while(my $filename = <$git_ls_files>) { push @err, "content: must use LF EOL for this file type"; } - if(!fn_match($filename, @space_at_eol) && - $content =~ /[ \t]\n/) { + if($content =~ /[ \t]\n/) { my $line; for my $l (split(/\n/, $content)) { $line++; diff --git a/docs/tests/FILEFORMAT.md b/docs/tests/FILEFORMAT.md index 91aa9a5870..cbc9221056 100644 --- a/docs/tests/FILEFORMAT.md +++ b/docs/tests/FILEFORMAT.md @@ -76,6 +76,14 @@ For example, to insert the word hello 100 times: %repeat[100 x hello]% +## Whitespace + +To add significant whitespace characters at the end of the line, or to empty +lines: + + %spc% + %tab% + ## Insert capped epoch days Mostly to test capped cookie expire dates: `%days[NUM]` inserts the number of diff --git a/tests/data/test1029 b/tests/data/test1029 index f37146a747..d019bff7b1 100644 --- a/tests/data/test1029 +++ b/tests/data/test1029 @@ -50,7 +50,7 @@ Content-Length: 62 Connection: close This server reply is for testing a simple Location: following -http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0 +http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0%spc% diff --git a/tests/data/test1070 b/tests/data/test1070 index 7f2b4fb09b..f199e71d4b 100644 --- a/tests/data/test1070 +++ b/tests/data/test1070 @@ -57,7 +57,7 @@ Expect: 100-continue Content-Length: 2313 Content-Type: application/x-www-form-urlencoded -This creates +This creates%spc% diff --git a/tests/data/test1185 b/tests/data/test1185 index 7323c59a0d..c00e982301 100644 --- a/tests/data/test1185 +++ b/tests/data/test1185 @@ -91,7 +91,7 @@ void startfunc(int a, int b) { ./%LOGDIR/code1185.c:4:82: warning: Longer than 79 columns (LONGLINE) int hello; /*------------------------------------------------------------------*/ ./%LOGDIR/code1185.c:5:4: error: Contains TAB character (TABS) - int tab; + int%tab%tab; ^ ./%LOGDIR/code1185.c:7:13: warning: func with space (SPACEBEFOREPAREN) int a = func (); @@ -118,7 +118,7 @@ void startfunc(int a, int b) { } else { ^ ./%LOGDIR/code1185.c:24:11: warning: missing space after close paren (PARENBRACE) - if(a == 2){ + if(a == 2){%spc%%spc% ^ ./%LOGDIR/code1185.c:28:14: warning: no space before semicolon (SPACESEMICOLON) func_return() ; @@ -205,10 +205,10 @@ void startfunc(int a, int b) { // CPP comment ? ^ ./%LOGDIR/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT) - +%spc% ^ ./%LOGDIR/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT) - +%spc% ^ checksrc: 0 errors and 41 warnings diff --git a/tests/data/test136 b/tests/data/test136 index 949ae2ebb2..70537719cc 100644 --- a/tests/data/test136 +++ b/tests/data/test136 @@ -30,7 +30,7 @@ FTP with user and no password USER user -PASS +PASS%spc% PWD EPSV TYPE I diff --git a/tests/data/test1461 b/tests/data/test1461 index 79b370bc18..71de31772d 100644 --- a/tests/data/test1461 +++ b/tests/data/test1461 @@ -47,8 +47,8 @@ Usage: curl [options...] This is not the full help; this menu is split into categories. Use "--help category" to get an overview of all categories, which are: -auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap, -output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls, +auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap,%spc% +output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls,%spc% upload, verbose. Use "--help all" to list all options Use "--help [option]" to view documentation for a given option diff --git a/tests/data/test1654 b/tests/data/test1654 index 5659277ce3..3b88236441 100644 --- a/tests/data/test1654 +++ b/tests/data/test1654 @@ -27,7 +27,7 @@ h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 # a comment h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0 h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0 - h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0 +%tab%h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0 # also a comment bad example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 rubbish diff --git a/tests/data/test1664 b/tests/data/test1664 index b36ef3597d..ea126a3be7 100644 --- a/tests/data/test1664 +++ b/tests/data/test1664 @@ -68,7 +68,7 @@ curlx_str_singlespace 3: ("b") 5, line 0 4: ("\") 5, line 0 5: (" ") 0, line 1 -6: (" ") 5, line 0 +6: ("%tab%") 5, line 0 7: (" ") 5, line 0 8: ("") 5, line 0 diff --git a/tests/data/test17 b/tests/data/test17 index 97a37d85cf..c8c0a19b77 100644 --- a/tests/data/test17 +++ b/tests/data/test17 @@ -46,7 +46,7 @@ request MOOO MOOO /that.site.com/%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT -User-Agent: agent007 license to drill +User-Agent: agent007 license to drill%tab% Accept: */* diff --git a/tests/data/test188 b/tests/data/test188 index 43fa70e726..2fca251129 100644 --- a/tests/data/test188 +++ b/tests/data/test188 @@ -19,7 +19,7 @@ Content-Length: 3 OK -HTTP/1.1 200 OK +HTTP/1.1 200 OK%spc% Connection: close Content-Length: 15 Content-Range: bytes 50- @@ -32,7 +32,7 @@ HTTP/1.1 301 OK swsbounce Location: /%TESTNUMBER Content-Length: 3 -HTTP/1.1 200 OK +HTTP/1.1 200 OK%spc% Connection: close Content-Length: 15 Content-Range: bytes 50- diff --git a/tests/data/test189 b/tests/data/test189 index 6ca4b66e17..d3cd0f2b2c 100644 --- a/tests/data/test189 +++ b/tests/data/test189 @@ -16,7 +16,7 @@ Content-Length: 3 OK -HTTP/1.1 200 OK +HTTP/1.1 200 OK%spc% Connection: close Content-Length: 15 @@ -28,7 +28,7 @@ HTTP/1.1 301 OK swsbounce Location: /%TESTNUMBER Content-Length: 3 -HTTP/1.1 200 OK +HTTP/1.1 200 OK%spc% Connection: close Content-Length: 15 diff --git a/tests/data/test1940 b/tests/data/test1940 index f4c6dd1a1a..d15bf1d5b6 100644 --- a/tests/data/test1940 +++ b/tests/data/test1940 @@ -10,10 +10,10 @@ curl_easy_header HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Fold: is - folding a + folding a%repeat[5 x ]% line Content-Length: 0 Set-Cookie: onecookie=data; @@ -59,8 +59,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - Set-Cookie == secondcookie=2data; (1/3) - Set-Cookie == cookie3=data3; (2/3) Fold == is folding a line - Blank == - Blank2 == + Blank ==%spc% + Blank2 ==%spc% diff --git a/tests/data/test1941 b/tests/data/test1941 index fe3f1de391..9ef4b3b1e4 100644 --- a/tests/data/test1941 +++ b/tests/data/test1941 @@ -11,7 +11,7 @@ CONNECT HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1942 b/tests/data/test1942 index 9079800990..7729ff80e6 100644 --- a/tests/data/test1942 +++ b/tests/data/test1942 @@ -15,7 +15,7 @@ Server: maybe different HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1944 b/tests/data/test1944 index ad0920d4ae..a5c1673c79 100644 --- a/tests/data/test1944 +++ b/tests/data/test1944 @@ -10,7 +10,7 @@ curl_easy_header HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1945 b/tests/data/test1945 index 86fa147adc..1b30965f60 100644 --- a/tests/data/test1945 +++ b/tests/data/test1945 @@ -11,7 +11,7 @@ CONNECT HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1946 b/tests/data/test1946 index 20854e16ba..35ca1672bd 100644 --- a/tests/data/test1946 +++ b/tests/data/test1946 @@ -10,7 +10,7 @@ curl_easy_header HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1947 b/tests/data/test1947 index f159e4d51c..49e28c14aa 100644 --- a/tests/data/test1947 +++ b/tests/data/test1947 @@ -10,7 +10,7 @@ curl_easy_nextheader HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1955 b/tests/data/test1955 index 2266529bbe..be23a9d628 100644 --- a/tests/data/test1955 +++ b/tests/data/test1955 @@ -66,7 +66,7 @@ Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, S X-Xxx-Date: 19700101T000000Z test3: 1234 test2: -test_space: t s m end +test_space: t%tab%s m%tab% end%repeat[4 x ]% tesMixCase: MixCase diff --git a/tests/data/test1958 b/tests/data/test1958 index 239a11eccb..23aa849444 100644 --- a/tests/data/test1958 +++ b/tests/data/test1958 @@ -64,7 +64,7 @@ GET /aws_sigv4/testapi/test HTTP/1.1 Host: exam.ple.com:9000 Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff X-Xxx-Date: 19700101T000000Z -X-Xxx-Content-Sha256: arbitrary +X-Xxx-Content-Sha256: %tab%arbitrary%spc% diff --git a/tests/data/test2302 b/tests/data/test2302 index 117b5a7ebf..0b3a7d524e 100644 --- a/tests/data/test2302 +++ b/tests/data/test2302 @@ -66,7 +66,7 @@ Connection: Upgrade %hex[%8a%808321]hex% -68 65 6c 6c 6f +68 65 6c 6c 6f%spc% RECFLAGS: 1 diff --git a/tests/data/test2306 b/tests/data/test2306 index 0f7bd541df..c6bbdb0f2b 100644 --- a/tests/data/test2306 +++ b/tests/data/test2306 @@ -24,7 +24,7 @@ Funny-head: yesyes HTTP/1.1 200 OK swsclose - Access-Control-Allow-Origin: * +%tab%Access-Control-Allow-Origin: * Connection: Keep-Alive Content-Type: text/html; charset=utf-8 Date: Wed, 10 May 2023 14:58:08 GMT diff --git a/tests/data/test2400 b/tests/data/test2400 index 9d53f68b96..cb68a11e21 100644 --- a/tests/data/test2400 +++ b/tests/data/test2400 @@ -50,7 +50,7 @@ HTTP/2 GET over HTTPS # Verify data after the test has been "shot" -HTTP/2 200 +HTTP/2 200%spc% date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test2403 b/tests/data/test2403 index 5901866265..dec03cd51c 100644 --- a/tests/data/test2403 +++ b/tests/data/test2403 @@ -51,7 +51,7 @@ HTTP/2 GET using %{header_json} # Verify data after the test has been "shot" -HTTP/2 200 +HTTP/2 200%spc% date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test2406 b/tests/data/test2406 index bc6cc41ad2..a6db9233ef 100644 --- a/tests/data/test2406 +++ b/tests/data/test2406 @@ -49,7 +49,7 @@ HTTP/2 over HTTPS with -f # Verify data after the test has been "shot" -HTTP/2 404 +HTTP/2 404%spc% date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test2500 b/tests/data/test2500 index 8bcb5e0c62..ad6f0b7e1a 100644 --- a/tests/data/test2500 +++ b/tests/data/test2500 @@ -58,7 +58,7 @@ Accept: */* -HTTP/3 200 +HTTP/3 200%spc% date: Tue, 09 Nov 2010 14:49:00 GMT last-modified: Tue, 13 Jun 2000 12:10:00 GMT etag: "21025-dc7-39462498" diff --git a/tests/data/test2503 b/tests/data/test2503 index f95486ce0f..28a1f973b5 100644 --- a/tests/data/test2503 +++ b/tests/data/test2503 @@ -50,7 +50,7 @@ HTTP/3 header-api # Verify data after the test has been "shot" -HTTP/3 200 +HTTP/3 200%spc% date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test378 b/tests/data/test378 index 9777b878b9..e15e97e6e0 100644 --- a/tests/data/test378 +++ b/tests/data/test378 @@ -29,7 +29,7 @@ Reject using -T and -d at once 2 -Warning: You can only select one HTTP request method! You asked for both PUT +Warning: You can only select one HTTP request method! You asked for both PUT%spc% Warning: (-T, --upload-file) and POST (-d, --data). diff --git a/tests/data/test4 b/tests/data/test4 index 06012cca86..4f57f8dd62 100644 --- a/tests/data/test4 +++ b/tests/data/test4 @@ -44,7 +44,7 @@ User-Agent: curl/%VERSION extra-header: here Accept: replaced X-Custom-Header: -X-Test: foo; +X-Test: foo;%spc% X-Test2: foo; GET /%TESTNUMBER HTTP/1.1 @@ -53,7 +53,7 @@ User-Agent: curl/%VERSION extra-header: here Accept: replaced X-Custom-Header: -X-Test: foo; +X-Test: foo;%spc% X-Test2: foo; diff --git a/tests/data/test421 b/tests/data/test421 index 2c79c1f8f1..b9483e6ba0 100644 --- a/tests/data/test421 +++ b/tests/data/test421 @@ -21,7 +21,7 @@ referrer-policy: strict-origin-when-cross-origin access-control-allow-methods: GET, POST, PUT, DELETE, OPTIONS access-control-max-age: 1728000 access-control-allow-headers: Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS -access-control-expose-headers: +access-control-expose-headers:%spc% vary: Accept etag: W/"2678f9ab2ba550d164e7cc014aefd31e" cache-control: max-age=0, private, must-revalidate diff --git a/tests/data/test459 b/tests/data/test459 index 198e67d2a3..d1f1ba261c 100644 --- a/tests/data/test459 +++ b/tests/data/test459 @@ -56,7 +56,7 @@ Content-Type: application/x-www-form-urlencoded arg -Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may +Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may%spc% Warning: cause side-effects. Consider double quotes. diff --git a/tests/data/test46 b/tests/data/test46 index 30d88b973d..d426503fe7 100644 --- a/tests/data/test46 +++ b/tests/data/test46 @@ -65,7 +65,7 @@ www.loser.com FALSE / FALSE 2139150993 UID 99 domain..tld FALSE / FALSE 2139150993 mooo indeed #HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2 %endif -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%tab% cookies @@ -88,18 +88,18 @@ Cookie: empty=; mooo2=indeed2; mooo=indeed # This file was generated by libcurl! Edit at your own risk. domain..tld FALSE /want/ FALSE 0 simplyhuge %repeat[3998 x z]% -domain..tld FALSE / FALSE 0 justaname +domain..tld FALSE / FALSE 0 justaname%tab% domain..tld FALSE / FALSE 0 ASPSESSIONIDQGGQQSJJ GKNBDIFAAOFDPDAIEAKDIBKE domain..tld FALSE / FALSE 0 ckySession temporary domain..tld FALSE / FALSE %days[400] ckyPersistent permanent %if large-time -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%tab% #HttpOnly_domain..tld FALSE /want FALSE 22139150993 mooo2 indeed2 domain..tld FALSE / FALSE 22139150993 mooo indeed www.loser.com FALSE / FALSE 22139150993 UID 99 www.fake.come FALSE / FALSE 22147483647 cookiecliente si %else -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%tab% #HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2 domain..tld FALSE / FALSE 2139150993 mooo indeed www.loser.com FALSE / FALSE 2139150993 UID 99 diff --git a/tests/data/test54 b/tests/data/test54 index 478e52a32c..c0be2d624e 100644 --- a/tests/data/test54 +++ b/tests/data/test54 @@ -11,7 +11,7 @@ followlocation HTTP/1.1 302 This is a weirdo text message swsclose Connection: close -Location: +Location:%spc% This server reply is for testing diff --git a/tests/data/test57 b/tests/data/test57 index d3360096b9..a28d6321e2 100644 --- a/tests/data/test57 +++ b/tests/data/test57 @@ -12,7 +12,7 @@ HTTP GET HTTP/1.1 200 OK swsclose Funny-head: yesyes -Content-Type: text/html; charset=ISO-8859-4 +Content-Type: text/html; charset=ISO-8859-4%repeat[3 x ]% diff --git a/tests/data/test59 b/tests/data/test59 index 6ccb1ce37f..4211b4e6d2 100644 --- a/tests/data/test59 +++ b/tests/data/test59 @@ -13,7 +13,7 @@ HTTP/1.0 200 OK swsclose Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake -hej +hej diff --git a/tests/data/test689 b/tests/data/test689 index 61e57fce4a..141e92a9e6 100644 --- a/tests/data/test689 +++ b/tests/data/test689 @@ -11,9 +11,9 @@ OPTIONS # Server-side -RTSP/1.0 786 +RTSP/1.0 786%repeat[10 x ]% -RTSP/ +RTSP/%repeat[10 x ]% diff --git a/tests/data/test769 b/tests/data/test769 index 773d741e3f..189bf95d81 100644 --- a/tests/data/test769 +++ b/tests/data/test769 @@ -16,7 +16,7 @@ Server: test-server/fake Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT ETag: "21025-dc7-39462498" Accept-Ranges: bytes -Content-Length: 6 +Content-Length: 6%repeat[5 x ]% Connection: close Content-Type: text/html Funny-head: yesyes diff --git a/tests/data/test792 b/tests/data/test792 index a7656e4781..b3630b5058 100644 --- a/tests/data/test792 +++ b/tests/data/test792 @@ -36,7 +36,7 @@ machine %HOSTIP login username password%hex[%00]hex% hello USER username -PASS +PASS%spc% PWD EPSV TYPE I diff --git a/tests/data/test793 b/tests/data/test793 index ad68a0f4e1..3a3e16e087 100644 --- a/tests/data/test793 +++ b/tests/data/test793 @@ -36,7 +36,7 @@ machine %HOSTIP login username "password"%hex[%00]hex% hello USER username -PASS +PASS%spc% PWD EPSV TYPE I diff --git a/tests/testutil.pm b/tests/testutil.pm index 3477d5bb57..92f031ded3 100644 --- a/tests/testutil.pm +++ b/tests/testutil.pm @@ -147,6 +147,9 @@ sub subbase64 { $$thing =~ s/%%DAYS%%/%alternatives[$d,$d2]/; } + $$thing =~ s/%spc%/ /g; # space + $$thing =~ s/%tab%/\t/g; # horizontal tab + # include a file $$thing =~ s/%include ([^%]*)%[\n\r]+/includefile($1)/ge; } -- 2.47.3