mirror of
https://github.com/curl/curl.git
synced 2026-06-13 18:35:36 +03:00
... even though they use the curl option "--resolve". This makes it more convenient to choose or skip the tests. For example Privoxy's cts test framework relies on the "--resolve" keyword when executing the "upstream-tests" scenario to skip curl tests that aren't expected to work when the requests are made through Privoxy. While some of the modified tests are already skipped for other reasons through other means when testing Privoxy, it's good to be consistent. Closes #21930
136 lines
5.6 KiB
XML
136 lines
5.6 KiB
XML
<?xml version="1.0" encoding="US-ASCII"?>
|
|
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
cookies
|
|
cookiejar
|
|
--resolve
|
|
</keywords>
|
|
</info>
|
|
# Server-side
|
|
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 200 OK%CR
|
|
Date: Tue, 09 Nov 2010 14:49:00 GMT%CR
|
|
Server: test-server/fake%CR
|
|
Content-Length: 4%CR
|
|
Content-Type: text/html%CR
|
|
Funny-head: yesyes%CR
|
|
Set-Cookie:
|
|
Set-Cookie: ;
|
|
Set-Cookie: blankdomain=sure; domain=; path=/
|
|
Set-Cookie: foobar=name; domain=anything.com; path=/ ; secure%CR
|
|
Set-Cookie:ismatch=this ; domain=test31.curl; path=/silly/%CR
|
|
Set-Cookie:ISMATCH=this ; domain=test31.curl; path=/silly/%CR
|
|
Set-Cookie: overwrite=this ; domain=test31.curl; path=/overwrite/%CR
|
|
Set-Cookie: overwrite=this2 ; domain=test31.curl; path=/overwrite%CR
|
|
Set-Cookie: sec1value=secure1 ; domain=test31.curl; path=/secure1/ ; secure%CR
|
|
Set-Cookie: sec2value=secure2 ; domain=test31.curl; path=/secure2/ ; secure%CR
|
|
Set-Cookie: sec3value=secure3 ; domain=test31.curl; path=/secure3/ ; secure%CR
|
|
Set-Cookie: sec4value=secure4 ; secure; domain=test31.curl; path=/secure4/ ; %CR
|
|
Set-Cookie: sec5value=secure5 ; secure; domain=test31.curl; path=/secure5/ ; %CR
|
|
Set-Cookie: sec6value=secure6 ; secure ; domain=test31.curl; path=/secure6/ ; %CR
|
|
Set-Cookie: sec7value=secure7 ; secure ; domain=test31.curl; path=/secure7/ ; %CR
|
|
Set-Cookie: sec8value=secure8 ; secure ; domain=test31.curl; path=/secure8/ ; %CR
|
|
Set-Cookie: secure=very1 ; secure; domain=test31.curl; path=/secure9/; %CR
|
|
Set-Cookie: httpo1=value1 ; domain=test31.curl; path=/p1/; httponly%CR
|
|
Set-Cookie: httpo2=value2 ; domain=test31.curl; path=/p2/; httponly%CR
|
|
Set-Cookie: httpo3=value3 ; httponly; domain=test31.curl; path=/p3/;%CR
|
|
Set-Cookie: httpo4=value4 ; httponly; domain=test31.curl; path=/p4/; %CR
|
|
Set-Cookie: httponly=myvalue1 ; domain=test31.curl; path=/p4/; httponly%CR
|
|
Set-Cookie: httpandsec=myvalue2 ; domain=test31.curl; path=/p4/; httponly; secure%CR
|
|
Set-Cookie: httpandsec2=myvalue3; domain=test31.curl; path=/p4/; httponly; secure%CR
|
|
Set-Cookie: httpandsec3=myvalue4 ; domain=test31.curl; path=/p4/; httponly; secure%CR
|
|
Set-Cookie: httpandsec4=myvalue5 ; domain=test31.curl; path=/p4/; httponly; secure%CR
|
|
Set-Cookie: httpandsec5=myvalue6 ; domain=test31.curl; path=/p4/; secure; httponly%CR
|
|
Set-Cookie: httpandsec6=myvalue7 ; domain=test31.curl; path=/p4/; secure; httponly%CR
|
|
Set-Cookie: httpandsec7=myvalue8 ; domain=test31.curl; path=/p4/; secure; httponly%CR
|
|
Set-Cookie: httpandsec8=myvalue9; domain=test31.curl; path=/p4/; secure; httponly%CR
|
|
Set-Cookie: partmatch=present; domain=test31.curl ; path=/;%CR
|
|
Set-Cookie:eat=this; domain=moo.foo.moo;%CR
|
|
Set-Cookie: eat=this-too; domain=.foo.moo;%CR
|
|
Set-Cookie: nodomainnovalue%CR
|
|
%if large-time
|
|
Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2525%CR
|
|
Set-Cookie: novalue; domain=reallysilly%CR
|
|
Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2525%CR
|
|
Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2525%CR
|
|
%else
|
|
Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2037%CR
|
|
Set-Cookie: novalue; domain=reallysilly%CR
|
|
Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030%CR
|
|
Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030%CR
|
|
%endif
|
|
Set-Cookie: magic=yessir; path=/silly/; HttpOnly%CR
|
|
Set-Cookie: blexp=yesyes; domain=test31.curl; domain=test31.curl; expiry=totally bad;%CR
|
|
Set-Cookie: partialip=nono; domain=.0.0.1;%CR
|
|
Set-Cookie: withspaces= yes within and around ;%CR
|
|
Set-Cookie: withspaces2 =before equals;%CR
|
|
Set-Cookie: prespace= yes before;%CR
|
|
Set-Cookie: securewithspace=after ; secure %CR
|
|
Set-Cookie: %hex[%c3%82%c2%b3%c3%83%5c%78%39%32%c3%83%5c%78%39%61%c3%83%5c%78%38%64%c3%83%5c%78%39%37]hex%=%96%A6g%9Ay%B0%A5g%A7tm%7C%95%9A
|
|
%CR
|
|
boo
|
|
</data>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP with weirdly formatted cookies and cookiejar storage
|
|
</name>
|
|
# Explicitly set the time zone to a known good one, in case the user is
|
|
# using one of the 'right' zones that take into account leap seconds
|
|
# which causes the cookie expiry times to be different.
|
|
<setenv>
|
|
TZ=GMT
|
|
</setenv>
|
|
<command>
|
|
http://test31.curl:%HTTPPORT/we/want/%TESTNUMBER -b none -c %LOGDIR/jar%TESTNUMBER.txt --resolve test31.curl:%HTTPPORT:127.0.0.1
|
|
</command>
|
|
<features>
|
|
cookies
|
|
local-http
|
|
</features>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<protocol crlf="headers">
|
|
GET /we/want/%TESTNUMBER HTTP/1.1
|
|
Host: test31.curl:%HTTPPORT
|
|
User-Agent: curl/%VERSION
|
|
Accept: */*
|
|
|
|
</protocol>
|
|
<file name="%LOGDIR/jar%TESTNUMBER.txt" mode="text">
|
|
# Netscape HTTP Cookie File
|
|
# https://curl.se/docs/http-cookies.html
|
|
# This file was generated by libcurl! Edit at your own risk.
|
|
|
|
test31.curl FALSE /we/want FALSE 0 %hex[%c3%82%c2%b3%c3%83%5c%78%39%32%c3%83%5c%78%39%61%c3%83%5c%78%38%64%c3%83%5c%78%39%37]hex% %96%A6g%9Ay%B0%A5g%A7tm%7C%95%9A
|
|
test31.curl FALSE /we/want FALSE 0 prespace yes before
|
|
test31.curl FALSE /we/want FALSE 0 withspaces2 before equals
|
|
test31.curl FALSE /we/want FALSE 0 withspaces yes within and around
|
|
.test31.curl TRUE /we/want FALSE 0 blexp yesyes
|
|
#HttpOnly_test31.curl FALSE /silly FALSE 0 magic yessir
|
|
test31.curl FALSE /we/want FALSE %days[400] nodomain value
|
|
.test31.curl TRUE / FALSE 0 partmatch present
|
|
#HttpOnly_.test31.curl TRUE /p4 FALSE 0 httponly myvalue1
|
|
#HttpOnly_.test31.curl TRUE /p4 FALSE 0 httpo4 value4
|
|
#HttpOnly_.test31.curl TRUE /p3 FALSE 0 httpo3 value3
|
|
#HttpOnly_.test31.curl TRUE /p2 FALSE 0 httpo2 value2
|
|
#HttpOnly_.test31.curl TRUE /p1 FALSE 0 httpo1 value1
|
|
.test31.curl TRUE /overwrite FALSE 0 overwrite this2
|
|
.test31.curl TRUE /silly FALSE 0 ISMATCH this
|
|
.test31.curl TRUE /silly FALSE 0 ismatch this
|
|
test31.curl FALSE / FALSE 0 blankdomain sure
|
|
</file>
|
|
</verify>
|
|
</testcase>
|