


























@@ -219,9 +219,9 @@ describe("cron store", () => {
219219const backup = JSON.parse(backupRaw);
220220// jobs.json now contains config-only (state stripped to {}).
221221expect(current.jobs[0].id).toBe("job-2");
222-expect(current.jobs[0].state).toEqual({});
222+expect(current.jobs[0].state).toStrictEqual({});
223223expect(backup.jobs[0].id).toBe("job-1");
224-expect(backup.jobs[0].state).toEqual({});
224+expect(backup.jobs[0].state).toStrictEqual({});
225225});
226226227227it("skips backup files for runtime-only state churn", async () => {
@@ -246,7 +246,7 @@ describe("cron store", () => {
246246// jobs.json should NOT be rewritten (only runtime changed).
247247const configRaw = await fs.readFile(store.storePath, "utf-8");
248248const config = JSON.parse(configRaw);
249-expect(config.jobs[0].state).toEqual({});
249+expect(config.jobs[0].state).toStrictEqual({});
250250expect(config.jobs[0]).not.toHaveProperty("updatedAtMs");
251251252252// State file should contain runtime fields.
@@ -326,7 +326,7 @@ describe("cron store", () => {
326326const config = JSON.parse(await fs.readFile(storePath, "utf-8"));
327327expect(Array.isArray(config.jobs)).toBe(true);
328328expect(config.jobs[0].id).toBe("job-1");
329-expect(config.jobs[0].state).toEqual({});
329+expect(config.jobs[0].state).toStrictEqual({});
330330331331const stateFile = JSON.parse(await fs.readFile(statePath, "utf-8"));
332332expect(stateFile.jobs["job-1"].state.nextRunAtMs).toBe(first.jobs[0].createdAtMs + 60_000);
@@ -378,7 +378,7 @@ describe("cron store", () => {
378378const stateRawAfter = await fs.readFile(statePath, "utf-8");
379379380380expect(config.jobs[0].id).toBe("job-1");
381-expect(config.jobs[0].state).toEqual({});
381+expect(config.jobs[0].state).toStrictEqual({});
382382expect(stateRawAfter).toBe(stateRawBefore);
383383expect(renamedDestinations).toContain(store.storePath);
384384expect(renamedDestinations).not.toContain(statePath);
@@ -403,7 +403,7 @@ describe("cron store", () => {
403403const stateFile = JSON.parse(await fs.readFile(statePath, "utf-8"));
404404405405expect(config.jobs[0]).not.toHaveProperty("updatedAtMs");
406-expect(config.jobs[0].state).toEqual({});
406+expect(config.jobs[0].state).toStrictEqual({});
407407expect(stateFile.jobs["job-1"].updatedAtMs).toBe(legacy.jobs[0].updatedAtMs);
408408expect(stateFile.jobs["job-1"].state.nextRunAtMs).toBe(legacy.jobs[0].createdAtMs + 60_000);
409409});
@@ -458,7 +458,7 @@ describe("cron store", () => {
458458const loaded = await loadCronStore(store.storePath);
459459460460expect(loaded.jobs[0]?.updatedAtMs).toBe(payload.jobs[0].createdAtMs);
461-expect(loaded.jobs[0]?.state).toEqual({});
461+expect(loaded.jobs[0]?.state).toStrictEqual({});
462462});
463463464464it("propagates unreadable state sidecar errors", async () => {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。