27 lines
829 B
JavaScript
27 lines
829 B
JavaScript
const test = require('node:test');
|
|
const assert = require('node:assert/strict');
|
|
|
|
const { registerExpiredSessionSweepTask } = require('../src/web/lib/background-tasks/tasks-scheduled/expired-session-sweep');
|
|
|
|
test('expired session sweep registers and deletes expired sessions', async () => {
|
|
let definition = null;
|
|
const queries = [];
|
|
registerExpiredSessionSweepTask({
|
|
backgroundTaskQueue: {
|
|
registerRecurringTask(value) {
|
|
definition = value;
|
|
}
|
|
},
|
|
pool: {
|
|
async query(sql) {
|
|
queries.push(sql);
|
|
return [{ affectedRows: 3 }];
|
|
}
|
|
}
|
|
});
|
|
|
|
assert.equal(definition.key, 'expired-session-sweep');
|
|
assert.equal(definition.intervalMs, 60 * 60 * 1000);
|
|
await definition.run();
|
|
assert.deepEqual(queries, ['DELETE FROM a_sessions WHERE expires_at <= NOW()']);
|
|
}); |