Add tests for accounts login shield and proxy log retention service

- Implement tests for accounts login shield detection, verifying behavior when login fails with HTML JSON parse syntax error.
- Create tests for proxy log retention service, ensuring expired logs are deleted based on retention days and that cleanup is skipped when retention is disabled.
- Add tests for token router cache, validating that route snapshots are maintained within TTL until explicitly invalidated.
- Introduce necessary mock setups and database seeding for comprehensive testing.
This commit is contained in:
cita
2026-03-04 14:59:06 +08:00
parent 536d957a9e
commit 82e9f3b601
18 changed files with 2687 additions and 1942 deletions
@@ -11,6 +11,7 @@ describe('TokenRouter site status guard', () => {
let db: DbModule['db'];
let schema: DbModule['schema'];
let TokenRouter: TokenRouterModule['TokenRouter'];
let invalidateTokenRouterCache: TokenRouterModule['invalidateTokenRouterCache'];
let dataDir = '';
beforeAll(async () => {
@@ -23,6 +24,7 @@ describe('TokenRouter site status guard', () => {
db = dbModule.db;
schema = dbModule.schema;
TokenRouter = tokenRouterModule.TokenRouter;
invalidateTokenRouterCache = tokenRouterModule.invalidateTokenRouterCache;
});
beforeEach(() => {
@@ -33,9 +35,11 @@ describe('TokenRouter site status guard', () => {
db.delete(schema.accountTokens).run();
db.delete(schema.accounts).run();
db.delete(schema.sites).run();
invalidateTokenRouterCache();
});
afterAll(() => {
invalidateTokenRouterCache();
delete process.env.DATA_DIR;
});