xref: /aosp_15_r20/external/curl/tests/data/test1315 (revision 6236dae45794135f37c4eb022389c904c8b0090d)
1*6236dae4SAndroid Build Coastguard Worker<testcase>
2*6236dae4SAndroid Build Coastguard Worker# Based on tests 186 and 1053
3*6236dae4SAndroid Build Coastguard Worker<info>
4*6236dae4SAndroid Build Coastguard Worker<keywords>
5*6236dae4SAndroid Build Coastguard WorkerHTTP
6*6236dae4SAndroid Build Coastguard WorkerHTTP FORMPOST
7*6236dae4SAndroid Build Coastguard WorkerHTTP file upload
8*6236dae4SAndroid Build Coastguard Worker</keywords>
9*6236dae4SAndroid Build Coastguard Worker</info>
10*6236dae4SAndroid Build Coastguard Worker
11*6236dae4SAndroid Build Coastguard Worker# Server-side
12*6236dae4SAndroid Build Coastguard Worker<reply>
13*6236dae4SAndroid Build Coastguard Worker<data>
14*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK
15*6236dae4SAndroid Build Coastguard WorkerDate: Thu, 29 Jul 2008 14:49:00 GMT
16*6236dae4SAndroid Build Coastguard WorkerServer: test-server/fake
17*6236dae4SAndroid Build Coastguard WorkerContent-Length: 0
18*6236dae4SAndroid Build Coastguard WorkerConnection: close
19*6236dae4SAndroid Build Coastguard Worker
20*6236dae4SAndroid Build Coastguard Worker</data>
21*6236dae4SAndroid Build Coastguard Worker</reply>
22*6236dae4SAndroid Build Coastguard Worker
23*6236dae4SAndroid Build Coastguard Worker# Client-side
24*6236dae4SAndroid Build Coastguard Worker<client>
25*6236dae4SAndroid Build Coastguard Worker<features>
26*6236dae4SAndroid Build Coastguard WorkerMime
27*6236dae4SAndroid Build Coastguard Worker</features>
28*6236dae4SAndroid Build Coastguard Worker<server>
29*6236dae4SAndroid Build Coastguard Workerhttp
30*6236dae4SAndroid Build Coastguard Worker</server>
31*6236dae4SAndroid Build Coastguard Worker<name>
32*6236dae4SAndroid Build Coastguard WorkerHTTP RFC1867-type formposting - -F with three files, one with explicit type
33*6236dae4SAndroid Build Coastguard Worker</name>
34*6236dae4SAndroid Build Coastguard Worker<command>
35*6236dae4SAndroid Build Coastguard Workerhttp://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -F name=value -F 'file=@%LOGDIR/test%TESTNUMBER.txt,%LOGDIR/test%TESTNUMBER.txt;type=magic/content,%LOGDIR/test%TESTNUMBER.txt'
36*6236dae4SAndroid Build Coastguard Worker</command>
37*6236dae4SAndroid Build Coastguard Worker# We create this file before the command is invoked!
38*6236dae4SAndroid Build Coastguard Worker<file name="%LOGDIR/test%TESTNUMBER.txt">
39*6236dae4SAndroid Build Coastguard Workerdummy data
40*6236dae4SAndroid Build Coastguard Worker</file>
41*6236dae4SAndroid Build Coastguard Worker</client>
42*6236dae4SAndroid Build Coastguard Worker
43*6236dae4SAndroid Build Coastguard Worker# Verify data after the test has been "shot"
44*6236dae4SAndroid Build Coastguard Worker<verify>
45*6236dae4SAndroid Build Coastguard Worker<strip>
46*6236dae4SAndroid Build Coastguard Worker-----+\w+
47*6236dae4SAndroid Build Coastguard Worker</strip>
48*6236dae4SAndroid Build Coastguard Worker<protocol>
49*6236dae4SAndroid Build Coastguard WorkerPOST /we/want/%TESTNUMBER HTTP/1.1
50*6236dae4SAndroid Build Coastguard WorkerHost: %HOSTIP:%HTTPPORT
51*6236dae4SAndroid Build Coastguard WorkerUser-Agent: curl/%VERSION
52*6236dae4SAndroid Build Coastguard WorkerAccept: */*
53*6236dae4SAndroid Build Coastguard WorkerContent-Length: 845
54*6236dae4SAndroid Build Coastguard WorkerContent-Type: multipart/form-data; boundary=----------------------------9ef8d6205763
55*6236dae4SAndroid Build Coastguard Worker
56*6236dae4SAndroid Build Coastguard Worker------------------------------9ef8d6205763
57*6236dae4SAndroid Build Coastguard WorkerContent-Disposition: form-data; name="name"
58*6236dae4SAndroid Build Coastguard Worker
59*6236dae4SAndroid Build Coastguard Workervalue
60*6236dae4SAndroid Build Coastguard Worker------------------------------9ef8d6205763
61*6236dae4SAndroid Build Coastguard WorkerContent-Disposition: form-data; name="file"
62*6236dae4SAndroid Build Coastguard WorkerContent-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa
63*6236dae4SAndroid Build Coastguard Worker
64*6236dae4SAndroid Build Coastguard WorkerContent-Disposition: attachment; filename="test%TESTNUMBER.txt"
65*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
66*6236dae4SAndroid Build Coastguard Worker
67*6236dae4SAndroid Build Coastguard Workerdummy data
68*6236dae4SAndroid Build Coastguard Worker
69*6236dae4SAndroid Build Coastguard Worker------------------------------9ef8d6205763
70*6236dae4SAndroid Build Coastguard WorkerContent-Disposition: attachment; filename="test%TESTNUMBER.txt"
71*6236dae4SAndroid Build Coastguard WorkerContent-Type: magic/content
72*6236dae4SAndroid Build Coastguard Worker
73*6236dae4SAndroid Build Coastguard Workerdummy data
74*6236dae4SAndroid Build Coastguard Worker
75*6236dae4SAndroid Build Coastguard Worker------------------------------9ef8d6205763
76*6236dae4SAndroid Build Coastguard WorkerContent-Disposition: attachment; filename="test%TESTNUMBER.txt"
77*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
78*6236dae4SAndroid Build Coastguard Worker
79*6236dae4SAndroid Build Coastguard Workerdummy data
80*6236dae4SAndroid Build Coastguard Worker
81*6236dae4SAndroid Build Coastguard Worker------------------------------aaaaaaaaaaaa--
82*6236dae4SAndroid Build Coastguard Worker
83*6236dae4SAndroid Build Coastguard Worker------------------------------9ef8d6205763--
84*6236dae4SAndroid Build Coastguard Worker</protocol>
85*6236dae4SAndroid Build Coastguard Worker</verify>
86*6236dae4SAndroid Build Coastguard Worker</testcase>
87