Imported Upstream version 7.59.0
[platform/upstream/curl.git] / tests / data / test1052
1 <testcase>
2 <info>
3 <keywords>
4 HTTP
5 HTTP PUT
6 followlocation
7 </keywords>
8
9 </info>
10 # Server-side
11 <reply>
12 <data>
13 HTTP/1.0 301 Redirect swsclose
14 Date: Thu, 29 Jul 2008 14:49:00 GMT
15 Server: test-server/fake
16 Location: data/10520002.txt?coolsite=yes
17 Content-Length: 0
18 Connection: close
19
20 </data>
21 <data2>
22 HTTP/1.0 200 Followed here fine swsclose
23 Date: Thu, 29 Jul 2008 14:49:00 GMT
24 Server: test-server/fake
25 Content-Length: 51
26
27 If this is received, the location following worked
28 </data2>
29 <datacheck>
30 HTTP/1.0 301 Redirect swsclose
31 Date: Thu, 29 Jul 2008 14:49:00 GMT
32 Server: test-server/fake
33 Location: data/10520002.txt?coolsite=yes
34 Content-Length: 0
35 Connection: close
36
37 HTTP/1.0 200 Followed here fine swsclose
38 Date: Thu, 29 Jul 2008 14:49:00 GMT
39 Server: test-server/fake
40 Content-Length: 51
41
42 If this is received, the location following worked
43 </datacheck>
44 </reply>
45
46 # Client-side
47 <client>
48 <server>
49 http
50 </server>
51  <name>
52 HTTP 1.0 PUT with Location: following
53  </name>
54  <command>
55 http://%HOSTIP:%HTTPPORT/want/1052 -0 -L -T log/test1052.txt
56 </command>
57 <file name="log/test1052.txt">
58 Weird
59      file
60          to
61    upload
62 for
63    testing
64 the
65    PUT
66       feature
67 </file>
68 </client>
69
70 # Verify data after the test has been "shot"
71 <verify>
72 <strip>
73 ^User-Agent:.*
74 </strip>
75
76 # The primary reason libcurl sends the data part twice in this test is that
77 # the test HTTP server is blocking until it has read the entire request,
78 # including the full request-body before it responds. So in this test the
79 # server says 301 and 200 _after_ the entire PUT body has been sent.
80 <protocol>
81 PUT /want/1052 HTTP/1.0
82 Host: %HOSTIP:%HTTPPORT
83 Accept: */*
84 Content-Length: 78
85
86 Weird
87      file
88          to
89    upload
90 for
91    testing
92 the
93    PUT
94       feature
95 PUT /want/data/10520002.txt?coolsite=yes HTTP/1.0
96 Host: %HOSTIP:%HTTPPORT
97 Accept: */*
98 Content-Length: 78
99
100 Weird
101      file
102          to
103    upload
104 for
105    testing
106 the
107    PUT
108       feature
109 </protocol>
110 </verify>
111 </testcase>