mirror of
https://github.com/moparisthebest/curl
synced 2024-08-13 17:03:50 -04:00
877dad1e24
HTTP Cookie: header _needs_ to be sorted on the path length in the cases where two cookies using the same name are set more than once using (overlapping) paths. Realizing this, identically named cookies must be sorted correctly. But detecting only identically named cookies and take care of them individually is harder than just to blindly and unconditionally sort all cookies based on their path lengths. All major browsers also already do this, so this makes our behavior one step closer to them in the cookie area. Test case 8 was the only one that broke due to this change and I updated it accordingly.
63 lines
1.2 KiB
Plaintext
63 lines
1.2 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
cookies
|
|
</keywords>
|
|
</info>
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 200 OK swsclose
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
|
|
</data>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP with cookie parsing from header file
|
|
</name>
|
|
<command>
|
|
http://%HOSTIP:%HTTPPORT/we/want/8 -b log/heads8.txt
|
|
</command>
|
|
|
|
# We create this file before the command is invoked!
|
|
<file name="log/heads8.txt">
|
|
HTTP/1.1 200 OK
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Type: text/html
|
|
Funny-head: yesyes
|
|
Set-Cookie: foobar=name; domain=127.0.0.1; path=/;
|
|
Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/";
|
|
Set-Cookie: partmatch=present; domain=.0.0.1; path=/;
|
|
Set-Cookie: duplicate=test; domain=.0.0.1; domain=.0.0.1; path=/donkey;
|
|
Set-Cookie: cookie=yes; path=/we;
|
|
Set-Cookie: nocookie=yes; path=/WE;
|
|
Set-Cookie: blexp=yesyes; domain=.0.0.1; domain=.0.0.1; expiry=totally bad;
|
|
|
|
</file>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
GET /we/want/8 HTTP/1.1
|
|
Host: %HOSTIP:%HTTPPORT
|
|
Accept: */*
|
|
Cookie: cookie=yes; partmatch=present; foobar=name; blexp=yesyes
|
|
|
|
</protocol>
|
|
</verify>
|
|
</testcase>
|