Beispiel #1
0
    def test_update_failure_next_check(self):
        now = datetime.utcnow()
        record = RepeatRecord(domain=self.domain, next_check=now)
        self.assertIsNone(record.last_checked)

        attempt = record.make_set_next_try_attempt(None)
        record.add_attempt(attempt)
        self.assertTrue(record.last_checked > now)
        self.assertEqual(record.next_check, record.last_checked + MIN_RETRY_WAIT)
Beispiel #2
0
    def test_update_failure_next_check(self):
        now = datetime.utcnow()
        record = RepeatRecord(domain=self.domain, next_check=now)
        self.assertIsNone(record.last_checked)

        attempt = record.make_set_next_try_attempt(None)
        record.add_attempt(attempt)
        self.assertTrue(record.last_checked > now)
        self.assertEqual(record.next_check, record.last_checked + MIN_RETRY_WAIT)
Beispiel #3
0
    def test_success(self):
        one_minute = timedelta(minutes=1)
        rec = RepeatRecord(
            domain=DOMAIN,
            repeater_id=self.rep.get_id,
        )
        attempt = RepeatRecordAttempt(
            datetime=datetime.utcnow() - one_minute,
            success_response='w00t',
            succeeded=True,
        )
        rec.add_attempt(attempt)

        self.assertEqual(rec.repeater.last_success_at, attempt.datetime)
        self.assertEqual(rec.repeater.failure_streak, 0)
Beispiel #4
0
    def test_failure(self):
        one_minute = timedelta(minutes=1)
        rec = RepeatRecord(
            domain=DOMAIN,
            repeater_id=self.rep.get_id,
        )
        attempt = RepeatRecordAttempt(
            datetime=datetime.utcnow() - one_minute,
            failure_reason='oops',
            succeeded=False,
        )
        rec.add_attempt(attempt)

        self.assertIsNone(rec.repeater.last_success_at)
        self.assertEqual(rec.repeater.failure_streak, 1)