def test_update_store_invalid_id_does_nothing(self): store = Store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(1, proxy) proxy = store.get_proxy() self.assertIsNone(proxy)
def test_get_proxy_returns_proxy_if_any(self): store = Store() id = store.add_store() expected = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {expected, }) actual = store.get_proxy() self.assertEqual(expected, actual)
def test_get_proxy_returns_empty_if_blacklisted(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual = store.get_proxy(blacklist={(proxy[0], proxy[1]), }) self.assertIsNone(actual)
def test_get_proxy_returns_proxy_if_not_filtered(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual = store.get_proxy(filter_opts={'code': {'us', }}) self.assertEqual(actual, proxy)
def test_update_store_updates_proxies(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual = store.get_proxy() self.assertEqual(proxy, actual)
def test_get_proxy_returns_empty_if_filtered_and_blacklisted(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual = store.get_proxy(filter_opts={'country': {'uk', }}, blacklist={(proxy[0], proxy[1]), }) self.assertIsNone(actual)
def test_update_store_clears_if_none(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual1 = store.get_proxy() store.update_store(id, None) actual2 = store.get_proxy() self.assertEqual(proxy, actual1) self.assertIsNone(actual2)
def test_remove_proxy_removes_from_set(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, {proxy, }) actual1 = store.get_proxy() store.remove_proxy(id, proxy) actual2 = store.get_proxy() self.assertEqual(actual1, proxy) self.assertIsNone(actual2)
def test_get_proxies_returns_empty_if_filtered(self): store = Store() id = store.add_store() proxy = Proxy('host', 'source', 'us', 'united states', True, 'type', 'source') store.update_store(id, { proxy, }) actual = store.get_proxies(filter_opts={'code': { 'uk', }}) self.assertIsNone(actual)
def test_get_proxy_returns_empty_if_empty(self): store = Store() store.add_store() proxy = store.get_proxy() self.assertIsNone(proxy)
def test_add_store_returns_id(self): store = Store() id = store.add_store() self.assertIsNotNone(id)
def test_get_proxies_returns_empty_if_no_stores(self): store = Store() proxies = store.get_proxies() self.assertIsNone(proxies)