def test_cookie_store_clear_filter(self): session = Mock() session.http.cookies = requests.cookies.RequestsCookieJar() Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = { "__cookie:test-name:test.se:80:/": self._create_cookie_dict("test-name", "test-value", None), "__cookie:test-name2:test.se:80:/": self._create_cookie_dict("test-name2", "test-value2", None) } plugin = Plugin("http://test.se") # non-empty cookiejar self.assertTrue(len(session.http.cookies.get_dict()) > 0) plugin.clear_cookies(lambda c: c.name.endswith("2")) self.assertSequenceEqual( Plugin.cache.set.mock_calls, [call("__cookie:test-name2:test.se:80:/", None, 0)]) self.assertSequenceEqual( list(map(self._cookie_to_dict, session.http.cookies)), [ self._cookie_to_dict( requests.cookies.create_cookie( "test-name", "test-value", domain="test.se")) ])
def test_cookie_store_load(self): session = Mock() session.http.cookies = requests.cookies.RequestsCookieJar() Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = { "__cookie:test-name:test.se:80:/": self._create_cookie_dict("test-name", "test-value", None) } plugin = Plugin("http://test.se") self.assertSequenceEqual( list(map(self._cookie_to_dict, session.http.cookies)), [self._cookie_to_dict(requests.cookies.create_cookie("test-name", "test-value", domain="test.se"))] )
def test_cookie_store_save(self): session = Mock() session.http.cookies = [ requests.cookies.create_cookie("test-name", "test-value", domain="test.se") ] Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = {} plugin = Plugin("http://test.se") plugin.save_cookies(default_expires=3600) Plugin.cache.set.assert_called_with("__cookie:test-name:test.se:80:/", self._create_cookie_dict("test-name", "test-value", None), 3600)
def test_cookie_store_save_expires(self): with freezegun.freeze_time(lambda: datetime.datetime(2018, 1, 1)): session = Mock() session.http.cookies = [ requests.cookies.create_cookie("test-name", "test-value", domain="test.se", expires=time.time() + 3600, rest={'HttpOnly': None}) ] Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = {} plugin = Plugin("http://test.se") plugin.save_cookies(default_expires=60) Plugin.cache.set.assert_called_with("__cookie:test-name:test.se:80:/", self._create_cookie_dict("test-name", "test-value", 1514768400), 3600)
def test_cookie_store_save_expires(self): with freezegun.freeze_time(datetime.datetime(2018, 1, 1)): session = Mock() session.http.cookies = [ requests.cookies.create_cookie("test-name", "test-value", domain="test.se", expires=time.time() + 3600, rest={'HttpOnly': None}) ] Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = {} plugin = Plugin("http://test.se") plugin.save_cookies(default_expires=60) Plugin.cache.set.assert_called_with("__cookie:test-name:test.se:80:/", self._create_cookie_dict("test-name", "test-value", 1514768400), 3600)
def test_cookie_store_clear(self): session = Mock() session.http.cookies = requests.cookies.RequestsCookieJar() Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = { "__cookie:test-name:test.se:80:/": self._create_cookie_dict("test-name", "test-value", None), "__cookie:test-name2:test.se:80:/": self._create_cookie_dict("test-name2", "test-value2", None) } plugin = Plugin("http://test.se") # non-empty cookiejar self.assertTrue(len(session.http.cookies.get_dict()) > 0) plugin.clear_cookies() self.assertSequenceEqual( Plugin.cache.set.mock_calls, [call("__cookie:test-name:test.se:80:/", None, 0), call("__cookie:test-name2:test.se:80:/", None, 0)]) self.assertSequenceEqual(session.http.cookies, [])
def test_cookie_store_clear_filter(self): session = Mock() session.http.cookies = requests.cookies.RequestsCookieJar() Plugin.bind(session, 'tests.test_plugin') Plugin.cache = Mock() Plugin.cache.get_all.return_value = { "__cookie:test-name:test.se:80:/": self._create_cookie_dict("test-name", "test-value", None), "__cookie:test-name2:test.se:80:/": self._create_cookie_dict("test-name2", "test-value2", None) } plugin = Plugin("http://test.se") # non-empty cookiejar self.assertTrue(len(session.http.cookies.get_dict()) > 0) plugin.clear_cookies(lambda c: c.name.endswith("2")) self.assertSequenceEqual( Plugin.cache.set.mock_calls, [call("__cookie:test-name2:test.se:80:/", None, 0)]) self.assertSequenceEqual( list(map(self._cookie_to_dict, session.http.cookies)), [self._cookie_to_dict(requests.cookies.create_cookie("test-name", "test-value", domain="test.se"))] )
def test_translate_url(url, expected): Plugin.bind(Mock(), "tests.plugins.test_youtube") assert YouTube(url).url == expected
def test_match_url(url, group, expected): Plugin.bind(Mock(), "tests.plugins.test_youtube") plugin = YouTube(url) assert plugin.match is not None assert plugin.match.group(group) == expected
def test_match_url(url, expected): Plugin.bind(Mock(), "tests.plugins.test_filmon") plugin = Filmon(url) assert plugin.match is not None # expected must return [is_group, channel, vod_id] assert list(plugin.match.groups()) == expected