Exemplo n.º 1
0
    def test_refreshes_if_expired(self):
        expected = [
            Proxy('host', 'port', 'code', 'country', 'anonymous', 'type',
                  'source')
        ]

        def func():
            return expected

        pr = ProxyResource(func, -1)

        refreshed, actual = pr.refresh()
        self.assertEqual(True, refreshed)
        self.assertEqual(expected[0], actual[0])

        refreshed, actual = pr.refresh()
        self.assertEqual(True, refreshed)
        self.assertEqual(expected[0], actual[0])
Exemplo n.º 2
0
    def test_doesnt_refresh_if_lock_check(self):
        expected = [
            Proxy('host', 'port', 'code', 'country', 'anonymous', 'type',
                  'source')
        ]

        def func():
            return expected

        pr = ProxyResource(func, 5)

        refreshed, actual = pr.refresh()
        self.assertEqual(True, refreshed)
        self.assertEqual(expected[0], actual[0])

        with patch('proxyscrape.scrapers.time') as time_mock:
            times = [time.time() + 10, -1, 0]
            time_iter = iter(times)
            time_mock.time = lambda: next(time_iter)

            refreshed, actual = pr.refresh()
            self.assertEqual(False, refreshed)
            self.assertIsNone(actual)