You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
3.6 KiB
99 lines
3.6 KiB
6 years ago
|
import unittest
|
||
|
|
||
|
from websocket._cookiejar import SimpleCookieJar
|
||
|
|
||
|
try:
|
||
|
import Cookie
|
||
|
except:
|
||
|
import http.cookies as Cookie
|
||
|
|
||
|
|
||
|
class CookieJarTest(unittest.TestCase):
|
||
|
def testAdd(self):
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("")
|
||
|
self.assertFalse(cookie_jar.jar, "Cookie with no domain should not be added to the jar")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b")
|
||
|
self.assertFalse(cookie_jar.jar, "Cookie with no domain should not be added to the jar")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; domain=.abc")
|
||
|
self.assertTrue(".abc" in cookie_jar.jar)
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; domain=abc")
|
||
|
self.assertTrue(".abc" in cookie_jar.jar)
|
||
|
self.assertTrue("abc" not in cookie_jar.jar)
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; c=d; domain=abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; c=d; domain=abc")
|
||
|
cookie_jar.add("e=f; domain=abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d; e=f")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; c=d; domain=abc")
|
||
|
cookie_jar.add("e=f; domain=.abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d; e=f")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.add("a=b; c=d; domain=abc")
|
||
|
cookie_jar.add("e=f; domain=xyz")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("xyz"), "e=f")
|
||
|
self.assertEquals(cookie_jar.get("something"), "")
|
||
|
|
||
|
def testSet(self):
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b")
|
||
|
self.assertFalse(cookie_jar.jar, "Cookie with no domain should not be added to the jar")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; domain=.abc")
|
||
|
self.assertTrue(".abc" in cookie_jar.jar)
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; domain=abc")
|
||
|
self.assertTrue(".abc" in cookie_jar.jar)
|
||
|
self.assertTrue("abc" not in cookie_jar.jar)
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; c=d; domain=abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; c=d; domain=abc")
|
||
|
cookie_jar.set("e=f; domain=abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "e=f")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; c=d; domain=abc")
|
||
|
cookie_jar.set("e=f; domain=.abc")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "e=f")
|
||
|
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; c=d; domain=abc")
|
||
|
cookie_jar.set("e=f; domain=xyz")
|
||
|
self.assertEquals(cookie_jar.get("abc"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("xyz"), "e=f")
|
||
|
self.assertEquals(cookie_jar.get("something"), "")
|
||
|
|
||
|
def testGet(self):
|
||
|
cookie_jar = SimpleCookieJar()
|
||
|
cookie_jar.set("a=b; c=d; domain=abc.com")
|
||
|
self.assertEquals(cookie_jar.get("abc.com"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("x.abc.com"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("abc.com.es"), "")
|
||
|
self.assertEquals(cookie_jar.get("xabc.com"), "")
|
||
|
|
||
|
cookie_jar.set("a=b; c=d; domain=.abc.com")
|
||
|
self.assertEquals(cookie_jar.get("abc.com"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("x.abc.com"), "a=b; c=d")
|
||
|
self.assertEquals(cookie_jar.get("abc.com.es"), "")
|
||
|
self.assertEquals(cookie_jar.get("xabc.com"), "")
|