mirror of
https://github.com/LightZirconite/Microsoft-Rewards-Bot.git
synced 2026-01-10 17:26:17 +00:00
29 lines
931 B
TypeScript
29 lines
931 B
TypeScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
|
|
import { MobileRetryTracker } from '../src/util/MobileRetryTracker'
|
|
|
|
test('MobileRetryTracker stops retries after configured limit', () => {
|
|
const tracker = new MobileRetryTracker(2)
|
|
|
|
assert.equal(tracker.registerFailure(), true)
|
|
assert.equal(tracker.hasExceeded(), false)
|
|
assert.equal(tracker.getAttemptCount(), 1)
|
|
|
|
assert.equal(tracker.registerFailure(), true)
|
|
assert.equal(tracker.hasExceeded(), false)
|
|
assert.equal(tracker.getAttemptCount(), 2)
|
|
|
|
assert.equal(tracker.registerFailure(), false)
|
|
assert.equal(tracker.hasExceeded(), true)
|
|
assert.equal(tracker.getAttemptCount(), 3)
|
|
})
|
|
|
|
test('MobileRetryTracker normalizes invalid configuration', () => {
|
|
const tracker = new MobileRetryTracker(-3)
|
|
|
|
assert.equal(tracker.registerFailure(), false)
|
|
assert.equal(tracker.hasExceeded(), true)
|
|
assert.equal(tracker.getAttemptCount(), 1)
|
|
})
|