Add test scenario chunked-transfer-encoding
[privoxy.git] / tests / cts / chunked-transfer-encoding / data / test29
diff --git a/tests/cts/chunked-transfer-encoding/data/test29 b/tests/cts/chunked-transfer-encoding/data/test29
new file mode 100644 (file)
index 0000000..c01ee62
--- /dev/null
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked transfer encoding
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK\r
+Date: Thu, 22 Jul 2010 11:22:33 GMT\r
+Connection: keep-alive\r
+Content-Type: text/html\r
+Transfer-Encoding: chunked\r
+\r
+FE\r
+%repeat[253 x A]%
+\r
+FB\r
+%repeat[50 x 0%0d%0a%0d%0a]%
+\r
+0\r
+\r
+</data>
+<data1>
+HTTP/1.1 200 OK\r
+Date: Thu, 22 Jul 2010 11:22:33 GMT\r
+Connection: close\r
+X-Connection: swsclose\r
+Content-Type: text/html\r
+\r
+Here's your unchunked data.
+</data1>
+# The write size is chosen so that Privoxy's second read
+# gets data that ends in 0\r\n\r\n but does not actually
+# contain the last chunk.
+<servercmd>
+writesize: 306
+writedelay: 100
+</servercmd>
+</reply>
+
+<client>
+<server>
+http
+</server>
+<name>
+Chunked transfer encoding - Chunk that contains lots of potential "last-chunks" as data. Filtering disabled.
+</name>
+<features>
+proxy
+</features>
+# Set a custom User-Agent so the request size does
+# not depend on whether or not curl is a debug build.
+<command>
+--user-agent "Blafasel/1 beta" --raw http://%HOSTIP:%HTTPPORT/no-filter/chunked-content/%TESTNUMBER0000 --max-time 2 --raw http://%HOSTIP:%HTTPPORT/no-filter/unchunked-content/%TESTNUMBER0001
+</command>
+</client>
+
+<verify>
+<protocol>
+GET /no-filter/chunked-content/%TESTNUMBER0000 HTTP/1.1\r
+Host: %HOSTIP:%HTTPPORT\r
+User-Agent: Blafasel/1 beta\r
+Accept: */*\r
+\r
+GET /no-filter/unchunked-content/%TESTNUMBER0001 HTTP/1.1\r
+Host: %HOSTIP:%HTTPPORT\r
+User-Agent: Blafasel/1 beta\r
+Accept: */*\r
+\r
+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>