MCPcopy Index your code
hub / github.com/python/cpython / test_ns_parser

Method test_ns_parser

Lib/test/test_http_cookiejar.py:605–651  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

603 self.assertEqual(cookie2965.version, 1)
604
605 def test_ns_parser(self):
606 c = CookieJar()
607 interact_netscape(c, "http://www.acme.com/",
608 'spam=eggs; DoMain=.acme.com; port; blArgh="feep"')
609 interact_netscape(c, "http://www.acme.com/", 'ni=ni; port=80,8080')
610 interact_netscape(c, "http://www.acme.com:80/", 'nini=ni')
611 interact_netscape(c, "http://www.acme.com:80/", 'foo=bar; expires=')
612 interact_netscape(c, "http://www.acme.com:80/", 'spam=eggs; '
613 'expires="Foo Bar 25 33:22:11 3022"')
614 interact_netscape(c, 'http://www.acme.com/', 'fortytwo=')
615 interact_netscape(c, 'http://www.acme.com/', '=unladenswallow')
616 interact_netscape(c, 'http://www.acme.com/', 'holyhandgrenade')
617
618 cookie = c._cookies[".acme.com"]["/"]["spam"]
619 self.assertEqual(cookie.domain, ".acme.com")
620 self.assertTrue(cookie.domain_specified)
621 self.assertEqual(cookie.port, DEFAULT_HTTP_PORT)
622 self.assertFalse(cookie.port_specified)
623 # case is preserved
624 self.assertTrue(cookie.has_nonstandard_attr("blArgh"))
625 self.assertFalse(cookie.has_nonstandard_attr("blargh"))
626
627 cookie = c._cookies["www.acme.com"]["/"]["ni"]
628 self.assertEqual(cookie.domain, "www.acme.com")
629 self.assertFalse(cookie.domain_specified)
630 self.assertEqual(cookie.port, "80,8080")
631 self.assertTrue(cookie.port_specified)
632
633 cookie = c._cookies["www.acme.com"]["/"]["nini"]
634 self.assertIsNone(cookie.port)
635 self.assertFalse(cookie.port_specified)
636
637 # invalid expires should not cause cookie to be dropped
638 foo = c._cookies["www.acme.com"]["/"]["foo"]
639 spam = c._cookies["www.acme.com"]["/"]["foo"]
640 self.assertIsNone(foo.expires)
641 self.assertIsNone(spam.expires)
642
643 cookie = c._cookies['www.acme.com']['/']['fortytwo']
644 self.assertIsNotNone(cookie.value)
645 self.assertEqual(cookie.value, '')
646
647 # there should be a distinction between a present but empty value
648 # (above) and a value that's entirely missing (below)
649
650 cookie = c._cookies['www.acme.com']['/']['holyhandgrenade']
651 self.assertIsNone(cookie.value)
652
653 def test_ns_parser_special_names(self):
654 # names such as 'expires' are not special in first name=value pair

Callers

nothing calls this directly

Calls 8

CookieJarClass · 0.90
interact_netscapeFunction · 0.85
assertTrueMethod · 0.80
assertFalseMethod · 0.80
has_nonstandard_attrMethod · 0.80
assertIsNoneMethod · 0.80
assertIsNotNoneMethod · 0.80
assertEqualMethod · 0.45

Tested by

no test coverage detected