diff options
author | Fabian Keil <fk@fabiankeil.de> | 2014-06-16 16:03:00 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2021-02-09 08:16:40 +0100 |
commit | 203dc007188b847bed698f9bca904365948d4cfb (patch) | |
tree | 2f3ff3cb1371d7db74d0bc7abe15a067d8371c8a /tests | |
parent | 8ad31a8c6eb3f19997d66c470defa12a4882970f (diff) | |
download | curl-203dc007188b847bed698f9bca904365948d4cfb.tar.gz |
runtests.pl: add %TESTNUMBER variable to make copying tests more convenient
Diffstat (limited to 'tests')
-rw-r--r-- | tests/FILEFORMAT.md | 1 | ||||
-rw-r--r-- | tests/data/Makefile.inc | 2 | ||||
-rw-r--r-- | tests/data/test1183 | 48 | ||||
-rwxr-xr-x | tests/runtests.pl | 10 |
4 files changed, 56 insertions, 5 deletions
diff --git a/tests/FILEFORMAT.md b/tests/FILEFORMAT.md index 41325ed66..ec0dc4815 100644 --- a/tests/FILEFORMAT.md +++ b/tests/FILEFORMAT.md @@ -149,6 +149,7 @@ Available substitute variables include: - `%SSHPORT` - Port number of the SCP/SFTP server - `%SSHSRVMD5` - MD5 of SSH server's public key - `%SSH_PWD` - Current directory friendly for the SSH server +- `%TESTNUMBER` - Number of the test case - `%TFTP6PORT` - IPv6 port number of the TFTP server - `%TFTPPORT` - Port number of the TFTP server - `%USER` - Login ID of the user running the test diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc index 5b60d1606..464eab2a9 100644 --- a/tests/data/Makefile.inc +++ b/tests/data/Makefile.inc @@ -137,7 +137,7 @@ test1144 test1145 test1146 test1147 test1148 test1149 test1150 test1151 \ test1152 test1153 test1154 test1155 test1156 test1157 test1158 test1159 \ test1160 test1161 test1162 test1163 test1164 test1165 test1166 test1167 \ test1168 test1169 test1170 test1171 test1172 test1173 test1174 test1175 \ -test1176 test1177 test1178 test1179 test1180 test1181 test1182 \ +test1176 test1177 test1178 test1179 test1180 test1181 test1182 test1183 \ \ test1188 \ \ diff --git a/tests/data/test1183 b/tests/data/test1183 new file mode 100644 index 000000000..d8309e6ad --- /dev/null +++ b/tests/data/test1183 @@ -0,0 +1,48 @@ +<testcase> +<info> +<keywords> +HTTP +HTTP GET +</keywords> +</info> + +# Server-side +<reply> +<data> +HTTP/1.1 200 OK
+Server: Blafasel/5.0
+Date: Sat, 16 Jan 2021 14:48:30 GMT
+Content-Length: 12
+
+Bla bla bla +</data> + +</reply> + +# Client-side +<client> +<server> +http +</server> +<features> +proxy +</features> + <name> +%TESTNUMBER used instead of actual test number + </name> + <command> +http://%HOSTIP:%HTTPPORT/%TESTNUMBER +</command> +</client> + +# Verify that the %TESTNUMBER has been resolved to 1183 +<verify> +<protocol> +GET /1183 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+User-Agent: curl/%VERSION
+Accept: */*
+
+</protocol> +</verify> +</testcase> diff --git a/tests/runtests.pl b/tests/runtests.pl index e836e9fa2..e7ed435bc 100755 --- a/tests/runtests.pl +++ b/tests/runtests.pl @@ -3248,7 +3248,7 @@ sub checksystem { # a command, in either case passed by reference # sub subVariables { - my ($thing, $prefix) = @_; + my ($thing, $testnum, $prefix) = @_; if(!$prefix) { $prefix = "%"; @@ -3304,6 +3304,7 @@ sub subVariables { $$thing =~ s/${prefix}PWD/$pwd/g; $$thing =~ s/${prefix}POSIX_PWD/$posix_pwd/g; $$thing =~ s/${prefix}VERSION/$VERSION/g; + $$thing =~ s/${prefix}TESTNUMBER/$testnum/g; my $file_pwd = $pwd; if($file_pwd !~ /^\//) { @@ -3447,6 +3448,7 @@ sub timestampskippedevents { # etc. Returns the processed version of the array sub prepro { + my $testnum = shift; my (@entiretest) = @_; my $show = 1; my @out; @@ -3473,7 +3475,7 @@ sub prepro { next; } if($show) { - subVariables(\$s, "%"); + subVariables(\$s, $testnum, "%"); subBase64(\$s); subNewlines(\$s) if($has_hyper); push @out, $s; @@ -3666,7 +3668,7 @@ sub singletest { my @entiretest = fulltest(); my $otest = "log/test$testnum"; - @entiretest = prepro(@entiretest); + @entiretest = prepro($testnum, @entiretest); # save the new version open(D, ">$otest"); @@ -5691,7 +5693,7 @@ sub disabledtests { # preprocess the input to make conditionally disabled tests depending # on variables - my @pp = prepro(@input); + my @pp = prepro(0, @input); for my $t (@pp) { if($t =~ /(\d+)/) { my ($n) = $1; |