Annotation of embedaddon/curl/tests/data/test1402, revision 1.1.1.1
1.1 misho 1: <testcase>
2: <info>
3: <keywords>
4: HTTP
5: HTTP POST
6: --libcurl
7: </keywords>
8: </info>
9:
10: # Server-side
11: <reply>
12: <data>
13: HTTP/1.1 200 OK
14: Date: Thu, 29 Jul 2008 14:49:00 GMT
15: Server: test-server/fake
16: Content-Length: 0
17: Content-Type: text/plain
18: Connection: close
19:
20: </data>
21: </reply>
22:
23: # Client-side
24: <client>
25: <server>
26: http
27: </server>
28: <name>
29: --libcurl for simple POST
30: </name>
31: <setenv>
32: SSL_CERT_FILE=
33: </setenv>
34: <command>
35: http://%HOSTIP:%HTTPPORT/we/want/1402 --libcurl log/test1402.c -d "foo=bar" -d "baz=quux"
36: </command>
37: </client>
38:
39: # Verify data after the test has been "shot"
40: <verify>
41: <strip>
42: ^User-Agent:.*
43: </strip>
44: <protocol nonewline="yes">
45: POST /we/want/1402 HTTP/1.1
46: User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4
47: Host: %HOSTIP:%HTTPPORT
48: Accept: */*
49: Content-Length: 16
50: Content-Type: application/x-www-form-urlencoded
51:
52: foo=bar&baz=quux
53: </protocol>
54: <stripfile>
55: # curl's default user-agent varies with version, libraries etc.
56: s/(USERAGENT, \")[^\"]+/${1}stripped/
57: # CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
58: # configurations - just ignore them
59: $_ = '' if /CURLOPT_SSL_VERIFYPEER/
60: $_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
61: $_ = '' if /CURLOPT_HTTP_VERSION/
62: $_ = '' if /CURLOPT_INTERLEAVEDATA/
63: </stripfile>
64: <file name="log/test1402.c" mode="text">
65: /********* Sample code generated by the curl command line tool **********
66: * All curl_easy_setopt() options are documented at:
67: * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
68: ************************************************************************/
69: #include <curl/curl.h>
70:
71: int main(int argc, char *argv[])
72: {
73: CURLcode ret;
74: CURL *hnd;
75:
76: hnd = curl_easy_init();
77: curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
78: curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1402");
79: curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "foo=bar&baz=quux");
80: curl_easy_setopt(hnd, CURLOPT_POSTFIELDSIZE_LARGE, (curl_off_t)16);
81: curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
82: curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
83: curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
84: curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
85:
86: /* Here is a list of options the curl code used that cannot get generated
87: as source easily. You may select to either not use them or implement
88: them yourself.
89:
90: CURLOPT_WRITEDATA set to a objectpointer
91: CURLOPT_WRITEFUNCTION set to a functionpointer
92: CURLOPT_READDATA set to a objectpointer
93: CURLOPT_READFUNCTION set to a functionpointer
94: CURLOPT_SEEKDATA set to a objectpointer
95: CURLOPT_SEEKFUNCTION set to a functionpointer
96: CURLOPT_ERRORBUFFER set to a objectpointer
97: CURLOPT_STDERR set to a objectpointer
98: CURLOPT_DEBUGFUNCTION set to a functionpointer
99: CURLOPT_DEBUGDATA set to a objectpointer
100: CURLOPT_HEADERFUNCTION set to a functionpointer
101: CURLOPT_HEADERDATA set to a objectpointer
102:
103: */
104:
105: ret = curl_easy_perform(hnd);
106:
107: curl_easy_cleanup(hnd);
108: hnd = NULL;
109:
110: return (int)ret;
111: }
112: /**** End of sample code ****/
113: </file>
114: </verify>
115: </testcase>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>