mirror of
https://github.com/LightZirconite/Microsoft-Rewards-Bot.git
synced 2026-01-10 17:26:17 +00:00
Added a system for tracking mobile search attempts and updated associated tests
This commit is contained in:
28
tests/mobileRetryTracker.test.js
Normal file
28
tests/mobileRetryTracker.test.js
Normal file
@@ -0,0 +1,28 @@
|
||||
const test = require('node:test')
|
||||
const assert = require('node:assert/strict')
|
||||
|
||||
const { MobileRetryTracker } = require('../dist/util/MobileRetryTracker.js')
|
||||
|
||||
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)
|
||||
})
|
||||
28
tests/mobileRetryTracker.test.ts
Normal file
28
tests/mobileRetryTracker.test.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
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)
|
||||
})
|
||||
Reference in New Issue
Block a user