Skip to content

Commit 357b9d1

Browse files
authored
Update test_http_cookiejar.py
1 parent 0415d3f commit 357b9d1

File tree

1 file changed

+49
-10
lines changed

1 file changed

+49
-10
lines changed

Lib/test/test_http_cookiejar.py

Lines changed: 49 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -839,6 +839,19 @@ def test_request_port(self):
839839
req = urllib.request.Request("http://www.acme.com/",
840840
headers={"Host": "www.acme.com:4321"})
841841
self.assertEqual(request_port(req), DEFAULT_HTTP_PORT)
842+
req = urllib.request.Request("http://www.acme.com:",
843+
headers={"Host": "www.acme.com:4321"})
844+
self.assertEqual(request_port(req), DEFAULT_HTTP_PORT)
845+
req = urllib.request.Request("http://www.acme.com:not_a_port",
846+
headers={"Host": "www.acme.com:4321"})
847+
self.assertEqual(request_port(req), DEFAULT_HTTP_PORT)
848+
req = urllib.request.Request("http://[::1]:1234",
849+
headers={"Host": "[::1]:4321"})
850+
self.assertEqual(request_port(req), "1234")
851+
req = urllib.request.Request("http://[::1]",
852+
headers={"Host": "[::1]:4321"})
853+
self.assertEqual(request_port(req), DEFAULT_HTTP_PORT)
854+
842855

843856
def test_request_host(self):
844857
# this request is illegal (RFC2616, 14.2.3)
@@ -1265,41 +1278,67 @@ def test_missing_final_slash(self):
12651278
def test_set_ok_port(self):
12661279
pol = DefaultCookiePolicy()
12671280
c = CookieJar(policy=pol)
1268-
headers = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=1234"]
1281+
headers_with_port_1234 = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=1234"]
1282+
headers_with_default_port = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=80"]
12691283
req = urllib.request.Request("http://127.0.0.1:1234")
1270-
res = FakeResponse(headers, "http://127.0.0.1:1234")
1284+
res = FakeResponse(headers_with_port_1234, "http://127.0.0.1:1234")
12711285
self.assertTrue(pol.set_ok_port(c.make_cookies(res, req)[0], req))
12721286

12731287
req = urllib.request.Request("http://acme.com:1234")
1274-
res = FakeResponse(headers, "http://acme.com:1234")
1288+
res = FakeResponse(headers_with_port_1234, "http://acme.com:1234")
12751289
self.assertTrue(pol.set_ok_port(c.make_cookies(res, req)[0], req))
12761290

12771291
req = urllib.request.Request("http://[::1]:1234")
1278-
res = FakeResponse(headers, "http://[::1]:1234")
1292+
res = FakeResponse(headers_with_port_1234, "http://[::1]:1234")
12791293
self.assertTrue(pol.set_ok_port(c.make_cookies(res, req)[0], req))
12801294

12811295
req = urllib.request.Request("http://[::1]:1235")
1282-
res = FakeResponse(headers, "http://[::1]:1235")
1296+
res = FakeResponse(headers_with_port_1234, "http://[::1]:1235")
1297+
self.assertFalse(pol.set_ok_port(c.make_cookies(res, req)[0], req))
1298+
1299+
req = urllib.request.Request("http://acme.com:")
1300+
res = FakeResponse(headers_with_default_port, "http://acme.com:")
1301+
self.assertTrue(pol.set_ok_port(c.make_cookies(res, req)[0], req))
1302+
res = FakeResponse(headers_with_port_1234, "http://acme.com:")
1303+
self.assertFalse(pol.set_ok_port(c.make_cookies(res, req)[0], req))
1304+
1305+
req = urllib.request.Request("http://acme.com:not_a_port")
1306+
res = FakeResponse(headers_with_default_port, "http://acme.com:not_a_port")
1307+
self.assertTrue(pol.set_ok_port(c.make_cookies(res, req)[0], req))
1308+
res = FakeResponse(headers_with_port_1234, "http://acme.com:not_a_port")
12831309
self.assertFalse(pol.set_ok_port(c.make_cookies(res, req)[0], req))
12841310

12851311
def test_return_ok_port(self):
12861312
pol = DefaultCookiePolicy()
12871313
c = CookieJar(policy=pol)
1288-
headers = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=1234"]
1314+
headers_with_port_1234 = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=1234"]
1315+
headers_with_default_port = ["Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; port=80"]
12891316
req = urllib.request.Request("http://127.0.0.1:1234")
1290-
res = FakeResponse(headers, "http://127.0.0.1:1234")
1317+
res = FakeResponse(headers_with_port_1234, "http://127.0.0.1:1234")
12911318
self.assertTrue(pol.return_ok_port(c.make_cookies(res, req)[0], req))
12921319

12931320
req = urllib.request.Request("http://acme.com:1234")
1294-
res = FakeResponse(headers, "http://acme.com:1234")
1321+
res = FakeResponse(headers_with_port_1234, "http://acme.com:1234")
12951322
self.assertTrue(pol.return_ok_port(c.make_cookies(res, req)[0], req))
12961323

12971324
req = urllib.request.Request("http://[::1]:1234")
1298-
res = FakeResponse(headers, "http://[::1]:1234")
1325+
res = FakeResponse(headers_with_port_1234, "http://[::1]:1234")
12991326
self.assertTrue(pol.return_ok_port(c.make_cookies(res, req)[0], req))
13001327

13011328
req = urllib.request.Request("http://[::1]:1235")
1302-
res = FakeResponse(headers, "http://[::1]:1235")
1329+
res = FakeResponse(headers_with_port_1234, "http://[::1]:1235")
1330+
self.assertFalse(pol.return_ok_port(c.make_cookies(res, req)[0], req))
1331+
1332+
req = urllib.request.Request("http://acme.com:")
1333+
res = FakeResponse(headers_with_default_port, "http://acme.com:")
1334+
self.assertTrue(pol.return_ok_port(c.make_cookies(res, req)[0], req))
1335+
res = FakeResponse(headers_with_port_1234, "http://acme.com:")
1336+
self.assertFalse(pol.return_ok_port(c.make_cookies(res, req)[0], req))
1337+
1338+
req = urllib.request.Request("http://acme.com:not_a_port")
1339+
res = FakeResponse(headers_with_default_port, "http://acme.com:not_a_port")
1340+
self.assertTrue(pol.return_ok_port(c.make_cookies(res, req)[0], req))
1341+
res = FakeResponse(headers_with_port_1234, "http://acme.com:not_a_port")
13031342
self.assertFalse(pol.return_ok_port(c.make_cookies(res, req)[0], req))
13041343

13051344
def test_domain_mirror(self):

0 commit comments

Comments
 (0)