Skip to content

Commit 8c204de

Browse files
committed
fix(ci): preserve main cron coverage
1 parent c0a7498 commit 8c204de

1 file changed

Lines changed: 36 additions & 4 deletions

File tree

src/cron/schedule-identity.test.ts

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@ import { cronSchedulingInputsEqual, tryCronScheduleIdentity } from "./schedule-i
33

44
describe("tryCronScheduleIdentity", () => {
55
it("normalizes numeric schedule strings like execution does", () => {
6-
const stringNumericSchedule = {
7-
schedule: { kind: "every", everyMs: "60000", anchorMs: "123" },
8-
} as unknown as Parameters<typeof cronSchedulingInputsEqual>[1];
96
const numeric = tryCronScheduleIdentity({
107
enabled: true,
118
schedule: { kind: "every", everyMs: 60_000, anchorMs: 123 },
@@ -19,7 +16,42 @@ describe("tryCronScheduleIdentity", () => {
1916
expect(
2017
cronSchedulingInputsEqual(
2118
{ schedule: { kind: "every", everyMs: 60_000, anchorMs: 123 } },
22-
stringNumericSchedule,
19+
{
20+
schedule: {
21+
kind: "every",
22+
everyMs: "60000" as unknown as number,
23+
anchorMs: "123" as unknown as number,
24+
},
25+
},
26+
),
27+
).toBe(true);
28+
});
29+
30+
it("normalizes cron stagger identity like execution does", () => {
31+
expect(
32+
cronSchedulingInputsEqual(
33+
{ schedule: { kind: "cron", expr: "*/5 * * * *", staggerMs: 42 } },
34+
{ schedule: { kind: "cron", expr: "*/5 * * * *", staggerMs: 42.8 } },
35+
),
36+
).toBe(true);
37+
38+
expect(
39+
cronSchedulingInputsEqual(
40+
{ schedule: { kind: "cron", expr: "*/5 * * * *", staggerMs: 0 } },
41+
{ schedule: { kind: "cron", expr: "*/5 * * * *", staggerMs: -10 } },
42+
),
43+
).toBe(true);
44+
45+
expect(
46+
cronSchedulingInputsEqual(
47+
{ schedule: { kind: "cron", expr: "*/5 * * * *" } },
48+
{
49+
schedule: {
50+
kind: "cron",
51+
expr: "*/5 * * * *",
52+
staggerMs: "1e3" as unknown as number,
53+
},
54+
},
2355
),
2456
).toBe(true);
2557
});

0 commit comments

Comments
 (0)