Files
TeleUploader/test/rateLimit.test.ts
T

26 lines
772 B
TypeScript
Raw Normal View History

import { beforeEach, describe, expect, it, spyOn } from 'bun:test';
import logger from '../src/utils/logger';
import { checkRateLimit, cleanupRateLimitCache } from '../src/utils/rateLimit';
2026-05-18 07:01:32 +07:00
// Spy on logger.warn
const warnSpy = spyOn(logger, 'warn');
2026-05-18 07:01:32 +07:00
describe('Rate Limiter', () => {
2026-05-18 07:01:32 +07:00
beforeEach(() => {
warnSpy.mockClear();
});
it('should always allow requests as rate limiter is disabled', () => {
const key = 'user-1';
2026-05-18 07:01:32 +07:00
expect(checkRateLimit(key)).toBe(true);
expect(checkRateLimit(key)).toBe(true);
expect(checkRateLimit(key)).toBe(true);
expect(checkRateLimit(key)).toBe(true);
2026-05-18 07:01:32 +07:00
expect(warnSpy).not.toHaveBeenCalled();
});
it('should no-op on cleanup', () => {
expect(() => cleanupRateLimitCache()).not.toThrow();
2026-05-18 07:01:32 +07:00
});
});