# Based on test 1315 HTTP HTTP FORMPOST HTTP file upload --libcurl # Server-side HTTP/1.1 200 OK Date: Thu, 29 Jul 2008 14:49:00 GMT Server: test-server/fake Content-Length: 0 Connection: close # Client-side Mime --libcurl http --libcurl plus -F with 3 files, one with explicit type and encoder SSL_CERT_FILE http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -F name=value -F 'file=@%LOGDIR/test%TESTNUMBER.txt,%LOGDIR/test%TESTNUMBER.txt;type=magic/content;encoder=8bit,%LOGDIR/test%TESTNUMBER.txt;headers=X-testheader-1: header 1;headers=X-testheader-2: header 2' --libcurl %LOGDIR/test%TESTNUMBER.c # We create this file before the command is invoked! dummy data # Verify data after the test has been "shot" -----+\w+ POST /we/want/%TESTNUMBER HTTP/1.1%CR Host: %HOSTIP:%HTTPPORT%CR User-Agent: curl/%VERSION%CR Accept: */*%CR Content-Length: 930%CR Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR %CR ------------------------------9ef8d6205763%CR Content-Disposition: form-data; name="name"%CR %CR value%CR ------------------------------9ef8d6205763%CR Content-Disposition: form-data; name="file"%CR Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa%CR %CR Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR Content-Type: text/plain%CR %CR dummy data %CR ------------------------------9ef8d6205763%CR Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR Content-Type: magic/content%CR Content-Transfer-Encoding: 8bit%CR %CR dummy data %CR ------------------------------9ef8d6205763%CR Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR Content-Type: text/plain%CR X-testheader-1: header 1%CR X-testheader-2: header 2%CR %CR dummy data %CR ------------------------------aaaaaaaaaaaa--%CR %CR ------------------------------9ef8d6205763--%CR # CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with # configurations - just ignore them $_ = '' if /CURLOPT_SSL_VERIFYPEER/ $_ = '' if /CURLOPT_SSH_KNOWNHOSTS/ $_ = '' if /CURLOPT_HTTP_VERSION/ $_ = '' if /CURLOPT_INTERLEAVEDATA/ $_ = '' if /CURLOPT_SSLVERSION/ $_ = '' if /CURLOPT_TIMEOUT_MS/ # CURL_DOES_CONVERSION generates an extra comment. $_ = '' if /\/\* "value" \*\// %includetext %SRCDIR/data/data%TESTNUMBER.c%