feat: add daily cron scheduler for price checks

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Sjoerd de Vries
2026-09-05 15:15:09 +02:00
parent 68cb8d0c08
commit 3b0e824c5b
2 changed files with 31 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
const test = require('node:test');
const assert = require('node:assert/strict');
const { start, SCHEDULE, TIMEZONE } = require('../src/scheduler');
test('start schedules the daily check with the expected cron expression and timezone', () => {
const calls = [];
const fakeCron = {
schedule: (expression, fn, options) => {
calls.push({ expression, fn, options });
return { stop: () => {} };
},
};
const runCheck = async () => {};
start(runCheck, { cron: fakeCron });
assert.equal(calls.length, 1);
assert.equal(calls[0].expression, SCHEDULE);
assert.equal(SCHEDULE, '0 8 * * *');
assert.equal(calls[0].options.timezone, TIMEZONE);
assert.equal(TIMEZONE, 'Europe/Amsterdam');
assert.equal(calls[0].fn, runCheck);
});