tzh
2024-08-22 c7d0944258c7d0943aa7b2211498fd612971ce27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
O\¬Qc@sdZddlZddlZddlZddlZddlmZddlmZdefd„ƒYZ    defd„ƒYZ
d    fd
„ƒYZ d „Z d „Z d „Zdefd„ƒYZdefd„ƒYZdefd„ƒYZed„ZedkredeƒndS(sTests for cookielib.py.iÿÿÿÿN(tTestCase(t test_supportt DateTimeTestscBs,eZd„Zd„Zd„Zd„ZRS(cCsÞddlm}d}d}|j||ƒdƒ|j|||ƒdƒ|j||d|ƒd    ƒ|j||d
|ƒd ƒ|ƒ}|d ƒ}x:||fD],}|jtjd |ƒd||fƒqªWdS(Niÿÿÿÿ(t    time2isozix+À<iis2002-04-19 14:36:40Zs2002-04-20 14:36:40Zis2002-04-21 14:36:40Zis2002-04-22 14:36:40Zi ¡s!^\d{4}-\d\d-\d\d \d\d:\d\d:\d\dZ$sbad time2isoz format: %s %si€Q(t    cookielibRt assertEqualt
assertTruetretsearch(tselfRtbasetdaytaztbzttext((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_time2isozs     cseddlm‰‡fd†}|j|dƒdƒ|j|d    ƒdƒ|j|d ƒdƒdS(Niÿÿÿÿ(t    http2timecstjˆ|ƒƒd S(Ni(ttimetgmtime(R(R(s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt
parse_date#ss 01 Jan 2001iÑiigs    03-Feb-20iäiis    03-Feb-98iÎ(iÑiiiig(iäiiiig(iÎiiiig(RRR(R    R((Rs[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_http2time s
c Csddlm}m}ddddddd    d
d d d ddg }d}||ƒ}d}|j||d|||fƒx‚|D]z}||ƒ}||jƒƒ}    ||jƒƒ}
|j||    koà|
koà|knd|||    |
|fƒq‚WdS(Niÿÿÿÿ(RRsThu, 03 Feb 1994 00:00:00 GMTs Thursday, 03-Feb-94 00:00:00 GMTs"Thursday, 03-Feb-1994 00:00:00 GMTs03 Feb 1994 00:00:00 GMTs03-Feb-94 00:00:00 GMTs03-Feb-1994 00:00:00 GMTs03-Feb-1994 00:00 GMTs03-Feb-1994 00:00s    03-Feb-94s 03-Feb-1994s 03 Feb 1994s  03   Feb   1994  0:00  s  03-Feb-1994  i€>P-s1994-02-03 00:00:00Zs%s  =>  '%s' (%s)s'%s'  =>  %s, %s, %s (%s)(RRRRtlowertupperR( R    RRtteststtest_ttresulttexpectedtstttt2tt3((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_http2time_formats.s2        *c
Csoddlm}xXddddddd    d
d d g
D]2}|j||ƒdkd |||ƒfƒq5WdS(Niÿÿÿÿ(RttGarbagesMandag 16. September 1996s
01-00-1980s
01-13-1980s
00-01-1980s
32-01-1980s01-01-1980 25:00:00s01-01-1980 00:61:00s01-01-1980 00:00:62s,http2time(%s) is not None
http2time(test) %s(RRRtNone(R    Rttest((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_http2time_garbageUs (t__name__t
__module__RRRR$(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyRs            't HeaderTestscBs>eZd„Zd„Zd„Zd„Zd„Zd„ZRS(cCsVddlm}d d d gg}x-d    d
gD]}|j||gƒ|ƒq/WdS(Niÿÿÿÿ(tparse_ns_headerstfootbartexpiresld9Wtversiont0s)foo=bar; expires=01 Jan 2040 22:23:32 GMTs+foo=bar; expires="01 Jan 2040 22:23:32 GMT"(sfooR*(sexpiresld9W(sversionR-(RR(R(R    R(Rthdr((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_parse_ns_headers_expiresls  cCsSddlm}d    d
gg}x-ddgD]}|j||gƒ|ƒq,WdS( Niÿÿÿÿ(R(R)R*R,t1sfoo=bar; version="1"sfoo=bar; Version="1"(sfoosbar(sversionR0(RR(R(R    R(RR.((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_parse_ns_headers_versionws  cCsBddlm}d}dd    gg}|j||gƒ|ƒdS(
Niÿÿÿÿ(R(s expires=01 Jan 2040 22:23:32 GMTR+s01 Jan 2040 22:23:32 GMTR,R-(sexpiress01 Jan 2040 22:23:32 GMT(sversionR-(RR(R(R    R(R.R((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt#test_parse_ns_headers_special_names‚scCsRddlm}|dd    ggƒ}|j|dƒ|j|ggƒdƒdS(
Niÿÿÿÿ(tjoin_header_wordsR)R*tbazs foo; bar=bazR (sfooN(sbarR4(RR3R"R(R    R3tjoined((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_join_header_wordsŒsc    Cs¥ddlm}ddggfddggfddggfddggfd    dggfd
d ggfd d!d"ggfd d#d$ggfdd%ggfdd&d'ggfdd(d)d*ggfdd+gd,gd-ggfdd.d/gd0gd1gd2ggfg }x•|D]\}}y||gƒ}WnKddl}ddl}|jƒ}|jd|ƒd|jƒ}nX|j||d|||fƒqWdS(3Niÿÿÿÿ(tsplit_header_wordsR)sfoo=barR*s       foo   s
   foo=   R s   foo=s    foo=   ; s   foo=   ; bar= baz R4sfoo=bar bar=bazs foo= bar=bazsbar=bazsfoo=bar;bar=bazs foo bar bazsa, b, ctatbtcs(foo; bar=baz, spam=, foo="\,\;\"", bar= tspams,;"s (error -- traceback follows)
 
%ss:
When parsing: '%s'
Expected:     '%s'
Got:          '%s'
(sfooN(sfoosbar(sfooN(sfooR (sfooR (sfooR (sfooR (sbarsbaz(sfoosbar(sbarsbaz(sfoosbar=baz(sfoosbar(sbarsbaz(sfooN(sbarN(sbazN(R8N(R9N(R:N(sfooN(sbarsbaz(sspamR (sfoos,;"(sbarR (RR7R"t    tracebacktStringIOt    print_exctgetvalueR(    R    R7RtargtexpectRR<R=tf((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_split_header_words”s4      cCsœddlm}m}ddddddd d!d"d#d$d%d&g }xR|D]J\}}||gƒ}||ƒ}|j||d||||fƒqJWdS('Niÿÿÿÿ(R7R3R)sfoo=bars       foo   sfoo=sfoo=""sfoo=bar bar=bazsfoo=bar; bar=bazsfoo=bar;bar=bazs foo bar bazs foo; bar; bazsfoo="\"" bar="\\"sfoo="\""; bar="\\"s    foo,,,barsfoo, barsfoo=bar,bar=bazsfoo=bar, bar=bazstext/html; charset=iso-8859-1stext/html; charset="iso-8859-1"s)foo="bar"; port="80,81"; discard, bar=bazs'foo=bar; port="80,81"; discard, bar=bazsBasic realm="\"foo\\\\bar\""sBasic; realm="\"foo\\\\bar\""sM
When parsing: '%s'
Expected:     '%s'
Got:          '%s'
Input was:    '%s'
(sfoosfoo(sfoo=barsfoo=bar(s       foo   sfoo(sfoo=sfoo=""(sfoo=bar bar=bazsfoo=bar; bar=baz(sfoo=bar;bar=bazsfoo=bar; bar=baz(s foo bar bazs foo; bar; baz(sfoo="\"" bar="\\"sfoo="\""; bar="\\"(s    foo,,,barsfoo, bar(sfoo=bar,bar=bazsfoo=bar, bar=baz(stext/html; charset=iso-8859-1stext/html; charset="iso-8859-1"(s)foo="bar"; port="80,81"; discard, bar=bazs'foo=bar; port="80,81"; discard, bar=baz(sBasic realm="\"foo\\\\bar\""sBasic; realm="\"foo\\\\bar\""(RR7R3R(R    R7R3RR@RAtinputtres((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_roundtrip¸s,      (R%R&R/R1R2R6RCRF(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyR'js             
       $t FakeResponsecBs eZgdd„Zd„ZRS(cCsOddl}ddl}|jdj|ƒƒ}|j|ƒ|_||_dS(sD
        headers: list of RFC822-style 'Key: value' strings
        iÿÿÿÿNs
(t    mimetoolsR=tjointMessaget_headerst_url(R    theadersturlRHR=RB((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt__init__ÝscCs|jS(N(RK(R    ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pytinfoåsN(R%R&R"RORP(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyRGÜscGst|||dƒS(Ns Set-Cookie2(t    _interact(t    cookiejarRNtset_cookie_hdrs((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt interact_2965çscGst|||dƒS(Ns
Set-Cookie(RQ(RRRNRS((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pytinteract_netscapeêsc
CsŒddlm}||ƒ}|j|ƒ|jddƒ}g}x%|D]}|jd||fƒqHWt||ƒ}    |j|    |ƒ|S(sDPerform a single request / response cycle, returning Cookie: header.iÿÿÿÿ(tRequesttCookieR s%s: %s(turllib2RVtadd_cookie_headert
get_headertappendRGtextract_cookies(
RRRNRSthdr_nameRVtreqt
cookie_hdrRMR.RE((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyRQís   tFileCookieJarTestscBseZd„Zd„ZRS(cCsÖddlm}tj}|ƒ}t|ddƒ|j|jdddjdƒz3|j    |dt
ƒ|ƒ}|j |dt
ƒWdyt j |ƒWntk
r®nXX|j|jdddjdƒdS(Niÿÿÿÿ(t LWPCookieJarshttp://www.acme.com/tboos www.acme.comt/tignore_discard(RRaRtTESTFNRURt_cookiestvalueR"tsavetTruetloadtostunlinktOSError(R    RatfilenameR:((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_lwp_valueless_cookieüs        "     c    Csddlm}m}m}tj}xg||fD]Y}|ƒ}y|jddƒWn&tk
r}}|j|j    tƒq2X|j
dƒq2WzVt |dƒ}|j dƒx3||fD]%}|ƒ}|j ||j|ƒq»WWdytj|ƒWntk
r nXXdS(Niÿÿÿÿ(RatMozillaCookieJart    LoadErrorRnsAfor this test to work, a file with this filename should not exists%expected IOError for invalid filenametwsoops
(RRaRpRqRReRjtIOErrorRt    __class__tfailtopentwritet assertRaisesRkRlRm(    R    RaRpRqRntcookiejar_classR:texcRB((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_bad_magic s&              (R%R&RoR{(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyR`ûs    t CookieTestscBseZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z RS(c    CsGddl}ddl}|jƒ}xddtfddtfddtfddtfddtfddtfdd    tfd
d tfd
d tfd
d tfd
d    tfddtfddtfddtfddtfddtfgD]T\}}}|j|ƒ}|j||ƒ}|r1|j|ƒqë|j| ƒqëWdS(Niÿÿÿÿshttp://foo.bar.com/sblah.comsrhubarb.blah.comsrhubarb.foo.bar.coms .foo.bar.coms foo.bar.coms.bar.comtcomshttp://foo.com/srhubarb.foo.coms.foo.comsfoo.coms http://foo/s rhubarb.foos.fooR)s    foo.locals.local(RRXtDefaultCookiePolicytFalseRiRVtdomain_return_okR(    R    RRXtpolRNtdomaintoktrequesttr((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_domain_return_okUs0                cCsƒddlm}m}tj}||ƒ}t|ddƒt|ddƒ|jddd}|j|jdkƒ|j
|j dƒ|jddd    }|j|jdkƒ|j
|j d    ƒ|j
||ƒd
ƒt |ƒ}|j d td tƒz&||ƒ}|jd td tƒWdtj|jƒX|j
t |ƒtjd td t|ƒƒ|j
t|dƒdƒdS(Niÿÿÿÿ(Rptlwp_cookie_strshttp://www.acme.com/teggss"spam"; path=/foo/s www.acme.comRcs/foo/s"spam"sJ"spam"; path="/foo/"; domain="www.acme.com"; path_spec; discard; version=0tignore_expiresRdspath_specified=%sshttp://www.acme.com/foo/s "spam"; eggs(RRpR‡RReRURfRRgR"RtnametreprRhRitrevertRkRlRnRtsubR(R    RpR‡RnR:tcookietold_str((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_missing_valuets2           
c
CsAddlm}m}x$dtdfdtdfttdfttdfttdfttdfgD]Ô\}}}|d|d|ƒ}||ƒ}t|ddƒy|jd    d
d }Wn$tk
rä|j    |dkƒqeX|j
|j |ƒt |dd ƒ|re|jd    d
d }    |j
|    j dƒqeqeWdS(Niÿÿÿÿ(t    CookieJarR~iitrfc2109_as_netscapetrfc2965shttp://www.example.com/sni=ni; Version=1swww.example.comRctnisfoo=bar; Version=1R)( RR‘R~R"RRiRURftKeyErrorRRR,RT(
R    R‘R~R’R“R,tpolicyR:RŽt
cookie2965((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_rfc2109_handling–s.               cCsãddlm}m}|ƒ}t|ddƒt|ddƒt|ddƒt|ddƒt|dd    ƒ|jd
d d }|j|jd
ƒ|j|jƒ|j|j    |ƒ|j|j
ƒ|j|j d ƒoí|j dƒ ƒ|jdd d}|j|jdƒ|j|j ƒ|j|j    dƒ|j|j
ƒ|jdd d}|j|j    dkƒ|j|j
ƒ|jdd d}|jdd d}|j|j dkƒ|j|j dkƒdS(Niÿÿÿÿ(R‘tDEFAULT_HTTP_PORTshttp://www.acme.com/s0spam=eggs; DoMain=.acme.com; port; blArgh="feep"sni=ni; port=80,8080shttp://www.acme.com:80/snini=nisfoo=bar; expires=s-spam=eggs; expires="Foo Bar 25 33:22:11 3022"s    .acme.comRcR;tblArghtblarghs www.acme.comR”s80,8080tniniR)(RR‘R™RURfRR‚Rtdomain_specifiedtporttport_specifiedthas_nonstandard_attrR"R+(R    R‘R™R:RŽR)R;((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_ns_parser·s6        cCstddlm}|ƒ}t|ddƒt|ddƒ|jdd}|jd|kƒ|jd    |kƒdS(
Niÿÿÿÿ(R‘shttp://www.acme.com/s expires=eggssversion=eggs; spam=eggss www.acme.comRcR+R,(RR‘RURfR(R    R‘R:tcookies((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_ns_parser_special_namesÜs    cCs²ddlm}m}|ƒ}|tjƒdƒ}t|dd|ƒ|jt|ƒdƒ|tjƒdƒ}t|dd|ƒt|dƒ}|jt|ƒdƒ|jd|koÉd    |kƒt|dd
|ƒt|dd |ƒ|jt|ƒd ƒt|dd |ƒt|dd|ƒt|dƒ}|jt|ƒdƒt|ddƒ|jt|ƒdƒ|jƒ|jt|ƒdƒ|j    d|ƒdS(Niÿÿÿÿ(t time2netscapeR‘ishttp://www.acme.com/sspam="bar"; expires=%sisfoo="eggs"; expires=%ss
spam="bar"R)seggs="bar"; expires=%ssbar="bar"; expires=%sis!eggs="bar"; expires=%s; max-age=0s bar="bar"; max-age=0; expires=%sshttp://www.rhubarb.net/s whum="fizz"i(
RR¤R‘RRURtlenRtclear_session_cookiestassertIn(R    R¤R‘R:tfuturetnowth((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt test_expiresés8          
cCsµddlm}m}|dtƒ}||ƒ}t|ddƒ|jd|jdƒ||ƒ}t|dd    ƒ|jd|jdƒ||ƒ}t|d
d    ƒ|jd |jdƒ||ƒ}t|d d    ƒ|jd |jdƒ|ƒ}t|ddƒ|jd|jdƒ|ƒ}t|ddƒ|jd|jdƒ|ƒ}t|d
dƒ|jd|jdƒ|ƒ}t|d dƒ|jd|jdƒdS(Niÿÿÿÿ(R‘R~R“shttp://www.acme.com/sspam="bar"; Version="1"Rcs www.acme.comshttp://www.acme.com/blahseggs="bar"; Version="1"s http://www.acme.com/blah/rhubarbs/blah/s!http://www.acme.com/blah/rhubarb/s/blah/rhubarb/s
spam="bar"s
eggs="bar"s/blahs /blah/rhubarb(RR‘R~RiRTR§RfRU(R    R‘R~RR:((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_default_paths8                            cCs\tjƒ}d}d}t|||ƒ|jd|jdƒ|jt||ƒ|ƒdS(Nshttp://example.com/?spam/eggss
eggs="bar"Rcs example.com(RR‘RUR§RfR(R    tcjturiRg((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_default_path_with_query;s  c Cshddlm}dddddddddddg }x*|D]"\}}|j||ƒ|ƒq>WdS(Niÿÿÿÿ(t escape_paths /foo%2f/bars /foo%2F/bars
/foo%%/bars /fo%19o/bars /fo%7do/bars /fo%7Do/bars    /foo/bar&s    /foo//bars    ~/foo/bars    /foo/bars /foo%19/bars    /}foo/bars /%7Dfoo/baru /foo/barꯍs/foo/bar%EA%AF%8D(s /foo%2f/bars /foo%2F/bar(s /foo%2F/bars /foo%2F/bar(s
/foo%%/bars
/foo%%/bar(s /fo%19o/bars /fo%19o/bar(s /fo%7do/bars /fo%7Do/bar(s    /foo/bar&s    /foo/bar&(s    /foo//bars    /foo//bar(s    ~/foo/bars    ~/foo/bar(s    /foo/bars /foo%19/bar(s    /}foo/bars /%7Dfoo/bar(u /foo/barꯍs/foo/bar%EA%AF%8D(RR°R(R    R°tcasesR@R((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_escape_pathEs    cCsŠddlm}ddlm}|dƒ}|j||ƒdƒ|dƒ}|j||ƒdƒ|dƒ}|j||ƒd    ƒdS(
Niÿÿÿÿ(RV(t request_pathsThttp://www.example.com/rheum/rhaponticum;foo=bar;sing=song?apples=pears&spam=eggs#nis$/rheum/rhaponticum;foo=bar;sing=songsBhttp://www.example.com/rheum/rhaponticum?apples=pears&spam=eggs#nis/rheum/rhaponticumshttp://www.example.comRc(RXRVRR³R(R    RVR³R^((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_request_path]s   cCsˆddlm}ddlm}m}|ddidd6ƒ}|j||ƒdƒ|d    didd6ƒ}|j||ƒ|ƒdS(
Niÿÿÿÿ(RV(t request_portR™shttp://www.acme.com:1234/RMswww.acme.com:4321tHostt1234shttp://www.acme.com/(RXRVRRµR™R(R    RVRµR™R^((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_request_portms        cCsàddlm}ddlm}|ddidd6ƒ}|j||ƒdƒ|d    did
d6ƒ}|j||ƒd ƒ|d did d6ƒ}|j||ƒd ƒ|d didd6ƒ}|j||ƒd ƒdS(Niÿÿÿÿ(RV(t request_hostshttp://1.1.1.1/RMswww.acme.com:80R¶s1.1.1.1shttp://www.acme.com/sirrelevant.coms www.acme.coms/resource.htmls&http://www.acme.com:2345/resource.htmlswww.acme.com:5432(RXRVRR¹R(R    RVR¹R^((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_request_hostws                cCs²ddlm}|j|dƒƒ|j|dƒƒ|j|dƒ ƒ|j|dƒ ƒ|j|dƒ ƒ|j|dƒ ƒ|j|d    ƒ ƒ|j|d
ƒ ƒdS( Niÿÿÿÿ(tis_HDNs foo.bar.coms1foo2.3bar4.5coms 192.168.1.1R t.s .foo.bar.coms..foosfoo.(RR»R(R    R»((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt test_is_HDNŽscCsÄddlm}|j|dƒdƒ|j|dƒdƒ|j|dƒdƒ|j|dƒdƒ|j|dƒdƒ|j|d    ƒd    ƒ|j|d
ƒd
ƒ|j|d ƒd ƒdS( Niÿÿÿÿ(treachs www.acme.coms    .acme.comsacme.coms
acme.locals.locals.comR¼R s 192.168.0.1(RR¾R(R    R¾((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt
test_reach™scCsÔddlm}m}|j|ddƒƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒ ƒ|j|d    d
ƒƒ|j|d
d    ƒ ƒ|j|d d ƒƒ|j|d dƒ ƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒƒ|j|ddƒ ƒ|j|ddƒ ƒ|j|ddƒ ƒ|j|ddƒ ƒ|j|ddƒ ƒ|j|ddƒƒ|j|ddƒ ƒ|j|ddƒ ƒ|j|ddƒ ƒdS(Niÿÿÿÿ(t domain_matchtuser_domain_matchs 192.168.1.1s.168.1.1sx.y.comsx.Y.coms.Y.comsY.coms    a.b.c.coms.c.coms example.locals.locals    blah.blahR s.rhubarb.rhubarbsacme.coms    .acme.comsrhubarb.acme.comswww.rhubarb.acme.comsy.coms.y.coms.comR}tms.mR¼(RRÀRÁR(R    RÀRÁ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_domain_match¤s@cCsCddlm}|ƒ}t|ddƒ|jt|ƒdƒdS(Niÿÿÿÿ(R‘shttp://www.nasty.com/s)foo=bar; domain=friendly.org; Version="1"i(RR‘RTRR¥(R    R‘R:((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_wrong_domainÉs
        cCsµddlm}m}|dtƒ}|d|ƒ}t|ddƒt|ddƒ|jt|ƒdƒxDd    d
d d gD]0}t|d |dƒ|jt|ƒdƒq}WdS(Niÿÿÿÿ(R‘R~t strict_domainR–shttp://example.co.uk/s no=problemos!okey=dokey; Domain=.example.co.ukis.co.uks.org.zas.tx.uss.name.usshttp://example.%s/sspam=eggs; Domain=.co.uk(RR‘R~RiRURR¥(R    R‘R~tcpR­t
pseudo_tld((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_strict_domainÔs     cCs´ddlm}m}|ƒ}t|ddƒ|jt|ƒdƒ|j|jdddjd    ƒ|jt|dƒdƒ|jt|d
ƒdƒ|d |jƒ}|j    |ƒ|jt|d
ƒd ƒt|d dƒt|ddƒ|jt|ƒdƒ|j|jdddjdƒ|j|jdddjdƒ|jt|dƒdƒt|ddƒ|jt|ƒdƒt|ddƒ|jt|ƒdƒdS(Niÿÿÿÿ(R‘R~shttp://foo.net/sns=barisfoo.netRctnsR*shttp://www.foo.net/tstrict_ns_domainR shttp://foo.net/foo/sspam1=eggs; domain=foo.netshttp://foo.net/foo/bar/sspam2=eggs; domain=.foo.netis.foo.nets/footspam1Rˆs/foo/bartspam2sspam2=eggs; spam1=eggs; ns=barsnini="ni"; domain=.netshttp://foo.co.uksnasty=trick; domain=.co.uki(
RR‘R~RURR¥RfRgtDomainStrictNonDomaint
set_policy(R    R‘R~R:R((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_two_component_domain_nsäs6    "          cCs´ddlm}m}|dtƒ}||ƒ}t|ddƒ|jt|ƒdƒ|j|jddd    jd
ƒ|jt|dƒd ƒ|jt|d ƒd ƒt|ddƒ|jt|ƒdƒ|jt|dƒd ƒt|ddƒ|j|jdddjdƒ|jt|ƒdƒ|jt|dƒd ƒ|jt|dƒdƒt|ddƒ|jt|ƒdƒt|ddƒ|jt|ƒdƒdS(Niÿÿÿÿ(R‘R~R“shttp://foo.net/sfoo=bar; Version="1"isfoo.netRcR)R*s$Version=1; foo=barshttp://www.foo.net/R shttp://foo.net/foos1spam=eggs; domain=foo.net; path=/foo; Version="1"shttp://www.foo.net/foo/s&spam=eggs; domain=foo.net; Version="1"s.foo.nets/foo/R;Rˆishttp://foo.net/foo/s($Version=1; spam=eggs; $Domain="foo.net"s#ni="ni"; domain=".net"; Version="1"shttp://foo.co.uk/s'nasty=trick; domain=.co.uk; Version="1"i(    RR‘R~RiRTRR¥RfRg(R    R‘R~RR:((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt!test_two_component_domain_rfc2965s: "                c    Cs’ddlm}m}ddlm}|d|ddgddgƒƒ}|d    ƒ}d
g}t|d    ƒ}|j||ƒ|jt|ƒd ƒ|d ƒ}t|d ƒ}|j||ƒ|jt|ƒd ƒ|dƒ}t|dƒ}|j||ƒ|jt|ƒd ƒ|dƒ}t|dƒ}|j    ||ƒ}|j
|d ƒ|jt|ƒdƒ|j |ƒ|j |j dƒ ƒdS(Niÿÿÿÿ(R‘R~(RVR–tblocked_domainssacme.comtallowed_domainss www.acme.comshttp://acme.com/s*Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/ishttp://www.acme.com/ishttp://www.coyote.com/iRW(RR‘R~RXRVRGR\RR¥t make_cookiest
set_cookieRYRt
has_header(    R    R‘R~RVR:R^RMRER¢((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_domain_allowDs2              c Csddlm}m}ddlm}|dtddgƒ}|d|ƒ}dg}|d    ƒ}t|d    ƒ}|j||ƒ|jt    |ƒd
ƒ|j
d gƒ}    |j||ƒ|jt    |ƒd ƒ|j ƒ|d ƒ}t|d ƒ}|j||ƒ|jt    |ƒd ƒ|d ƒ}|j |ƒ|j |jdƒoT|jdƒƒ|j ƒ|j
dgƒ|j||ƒ|jt    |ƒd ƒ|d    ƒ}t|d    ƒ}|j||ƒ}
|j|
d
ƒ|jt    |ƒdƒ|j |ƒ|j |jdƒ ƒdS(Niÿÿÿÿ(R‘R~(RVR“RÑs    .acme.comR–s*Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/shttp://www.acme.com/isacme.comishttp://www.roadrunner.net/RWtCookie2i(RR‘R~RXRVRiRGR\RR¥tset_blocked_domainstclearRYRRÕRÓRÔ( R    R‘R~RVRR:RMR^REtpR¢((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_domain_blockfsB     
 
  c
Csddlm}m}xùttfD]ë}xâdD]Ú}|ƒ}|rc|dtƒ}t}d}n|dtƒ}t}d}|j|ƒd}    |||    d||fƒ|||    d    ||fƒ|j|j    d
d d j
d ƒ|j|j    d
d dj
dƒq0Wq#WdS(Niÿÿÿÿ(R‘R~t R R“s ; Version=1shttp://www.acme.com/s foo1=bar%s%ssfoo2=bar%s; secure%ss www.acme.comRctfoo1s#non-secure cookie registered securetfoo2s#secure cookie registered non-secure(RÜR ( RR‘R~RiRRURTRÎRRftsecure(
R    R‘R~RÉt
whitespaceR:RtinttvsRN((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt test_secure‘s*          cCsaddlm}m}|d|dtƒƒ}t|ddƒt|dƒ}|j|dƒdS(Niÿÿÿÿ(R‘R~R–R“shttp://www.acme.com/sfoo=\b"a"r; Version=1s$Version=1; foo=\\b\"a\"r(RR‘R~RiRTR(R    R‘R~R:Rª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_quote_cookie_valueªs
cCsšddlm}m}ddlm}d}||dtƒƒ}t||dƒ||ƒ}|jt|ƒdƒ|j    |ƒ|j
|j dƒƒdS(    Niÿÿÿÿ(R‘R~(RVshttp://www.acme.comR“sfoo=bar; Version=1iRW( RR‘R~RXRVRiRTRR¥RYRRÕ(R    R‘R~RVRNR:R^((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_missing_final_slash±s  cCsõddlm}m}|dtƒ}||ƒ}d}t||dƒt||ƒ}|jd|dƒ||ƒ}d}t||dƒt||ƒ}|jd    |d
ƒ||ƒ}d}t||d ƒt||ƒ}|jd |d
ƒdS( Niÿÿÿÿ(R‘R~R“shttp://foo.bar.com/sspam=eggs; Version=1tDomains*absent domain returned with domain presents%spam=eggs; Version=1; Domain=.bar.coms$Domain=".bar.com"sdomain not returneds$spam=eggs; Version=1; Domain=bar.coms$Domain="bar.com"(RR‘R~RiRTt assertNotInR§(R    R‘R~RR:RNRª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_domain_mirror½s$    cCs±ddlm}m}|dtƒ}||ƒ}d}t||dƒt||ƒ}|jd|dƒ||ƒ}d}t||dƒt||ƒ}|jd    |d
ƒdS( Niÿÿÿÿ(R‘R~R“shttp://foo.bar.com/sspam=eggs; Version=1tPaths&absent path returned with path presentsspam=eggs; Version=1; Path=/s    $Path="/"spath not returned(RR‘R~RiRTRçR§(R    R‘R~RR:RNRª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_path_mirrorÖs  cCsBddlm}m}|dtƒ}||ƒ}d}t||dƒt||ƒ}|jd|dƒ||ƒ}d}t||dƒt||ƒ}|jtjd    |ƒd
ƒ||ƒ}d}t||d ƒt||ƒ}|j    d |d ƒ||ƒ}d}t||dƒt||ƒ}|j    d|dƒdS(Niÿÿÿÿ(R‘R~R“shttp://foo.bar.com/sspam=eggs; Version=1tPorts&absent port returned with port presentsspam=eggs; Version=1; Ports\$Port([^=]|$)s-port with no value not returned with no valuesspam=eggs; Version=1; Port="80"s
$Port="80"s5port with single value not returned with single values$spam=eggs; Version=1; Port="80,8080"s$Port="80,8080"s;port with multiple values not returned with multiple values(
RR‘R~RiRTRçRRRR§(R    R‘R~RR:RNRª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_port_mirrorçs2      cCsjddlm}m}||dtƒƒ}d}t||dƒt||ƒ}|jd|kdƒdS(Niÿÿÿÿ(R‘R~R“shttp://foo.bar.com/sfspam=eggs; Version=1; Comment="does anybody read these?"; CommentURL="http://foo.bar.net/comment.html"tComments:Comment or CommentURL cookie-attributes returned to server(RR‘R~RiRTR(R    R‘R~R:RNRª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_no_return_comments    c Cs}ddlm}m}m}||dtƒƒ}t|ddƒt|ddƒt|ddƒt|dd    ƒt|d
d ƒd d d d d g}dddddg}dddddg}dddddg}x¡tdƒD]“}    d }    x„|D]|}
|j|
|ƒ|j    |
j
||    ƒ|j    |
j ||    ƒ|j    |
j ||    ƒ|j    |
j ||    ƒ|    d }    qõWqâWdS(Niÿÿÿÿ(R‘RWR~R“shttp://blah.spam.org/sefoo=eggs; Version=1; Comment="does anybody read these?"; CommentURL="http://foo.bar.net/comment.html"shttp://www.acme.com/blah/sspam=bar; securesfoo=bar; secure; Version=1sfoo=bar; path=/; Version=1shttp://www.sol.nossbang=wallop; version=1; domain=".sol.no"; port="90,100, 80,8080"; max-age=100; Comment = "Just kidding! (\"|\\\\) "iitbangR)R;s.sol.nos blah.spam.orgs www.acme.comRcs/blahs/blah/i(RR‘RWR~RiRTRUtrangetassertIsInstanceRR,RŠR‚tpath( R    R‘RWR~tcstversionstnamestdomainstpathstiR:((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_Cookie_iterators0                  cCsœddlm}|j|dgƒddddggƒ|j|d gƒdddggƒ|j|dgƒddggƒ|j|d gƒgƒdS(Niÿÿÿÿ(R(sfoo=bar; path=/; domainR)R*RòRcR‚R,R-s)foo=bar; expires=Foo Bar 12 33:22:11 2000R+R (sfoosbar(spathRc(sdomainN(sversionR-(sfoosbar(sexpiresN(sversionR-(sfooN(sversionR-(RR(RR"(R    R(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_parse_ns_headers7s   cCsžd„}xNdgdgdgdgdggD](}||ƒ}|jt|ƒdƒq.Wdg}||ƒ}|jd    d
d }|j|jdkƒdS( NcSsXddlm}ddlm}|ƒ}|dƒ}t|dƒ}|j||ƒ|S(Niÿÿÿÿ(R‘(RVshttp://www.example.com/(RR‘RXRVRGR\(RMR‘RVR:R^R…((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pytcookiejar_from_cookie_headersOs     s Set-Cookie: s Set-Cookie2: s-Set-Cookie2: a=foo; path=/; Version=1; domainsSet-Cookie: b=foo; max-age=oopssSet-Cookie: b=foo; version=spamis3Set-Cookie: c=foo; expires=Foo Bar 12 33:22:11 2000swww.example.comRcR:(RR¥RfRR+R"(R    RûRMR:RŽ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_bad_cookie_headerMs    
      (!R%R&R†RR˜R¡R£R«R¬R¯R²R´R¸RºR½R¿RÃRÄRÈRÏRÐRÖRÛRãRäRåRèRêRìRîRùRúRü(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyR|&s>/        "    !    %        (    *    
           
               %            2    .    "    +                        !        "    tLWPCookieTestscBsteZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z d „Z RS( c
CsCddlm}m}ddlm}tjƒdd}g}||dtƒƒ}|ddid    d
6ƒ}|jd |ƒt    |d ƒ}|j
||ƒ|d ƒ}|j |ƒ|j |j d ƒdƒ|j |j dƒdƒ|jdƒt    |d ƒ}|j
||ƒ|dƒ}|j |ƒ|j d ƒ}    |jd|    ƒ|jd|    ƒ|jdƒt    |dƒ}|j
||ƒ|d ƒ}|j |ƒ|j d ƒ}    |jd|    ƒ|jd|    ƒ|jd|    ƒ|dƒ}|j |ƒ|j d ƒ}    |jd|    ƒ|jd|    ƒ|j|    jdƒƒdS(Niÿÿÿÿ(R‘R~(RViiR“shttp://www.acme.com:80/RMswww.acme.com:80R¶sVSet-Cookie: CUSTOMER=WILE_E_COYOTE; path=/ ; expires=Wednesday, 09-Nov-%d 23:12:40 GMTshttp://www.acme.com/RWsCUSTOMER=WILE_E_COYOTER×s $Version="1"s4Set-Cookie: PART_NUMBER=ROCKET_LAUNCHER_0001; path=/shttp://www.acme.com/foo/bars PART_NUMBER=ROCKET_LAUNCHER_0001s%Set-Cookie: SHIPPING=FEDEX; path=/fooshttp://www.acme.comsSHIPPING=FEDEXshttp://www.acme.com/foo/sSHIPPING=FEDEX;(RR‘R~RXRVRt    localtimeRiR[RGR\RYRRZR§RçRt
startswith(
R    R‘R~RVt year_plus_oneRMR:R^RERª((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_netscape_example_1qsN&              cCsddlm}ddlm}|ƒ}g}|dƒ}|jdƒt|dƒ}|j||ƒ|dƒ}|j|ƒ|j|j    dƒdƒ|jdƒt|dƒ}|j||ƒ|d    ƒ}|j|ƒ|j
t j d
|j    dƒƒƒdS( Niÿÿÿÿ(R‘(RVshttp://www.acme.com/s4Set-Cookie: PART_NUMBER=ROCKET_LAUNCHER_0001; path=/RWs PART_NUMBER=ROCKET_LAUNCHER_0001s6Set-Cookie: PART_NUMBER=RIDING_ROCKET_0023; path=/ammoshttp://www.acme.com/ammosBPART_NUMBER=RIDING_ROCKET_0023;\s*PART_NUMBER=ROCKET_LAUNCHER_0001( RR‘RXRVR[RGR\RYRRZRRR(R    R‘RVR:RMR^RE((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_netscape_example_2Ïs(          cCs ddlm}m}||dtƒƒ}t|ddƒ}|j| ƒt|ddƒ}|jtjd|ƒƒt|d    d
ƒ}|jtjd |ƒƒ|jtjd |ƒƒ|jtjd |ƒƒt|dƒ}|jtjd|ƒod|kƒdS(Niÿÿÿÿ(R‘R~R“shttp://www.acme.com/acme/logins3Customer="WILE_E_COYOTE"; Version="1"; Path="/acme"s!http://www.acme.com/acme/pickitems=Part_Number="Rocket_Launcher_0001"; Version="1"; Path="/acme"s=^\$Version="?1"?; Customer="?WILE_E_COYOTE"?; \$Path="/acme"$s!http://www.acme.com/acme/shippings+Shipping="FedEx"; Version="1"; Path="/acme"s^\$Version="?1"?;s7Part_Number="?Rocket_Launcher_0001"?;\s*\$Path="\/acme"s-Customer="?WILE_E_COYOTE"?;\s*\$Path="\/acme"s http://www.acme.com/acme/processs%Shipping="?FedEx"?;\s*\$Path="\/acme"t WILE_E_COYOTE(RR‘R~RiRTRRR(R    R‘R~R:RŽ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_ietf_example_1s,             
        
 
cCs™ddlm}m}||dtƒƒ}t|dddƒt|dƒ}|jtjd|ƒƒt|d    ƒ}|jd
|ƒ|j    d |ƒdS( Niÿÿÿÿ(R‘R~R“s&http://www.acme.com/acme/ammo/specifics=Part_Number="Rocket_Launcher_0001"; Version="1"; Path="/acme"s@Part_Number="Riding_Rocket_0023"; Version="1"; Path="/acme/ammo"s!http://www.acme.com/acme/ammo/...s(Riding_Rocket_0023.*Rocket_Launcher_0001shttp://www.acme.com/acme/parts/tRocket_Launcher_0001tRiding_Rocket_0023(
RR‘R~RiRTRRRR§Rç(R    R‘R~R:RŽ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_ietf_example_2xs  c    Cs{ddlm}m}|dtƒ}|d|ƒ}d}t|ddƒ}|j| ƒt|ddƒ}|jt|ƒd    ƒt|d
d ƒ}|jt|ƒd    ƒt|d
d ƒ}|jt|ƒd ƒt|ddƒ}|jt|ƒd ƒt|ddƒ}|jt|ƒd ƒt|ddƒ}|jt|ƒdƒt|ddƒ}|jt|ƒdƒt|ddƒ}|jt|ƒdƒt|ddƒ}|jt|ƒdƒt|ddƒ}|jt|ƒdƒtj    }zE|j
|dtƒt |ƒ}|d|ƒ}|j |dtƒWdyt j|ƒWntk
r_nXX|j|t |ƒƒdS(Niÿÿÿÿ(R~RaR“R–s max-age=3600shttp://www.acme.coms!foo=bar; domain=".com"; version=1s'ping=pong; domain="acme.com"; version=1ishttp://www.a.acme.coms'whiz=bang; domain="acme.com"; version=1s,wow=flutter; domain=".a.acme.com"; version=1ishttp://125.125.125.125s*zzzz=ping; domain="125.125.125"; version=1shttp://www.sol.nos6blah=rhubarb; domain=".sol.no"; path="/foo"; version=1shttp://www.sol.no/foo/bars3bing=bong; domain=".sol.no"; path="/foo"; version=1is5whiz=ffft; domain=".sol.no"; port="90,100"; version=1ssbang=wallop; version=1; domain=".sol.no"; port="90,100, 80,8080"; max-age=100; Comment = "Just kidding! (\"|\\\\) "is9foo9=bar; version=1; domain=".sol.no"; port; max-age=100;ishttp://www.sol.no/<oo/s"foo8=bar; version=1; path="/%3coo"iRd(RR~RaRiRTRRR¥RReRhR‹RjRkRlRm(    R    R~RaRR:tmax_ageRŽRntold((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_rejection°sb                                                                                              cCs´ddlm}m}||dtƒƒ}t|ddƒt|ddƒ}tjdtjƒ}|jd    |ko€|j    |ƒƒt|d
ƒ}|j| ƒt|d ƒ}dS( Niÿÿÿÿ(R‘R~R“s1http://www.acme.com/foo%2f%25/%3c%3c%0Anew%E5/%E5sfoo  =   bar; version    =   1s+http://www.acme.com/foo%2f%25/<<%0anewå/æøås bar=baz; path="/foo/"; version=1s^\$version=\"?1\"?sfoo=bars)http://www.acme.com/foo/%25/<<%0anewå/æøåuhttp://www.acme.com/ü(
RR‘R~RiRTRtcompiletIRR(R    R‘R~R:RŽt
version_re((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_url_encoding s        " csVddlm‰m‰tjƒdd}tj‰ˆˆdˆdtƒƒ}t|ddƒt|dd    ƒt|dd
ƒd |f}t    |d d |ƒt    |d d|ƒt    |d d|ƒ‡‡‡fd†}||tƒ}|j
t |ƒdƒ|j dt |ƒƒ||tƒ}|j
t |ƒdƒ|j dt |ƒƒdS(Niÿÿÿÿ(RpR~iiR–R“shttp://www.acme.com/s foo1=bar; max-age=100; Version=1s4foo2=bar; port="80"; max-age=100; Discard; Version=1sfoo3=bar; secure; Version=1sexpires=09-Nov-%d 23:12:40 GMTshttp://www.foo.com/s fooa=bar; %ssfoob=bar; Domain=.foo.com; %ss fooc=bar; Domain=www.foo.com; %scsiz<|jd|ƒˆˆˆdtƒƒ}|jd|ƒWdytjˆƒWntk
rcnXX|S(NRdR“(RhRiRjRkRlRm(R­Rdtnew_c(R~RpRn(s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pytsave_and_restore;s isname='foo1', value='bar'i(RRpR~RRþRReRiRTRURR¥R§R‹R(R    RR:R+RR((R~RpRns[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt test_mozilla#s0                                 cCsáddlm}ddlm}|ƒ}g}|dƒ}|jdƒt|dƒ}|j||ƒ|jdƒt|dƒ}|j||ƒ|dƒ}|j|ƒ|jd|j    d    ƒkoÙd
|j    d    ƒkƒdS( Niÿÿÿÿ(R‘(RVshttp://foo.bar.acme.com/foos4Set-Cookie: Customer=WILE_E_COYOTE; domain=.acme.comshttp://www.acme.com/foos4Set-Cookie: PART_NUMBER=3,4; domain=foo.bar.acme.comsPART_NUMBER=3,4RWsCustomer=WILE_E_COYOTE(
RR‘RXRVR[RGR\RYRRZ(R    R‘RVR:RMR^RE((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_netscape_miscNs          cCs¦ddlm}m}||dtƒƒ}t|ddƒt|ddƒ}|jd|ƒt|ddƒt|dƒ}|jd    |ƒ|jt|ƒd
ƒdS( Niÿÿÿÿ(R‘R~R“shttp://example/s#foo1=bar; PORT; Discard; Version=1;s$foo2=bar; domain=".local"; Version=1sfoo1=barsfoo3=bar; Version=1sfoo2=bari(RR‘R~RiRTR§RR¥(R    R‘R~R:RŽ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_intranet_domains_2965is            cCs¬ddlm}m}||dtƒƒ}t|ddƒt|ddƒ}|jt|ƒdƒ|jd|ƒt|dƒ}|jd|ƒ|jt|ƒdƒdS(    Niÿÿÿÿ(R‘R~R“shttp://example/sfoo1=barsfoo2=bar; domain=.localisfoo2=bar(RR‘R~RRURR¥R§(R    R‘R~R:RŽ((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_intranet_domains_nsys        cCsddlm}m}ddlm}||dtƒƒ}g}|dƒ}|jdƒt|dƒ}|j||ƒ|dƒ}|j    |ƒ|j
|j dƒdƒ|j
|j d    ƒd
ƒ|d ƒ}|j    |ƒ|j
|j dƒdƒ|j
|j d    ƒd
ƒdS( Niÿÿÿÿ(R‘R~(RVR“shttp://www.ants.com/s,Set-Cookie: JSESSIONID=ABCDERANDOM123; Path=RWsJSESSIONID=ABCDERANDOM123R×s $Version="1"shttp://www.ants.com:8080( RR‘R~RXRVRiR[RGR\RYRRZ(R    R‘R~RVR:RMR^RE((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_empty_path‡s$          c Csƒddlm}ddlm}tjƒdd}|dƒ}g}|jdƒ|jd|ƒ|jd    |ƒ|jd
ƒ|jd ƒt|dƒ}|ƒ}|j||ƒidd 6dd 6dd6dd6}x-|D]%}    d|    j    }
||
d||
<qàW|j
ƒx-|D]%}    d|    j    }
||
d||
<qW|j |d |dkpz|d dkpz|ddk ƒdS(Niÿÿÿÿ(R‘(RViis"http://www.perlmeister.com/scriptss$Set-Cookie: s1=session;Path=/scriptssWSet-Cookie: p1=perm; Domain=.perlmeister.com;Path=/;expires=Fri, 02-Feb-%d 23:24:20 GMTs>Set-Cookie: p2=perm;Path=/;expires=Fri, 02-Feb-%d 23:24:20 GMTs<Set-Cookie: s2=session;Path=/scripts;Domain=.perlmeister.coms2Set-Cookie2: s3=session;Version=1;Discard;Path="/"t session_aftert
perm_aftertsession_beforet perm_befores    %s_befores%s_after( RR‘RXRVRRþR[RGR\RgR¦R( R    R‘RVRR^RMRER:tcounterRŽtkey((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyttest_session_cookies©s<                
 
 
  (R%R&RRRRR
RRRRRRR(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyRýns    ^    6    s    8    ]        +                "cCstjtttttƒdS(N(Rt run_unittestRR'R|R`Rý(tverbose((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt    test_mainØs t__main__R(t__doc__RRkRRtunittestRR#RRR'RGRTRURQR`R|RýR"RR%Ri(((s[/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_cookielib.pyt<module>s.    \r            +ÿÿÿKÿÿl