openworkflow 0.4.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -11
- package/dist/backend-sqlite/backend.d.ts +38 -0
- package/dist/backend-sqlite/backend.d.ts.map +1 -0
- package/dist/backend-sqlite/backend.js +628 -0
- package/dist/backend-sqlite/backend.js.map +1 -0
- package/dist/backend-sqlite/index.d.ts +2 -0
- package/dist/backend-sqlite/index.d.ts.map +1 -0
- package/dist/backend-sqlite/index.js +2 -0
- package/dist/backend-sqlite/index.js.map +1 -0
- package/dist/backend-sqlite/sqlite.d.ts +45 -0
- package/dist/backend-sqlite/sqlite.d.ts.map +1 -0
- package/dist/backend-sqlite/sqlite.js +229 -0
- package/dist/backend-sqlite/sqlite.js.map +1 -0
- package/dist/config/config.d.ts +102 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +29 -0
- package/dist/config/config.js.map +1 -0
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +2 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config.d.ts +28 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +41 -0
- package/dist/config.js.map +1 -0
- package/dist/core/backend-test-suite.d.ts +22 -0
- package/dist/core/backend-test-suite.d.ts.map +1 -0
- package/dist/core/backend-test-suite.js +960 -0
- package/dist/core/backend-test-suite.js.map +1 -0
- package/dist/core/backend.d.ts +103 -0
- package/dist/core/backend.d.ts.map +1 -0
- package/dist/core/backend.js +2 -0
- package/dist/core/backend.js.map +1 -0
- package/dist/core/backend.testsuite.d.ts +21 -0
- package/dist/core/backend.testsuite.d.ts.map +1 -0
- package/dist/core/backend.testsuite.js +958 -0
- package/dist/core/backend.testsuite.js.map +1 -0
- package/dist/{duration.d.ts → core/duration.d.ts} +2 -1
- package/dist/core/duration.d.ts.map +1 -0
- package/dist/{duration.js → core/duration.js} +6 -5
- package/dist/core/duration.js.map +1 -0
- package/dist/core/duration.test.d.ts +2 -0
- package/dist/core/duration.test.d.ts.map +1 -0
- package/dist/core/duration.test.js +264 -0
- package/dist/core/duration.test.js.map +1 -0
- package/dist/core/json.d.ts +5 -0
- package/dist/core/json.d.ts.map +1 -0
- package/dist/core/json.js +2 -0
- package/dist/core/json.js.map +1 -0
- package/dist/core/result.d.ts +12 -0
- package/dist/core/result.d.ts.map +1 -0
- package/dist/core/result.js +7 -0
- package/dist/core/result.js.map +1 -0
- package/dist/core/result.test.d.ts +2 -0
- package/dist/core/result.test.d.ts.map +1 -0
- package/dist/core/result.test.js +11 -0
- package/dist/core/result.test.js.map +1 -0
- package/dist/core/retry.d.ts +16 -0
- package/dist/core/retry.d.ts.map +1 -0
- package/dist/{backend.js → core/retry.js} +1 -3
- package/dist/core/retry.js.map +1 -0
- package/dist/core/retry.test.d.ts +2 -0
- package/dist/core/retry.test.d.ts.map +1 -0
- package/dist/core/retry.test.js +36 -0
- package/dist/core/retry.test.js.map +1 -0
- package/dist/core/schema.d.ts.map +1 -0
- package/dist/core/schema.js.map +1 -0
- package/dist/core/step.d.ts +120 -0
- package/dist/core/step.d.ts.map +1 -0
- package/dist/core/step.js +101 -0
- package/dist/core/step.js.map +1 -0
- package/dist/core/step.test.d.ts +2 -0
- package/dist/core/step.test.d.ts.map +1 -0
- package/dist/core/step.test.js +340 -0
- package/dist/core/step.test.js.map +1 -0
- package/dist/core/workflow.d.ts +108 -0
- package/dist/core/workflow.d.ts.map +1 -0
- package/dist/core/workflow.js +79 -0
- package/dist/core/workflow.js.map +1 -0
- package/dist/core/workflow.test.d.ts +2 -0
- package/dist/core/workflow.test.d.ts.map +1 -0
- package/dist/core/workflow.test.js +216 -0
- package/dist/core/workflow.test.js.map +1 -0
- package/dist/execution/execution.d.ts +91 -0
- package/dist/execution/execution.d.ts.map +1 -0
- package/dist/execution/execution.js +188 -0
- package/dist/execution/execution.js.map +1 -0
- package/dist/execution/execution.test.d.ts +2 -0
- package/dist/execution/execution.test.d.ts.map +1 -0
- package/dist/execution/execution.test.js +382 -0
- package/dist/execution/execution.test.js.map +1 -0
- package/dist/global.d.ts +62 -0
- package/dist/global.d.ts.map +1 -0
- package/dist/global.js +78 -0
- package/dist/global.js.map +1 -0
- package/dist/index.d.ts +9 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/sdk/sdk.d.ts +182 -0
- package/dist/sdk/sdk.d.ts.map +1 -0
- package/dist/sdk/sdk.js +208 -0
- package/dist/sdk/sdk.js.map +1 -0
- package/dist/sdk/sdk.test.d.ts +2 -0
- package/dist/sdk/sdk.test.d.ts.map +1 -0
- package/dist/sdk/sdk.test.js +195 -0
- package/dist/sdk/sdk.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/{worker.d.ts → worker/worker.d.ts} +3 -3
- package/dist/worker/worker.d.ts.map +1 -0
- package/dist/worker/worker.js +208 -0
- package/dist/worker/worker.js.map +1 -0
- package/dist/worker/worker.test.d.ts +2 -0
- package/dist/worker/worker.test.d.ts.map +1 -0
- package/dist/worker/worker.test.js +786 -0
- package/dist/worker/worker.test.js.map +1 -0
- package/package.json +6 -6
- package/dist/backend.d.ts +0 -173
- package/dist/backend.d.ts.map +0 -1
- package/dist/backend.js.map +0 -1
- package/dist/client.d.ts +0 -153
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -151
- package/dist/client.js.map +0 -1
- package/dist/duration.d.ts.map +0 -1
- package/dist/duration.js.map +0 -1
- package/dist/schema.d.ts.map +0 -1
- package/dist/schema.js.map +0 -1
- package/dist/worker.d.ts.map +0 -1
- package/dist/worker.js +0 -384
- package/dist/worker.js.map +0 -1
- /package/dist/{schema.d.ts → core/schema.d.ts} +0 -0
- /package/dist/{schema.js → core/schema.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend.testsuite.js","sourceRoot":"","sources":["../../core/backend.testsuite.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Result } from "./result.js";
|
|
1
2
|
type Years = "years" | "year" | "yrs" | "yr" | "y";
|
|
2
3
|
type Months = "months" | "month" | "mo";
|
|
3
4
|
type Weeks = "weeks" | "week" | "w";
|
|
@@ -14,6 +15,6 @@ export type DurationString = `${number}` | `${number}${UnitAnyCase}` | `${number
|
|
|
14
15
|
* - short units: "1ms", "5s", "30m", "2h", "7d", "3w", "1y"
|
|
15
16
|
* - long units: "1 millisecond", "5 seconds", "30 minutes", "2 hours", "7 days", "3 weeks", "1 year"
|
|
16
17
|
*/
|
|
17
|
-
export declare function parseDuration(str: DurationString): number
|
|
18
|
+
export declare function parseDuration(str: DurationString): Result<number, Error>;
|
|
18
19
|
export {};
|
|
19
20
|
//# sourceMappingURL=duration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.d.ts","sourceRoot":"","sources":["../../core/duration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,KAAK,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC;AACnD,KAAK,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;AACxC,KAAK,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,GAAG,CAAC;AACpC,KAAK,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC;AACjC,KAAK,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC;AACnD,KAAK,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3D,KAAK,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3D,KAAK,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;AAC7E,KAAK,IAAI,GACL,KAAK,GACL,MAAM,GACN,KAAK,GACL,IAAI,GACJ,KAAK,GACL,OAAO,GACP,OAAO,GACP,YAAY,CAAC;AACjB,KAAK,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AACxE,MAAM,MAAM,cAAc,GACtB,GAAG,MAAM,EAAE,GACX,GAAG,MAAM,GAAG,WAAW,EAAE,GACzB,GAAG,MAAM,IAAI,WAAW,EAAE,CAAC;AAE/B;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAiExE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ok, err } from "./result.js";
|
|
1
2
|
/**
|
|
2
3
|
* Parse a duration string into milliseconds. Exmaples:
|
|
3
4
|
* - short units: "1ms", "5s", "30m", "2h", "7d", "3w", "1y"
|
|
@@ -5,14 +6,14 @@
|
|
|
5
6
|
*/
|
|
6
7
|
export function parseDuration(str) {
|
|
7
8
|
if (typeof str !== "string") {
|
|
8
|
-
|
|
9
|
+
return err(new TypeError("Invalid duration format: expected a string but received " + typeof str));
|
|
9
10
|
}
|
|
10
11
|
if (str.length === 0) {
|
|
11
|
-
|
|
12
|
+
return err(new Error('Invalid duration format: ""'));
|
|
12
13
|
}
|
|
13
14
|
const match = /^(-?\.?\d+(?:\.\d+)?)\s*([a-z]+)?$/i.exec(str);
|
|
14
15
|
if (!match?.[1]) {
|
|
15
|
-
|
|
16
|
+
return err(new Error(`Invalid duration format: "${str}"`));
|
|
16
17
|
}
|
|
17
18
|
const numValue = Number.parseFloat(match[1]);
|
|
18
19
|
const unit = match[2]?.toLowerCase() ?? "ms"; // default to ms if not provided
|
|
@@ -54,8 +55,8 @@ export function parseDuration(str) {
|
|
|
54
55
|
};
|
|
55
56
|
const multiplier = multipliers[unit];
|
|
56
57
|
if (multiplier === undefined) {
|
|
57
|
-
|
|
58
|
+
return err(new Error(`Invalid duration format: "${str}"`));
|
|
58
59
|
}
|
|
59
|
-
return numValue * multiplier;
|
|
60
|
+
return ok(numValue * multiplier);
|
|
60
61
|
}
|
|
61
62
|
//# sourceMappingURL=duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../core/duration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAyBtC;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,GAAmB;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,CACR,IAAI,SAAS,CACX,0DAA0D,GAAG,OAAO,GAAG,CACxE,CACF,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,KAAK,GAAG,qCAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE9D,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,6BAA6B,GAAG,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,gCAAgC;IAE9E,MAAM,WAAW,GAA2B;QAC1C,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,EAAE,EAAE,CAAC;QACL,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,IAAI;QACb,GAAG,EAAE,IAAI;QACT,IAAI,EAAE,IAAI;QACV,CAAC,EAAE,IAAI;QACP,MAAM,EAAE,EAAE,GAAG,IAAI;QACjB,OAAO,EAAE,EAAE,GAAG,IAAI;QAClB,GAAG,EAAE,EAAE,GAAG,IAAI;QACd,IAAI,EAAE,EAAE,GAAG,IAAI;QACf,CAAC,EAAE,EAAE,GAAG,IAAI;QACZ,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACpB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACrB,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QAClB,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACnB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACjB,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACxB,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACzB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACtB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QAC7B,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QAC9B,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QAC1B,KAAK,EAAE,aAAa;QACpB,MAAM,EAAE,aAAa;QACrB,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,EAAE,EAAE,cAAc;QAClB,GAAG,EAAE,cAAc;QACnB,CAAC,EAAE,cAAc;KAClB,CAAC;IAEF,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,6BAA6B,GAAG,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,EAAE,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.test.d.ts","sourceRoot":"","sources":["../../core/duration.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { parseDuration } from "./duration.js";
|
|
2
|
+
import { ok, err } from "./result.js";
|
|
3
|
+
import { describe, expect, test } from "vitest";
|
|
4
|
+
describe("parseDuration", () => {
|
|
5
|
+
describe("milliseconds", () => {
|
|
6
|
+
test("parses integer milliseconds", () => {
|
|
7
|
+
expect(parseDuration("100ms")).toEqual(ok(100));
|
|
8
|
+
expect(parseDuration("1ms")).toEqual(ok(1));
|
|
9
|
+
expect(parseDuration("5000ms")).toEqual(ok(5000));
|
|
10
|
+
});
|
|
11
|
+
test("parses decimal milliseconds", () => {
|
|
12
|
+
expect(parseDuration("1.5ms")).toEqual(ok(1.5));
|
|
13
|
+
expect(parseDuration("10.25ms")).toEqual(ok(10.25));
|
|
14
|
+
});
|
|
15
|
+
test("parses milliseconds with long format", () => {
|
|
16
|
+
expect(parseDuration("53 milliseconds")).toEqual(ok(53));
|
|
17
|
+
expect(parseDuration("17 msecs")).toEqual(ok(17));
|
|
18
|
+
expect(parseDuration("100 millisecond")).toEqual(ok(100));
|
|
19
|
+
});
|
|
20
|
+
test("parses numbers without unit as milliseconds", () => {
|
|
21
|
+
expect(parseDuration("100")).toEqual(ok(100));
|
|
22
|
+
expect(parseDuration("1000")).toEqual(ok(1000));
|
|
23
|
+
});
|
|
24
|
+
test("parses negative milliseconds", () => {
|
|
25
|
+
expect(parseDuration("-100ms")).toEqual(ok(-100));
|
|
26
|
+
expect(parseDuration("-100 milliseconds")).toEqual(ok(-100));
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe("seconds", () => {
|
|
30
|
+
test("parses integer seconds", () => {
|
|
31
|
+
expect(parseDuration("1s")).toEqual(ok(1000));
|
|
32
|
+
expect(parseDuration("5s")).toEqual(ok(5000));
|
|
33
|
+
expect(parseDuration("60s")).toEqual(ok(60_000));
|
|
34
|
+
});
|
|
35
|
+
test("parses decimal seconds", () => {
|
|
36
|
+
expect(parseDuration("1.5s")).toEqual(ok(1500));
|
|
37
|
+
expect(parseDuration("0.1s")).toEqual(ok(100));
|
|
38
|
+
expect(parseDuration("2.5s")).toEqual(ok(2500));
|
|
39
|
+
expect(parseDuration("0.001s")).toEqual(ok(1));
|
|
40
|
+
});
|
|
41
|
+
test("parses seconds with long format", () => {
|
|
42
|
+
expect(parseDuration("1 sec")).toEqual(ok(1000));
|
|
43
|
+
expect(parseDuration("5 seconds")).toEqual(ok(5000));
|
|
44
|
+
expect(parseDuration("10 secs")).toEqual(ok(10_000));
|
|
45
|
+
});
|
|
46
|
+
test("parses seconds with leading decimal", () => {
|
|
47
|
+
expect(parseDuration(".5s")).toEqual(ok(500));
|
|
48
|
+
expect(parseDuration(".5ms")).toEqual(ok(0.5));
|
|
49
|
+
});
|
|
50
|
+
test("parses negative seconds", () => {
|
|
51
|
+
expect(parseDuration("-5s")).toEqual(ok(-5000));
|
|
52
|
+
expect(parseDuration("-.5s")).toEqual(ok(-500));
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
describe("minutes", () => {
|
|
56
|
+
test("parses integer minutes", () => {
|
|
57
|
+
expect(parseDuration("1m")).toEqual(ok(60 * 1000));
|
|
58
|
+
expect(parseDuration("5m")).toEqual(ok(5 * 60 * 1000));
|
|
59
|
+
expect(parseDuration("30m")).toEqual(ok(30 * 60 * 1000));
|
|
60
|
+
});
|
|
61
|
+
test("parses decimal minutes", () => {
|
|
62
|
+
expect(parseDuration("1.5m")).toEqual(ok(1.5 * 60 * 1000));
|
|
63
|
+
expect(parseDuration("0.5m")).toEqual(ok(30 * 1000));
|
|
64
|
+
});
|
|
65
|
+
test("parses minutes with long format", () => {
|
|
66
|
+
expect(parseDuration("1 min")).toEqual(ok(60_000));
|
|
67
|
+
expect(parseDuration("5 minutes")).toEqual(ok(5 * 60 * 1000));
|
|
68
|
+
expect(parseDuration("10 mins")).toEqual(ok(10 * 60 * 1000));
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
describe("hours", () => {
|
|
72
|
+
test("parses integer hours", () => {
|
|
73
|
+
expect(parseDuration("1h")).toEqual(ok(60 * 60 * 1000));
|
|
74
|
+
expect(parseDuration("2h")).toEqual(ok(2 * 60 * 60 * 1000));
|
|
75
|
+
expect(parseDuration("24h")).toEqual(ok(24 * 60 * 60 * 1000));
|
|
76
|
+
});
|
|
77
|
+
test("parses decimal hours", () => {
|
|
78
|
+
expect(parseDuration("1.5h")).toEqual(ok(1.5 * 60 * 60 * 1000));
|
|
79
|
+
expect(parseDuration("0.25h")).toEqual(ok(15 * 60 * 1000));
|
|
80
|
+
});
|
|
81
|
+
test("parses hours with long format", () => {
|
|
82
|
+
expect(parseDuration("1 hr")).toEqual(ok(3_600_000));
|
|
83
|
+
expect(parseDuration("2 hours")).toEqual(ok(2 * 60 * 60 * 1000));
|
|
84
|
+
expect(parseDuration("3 hrs")).toEqual(ok(3 * 60 * 60 * 1000));
|
|
85
|
+
expect(parseDuration("1.5 hours")).toEqual(ok(5_400_000));
|
|
86
|
+
});
|
|
87
|
+
test("parses negative hours", () => {
|
|
88
|
+
expect(parseDuration("-1.5h")).toEqual(ok(-5_400_000));
|
|
89
|
+
expect(parseDuration("-10.5h")).toEqual(ok(-37_800_000));
|
|
90
|
+
expect(parseDuration("-.5h")).toEqual(ok(-1_800_000));
|
|
91
|
+
expect(parseDuration("-1.5 hours")).toEqual(ok(-5_400_000));
|
|
92
|
+
expect(parseDuration("-.5 hr")).toEqual(ok(-1_800_000));
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
describe("days", () => {
|
|
96
|
+
test("parses integer days", () => {
|
|
97
|
+
expect(parseDuration("1d")).toEqual(ok(24 * 60 * 60 * 1000));
|
|
98
|
+
expect(parseDuration("7d")).toEqual(ok(7 * 24 * 60 * 60 * 1000));
|
|
99
|
+
expect(parseDuration("30d")).toEqual(ok(30 * 24 * 60 * 60 * 1000));
|
|
100
|
+
});
|
|
101
|
+
test("parses decimal days", () => {
|
|
102
|
+
expect(parseDuration("1.5d")).toEqual(ok(1.5 * 24 * 60 * 60 * 1000));
|
|
103
|
+
expect(parseDuration("0.5d")).toEqual(ok(12 * 60 * 60 * 1000));
|
|
104
|
+
});
|
|
105
|
+
test("parses days with long format", () => {
|
|
106
|
+
expect(parseDuration("2 days")).toEqual(ok(172_800_000));
|
|
107
|
+
expect(parseDuration("1 day")).toEqual(ok(24 * 60 * 60 * 1000));
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
describe("weeks", () => {
|
|
111
|
+
test("parses integer weeks", () => {
|
|
112
|
+
expect(parseDuration("1w")).toEqual(ok(7 * 24 * 60 * 60 * 1000));
|
|
113
|
+
expect(parseDuration("2w")).toEqual(ok(2 * 7 * 24 * 60 * 60 * 1000));
|
|
114
|
+
expect(parseDuration("3w")).toEqual(ok(1_814_400_000));
|
|
115
|
+
});
|
|
116
|
+
test("parses decimal weeks", () => {
|
|
117
|
+
expect(parseDuration("1.5w")).toEqual(ok(1.5 * 7 * 24 * 60 * 60 * 1000));
|
|
118
|
+
expect(parseDuration("0.5w")).toEqual(ok(3.5 * 24 * 60 * 60 * 1000));
|
|
119
|
+
});
|
|
120
|
+
test("parses weeks with long format", () => {
|
|
121
|
+
expect(parseDuration("1 week")).toEqual(ok(604_800_000));
|
|
122
|
+
expect(parseDuration("2 weeks")).toEqual(ok(2 * 7 * 24 * 60 * 60 * 1000));
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
describe("months", () => {
|
|
126
|
+
test("parses integer months", () => {
|
|
127
|
+
expect(parseDuration("1mo")).toEqual(ok(2_629_800_000));
|
|
128
|
+
expect(parseDuration("2mo")).toEqual(ok(2 * 2_629_800_000));
|
|
129
|
+
expect(parseDuration("6mo")).toEqual(ok(6 * 2_629_800_000));
|
|
130
|
+
});
|
|
131
|
+
test("parses decimal months", () => {
|
|
132
|
+
expect(parseDuration("1.5mo")).toEqual(ok(1.5 * 2_629_800_000));
|
|
133
|
+
expect(parseDuration("0.5mo")).toEqual(ok(0.5 * 2_629_800_000));
|
|
134
|
+
});
|
|
135
|
+
test("parses months with long format", () => {
|
|
136
|
+
expect(parseDuration("1 month")).toEqual(ok(2_629_800_000));
|
|
137
|
+
expect(parseDuration("2 months")).toEqual(ok(2 * 2_629_800_000));
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
describe("years", () => {
|
|
141
|
+
test("parses integer years", () => {
|
|
142
|
+
expect(parseDuration("1y")).toEqual(ok(31_557_600_000));
|
|
143
|
+
expect(parseDuration("2y")).toEqual(ok(2 * 31_557_600_000));
|
|
144
|
+
expect(parseDuration("5y")).toEqual(ok(5 * 31_557_600_000));
|
|
145
|
+
});
|
|
146
|
+
test("parses decimal years", () => {
|
|
147
|
+
expect(parseDuration("1.5y")).toEqual(ok(1.5 * 31_557_600_000));
|
|
148
|
+
expect(parseDuration("0.5y")).toEqual(ok(0.5 * 31_557_600_000));
|
|
149
|
+
});
|
|
150
|
+
test("parses years with long format", () => {
|
|
151
|
+
expect(parseDuration("1 year")).toEqual(ok(31_557_600_000));
|
|
152
|
+
expect(parseDuration("2 years")).toEqual(ok(2 * 31_557_600_000));
|
|
153
|
+
expect(parseDuration("1 yr")).toEqual(ok(31_557_600_000));
|
|
154
|
+
expect(parseDuration("2 yrs")).toEqual(ok(2 * 31_557_600_000));
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
describe("case insensitivity", () => {
|
|
158
|
+
test("parses case-insensitive units", () => {
|
|
159
|
+
expect(parseDuration("5S")).toEqual(ok(5000));
|
|
160
|
+
expect(parseDuration("5M")).toEqual(ok(5 * 60 * 1000));
|
|
161
|
+
expect(parseDuration("5H")).toEqual(ok(5 * 60 * 60 * 1000));
|
|
162
|
+
expect(parseDuration("5D")).toEqual(ok(5 * 24 * 60 * 60 * 1000));
|
|
163
|
+
expect(parseDuration("5W")).toEqual(ok(5 * 7 * 24 * 60 * 60 * 1000));
|
|
164
|
+
});
|
|
165
|
+
test("parses case-insensitive long format", () => {
|
|
166
|
+
// @ts-expect-error - mixed-case (not in type but accepted at runtime)
|
|
167
|
+
expect(parseDuration("53 YeArS")).toEqual(ok(1_672_552_800_000));
|
|
168
|
+
// @ts-expect-error - mixed-case (not in type but accepted at runtime)
|
|
169
|
+
expect(parseDuration("53 WeEkS")).toEqual(ok(32_054_400_000));
|
|
170
|
+
// @ts-expect-error - mixed-case (not in type but accepted at runtime)
|
|
171
|
+
expect(parseDuration("53 DaYS")).toEqual(ok(4_579_200_000));
|
|
172
|
+
// @ts-expect-error - mixed-case (not in type but accepted at runtime)
|
|
173
|
+
expect(parseDuration("53 HoUrs")).toEqual(ok(190_800_000));
|
|
174
|
+
// @ts-expect-error - mixed-case (not in type but accepted at runtime)
|
|
175
|
+
expect(parseDuration("53 MiLliSeCondS")).toEqual(ok(53));
|
|
176
|
+
});
|
|
177
|
+
});
|
|
178
|
+
describe("whitespace handling", () => {
|
|
179
|
+
test("parses with single space", () => {
|
|
180
|
+
expect(parseDuration("1 s")).toEqual(ok(1000));
|
|
181
|
+
expect(parseDuration("5 m")).toEqual(ok(5 * 60 * 1000));
|
|
182
|
+
expect(parseDuration("2 h")).toEqual(ok(2 * 60 * 60 * 1000));
|
|
183
|
+
});
|
|
184
|
+
test("parses with multiple spaces", () => {
|
|
185
|
+
expect(parseDuration("1 s")).toEqual(ok(1000));
|
|
186
|
+
expect(parseDuration("5 m")).toEqual(ok(5 * 60 * 1000));
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
describe("edge cases", () => {
|
|
190
|
+
test("parses zero values", () => {
|
|
191
|
+
expect(parseDuration("0ms")).toEqual(ok(0));
|
|
192
|
+
expect(parseDuration("0s")).toEqual(ok(0));
|
|
193
|
+
expect(parseDuration("0m")).toEqual(ok(0));
|
|
194
|
+
expect(parseDuration("0h")).toEqual(ok(0));
|
|
195
|
+
expect(parseDuration("0d")).toEqual(ok(0));
|
|
196
|
+
expect(parseDuration("0")).toEqual(ok(0));
|
|
197
|
+
});
|
|
198
|
+
test("parses very small decimals", () => {
|
|
199
|
+
expect(parseDuration("0.001s")).toEqual(ok(1));
|
|
200
|
+
expect(parseDuration("0.1ms")).toEqual(ok(0.1));
|
|
201
|
+
});
|
|
202
|
+
test("parses large numbers", () => {
|
|
203
|
+
expect(parseDuration("999999ms")).toEqual(ok(999_999));
|
|
204
|
+
expect(parseDuration("1000s")).toEqual(ok(1_000_000));
|
|
205
|
+
});
|
|
206
|
+
});
|
|
207
|
+
describe("error cases", () => {
|
|
208
|
+
test("returns error on invalid format", () => {
|
|
209
|
+
// @ts-expect-error - invalid format
|
|
210
|
+
expect(parseDuration("invalid")).toEqual(err(new Error('Invalid duration format: "invalid"')));
|
|
211
|
+
// @ts-expect-error - invalid format
|
|
212
|
+
expect(parseDuration("10-.5")).toEqual(err(new Error('Invalid duration format: "10-.5"')));
|
|
213
|
+
// @ts-expect-error - invalid format
|
|
214
|
+
expect(parseDuration("foo")).toEqual(err(new Error('Invalid duration format: "foo"')));
|
|
215
|
+
});
|
|
216
|
+
test("returns error on empty string", () => {
|
|
217
|
+
// @ts-expect-error - empty string
|
|
218
|
+
expect(parseDuration("")).toEqual(err(new Error('Invalid duration format: ""')));
|
|
219
|
+
});
|
|
220
|
+
test("returns error on missing number", () => {
|
|
221
|
+
// @ts-expect-error - unit without number
|
|
222
|
+
expect(parseDuration("ms")).toEqual(err(new Error('Invalid duration format: "ms"')));
|
|
223
|
+
// @ts-expect-error - unit without number
|
|
224
|
+
expect(parseDuration("s")).toEqual(err(new Error('Invalid duration format: "s"')));
|
|
225
|
+
// @ts-expect-error - unit without number
|
|
226
|
+
expect(parseDuration("m")).toEqual(err(new Error('Invalid duration format: "m"')));
|
|
227
|
+
// @ts-expect-error - unit without number
|
|
228
|
+
expect(parseDuration("h")).toEqual(err(new Error('Invalid duration format: "h"')));
|
|
229
|
+
});
|
|
230
|
+
test("returns error on unknown unit", () => {
|
|
231
|
+
// @ts-expect-error - unknown unit
|
|
232
|
+
expect(parseDuration("100x")).toEqual(err(new Error('Invalid duration format: "100x"')));
|
|
233
|
+
// @ts-expect-error - unknown unit
|
|
234
|
+
expect(parseDuration("5z")).toEqual(err(new Error('Invalid duration format: "5z"')));
|
|
235
|
+
});
|
|
236
|
+
test("returns error on multiple units", () => {
|
|
237
|
+
// @ts-expect-error - multiple units
|
|
238
|
+
expect(parseDuration("1h30m")).toEqual(err(new Error('Invalid duration format: "1h30m"')));
|
|
239
|
+
// @ts-expect-error - multiple units
|
|
240
|
+
expect(parseDuration("5s100ms")).toEqual(err(new Error('Invalid duration format: "5s100ms"')));
|
|
241
|
+
});
|
|
242
|
+
test("returns error on leading/trailing spaces", () => {
|
|
243
|
+
expect(parseDuration(" 5s")).toEqual(err(new Error('Invalid duration format: " 5s"')));
|
|
244
|
+
// @ts-expect-error - trailing space
|
|
245
|
+
expect(parseDuration("5s ")).toEqual(err(new Error('Invalid duration format: "5s "')));
|
|
246
|
+
});
|
|
247
|
+
test("returns error on special characters", () => {
|
|
248
|
+
// @ts-expect-error - special characters
|
|
249
|
+
expect(parseDuration("5s!")).toEqual(err(new Error('Invalid duration format: "5s!"')));
|
|
250
|
+
// @ts-expect-error - special characters
|
|
251
|
+
expect(parseDuration("@5s")).toEqual(err(new Error('Invalid duration format: "@5s"')));
|
|
252
|
+
});
|
|
253
|
+
test("returns error on non-string types", () => {
|
|
254
|
+
expect(parseDuration(undefined)).toEqual(err(new TypeError("Invalid duration format: expected a string but received undefined")));
|
|
255
|
+
expect(parseDuration(null)).toEqual(err(new TypeError("Invalid duration format: expected a string but received object")));
|
|
256
|
+
expect(parseDuration([])).toEqual(err(new TypeError("Invalid duration format: expected a string but received object")));
|
|
257
|
+
expect(parseDuration({})).toEqual(err(new TypeError("Invalid duration format: expected a string but received object")));
|
|
258
|
+
expect(parseDuration(Number.NaN)).toEqual(err(new TypeError("Invalid duration format: expected a string but received number")));
|
|
259
|
+
expect(parseDuration(Number.POSITIVE_INFINITY)).toEqual(err(new TypeError("Invalid duration format: expected a string but received number")));
|
|
260
|
+
expect(parseDuration(Number.NEGATIVE_INFINITY)).toEqual(err(new TypeError("Invalid duration format: expected a string but received number")));
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
});
|
|
264
|
+
//# sourceMappingURL=duration.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.test.js","sourceRoot":"","sources":["../../core/duration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../core/json.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC7D,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,SAAS,EAAE,GACX;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../core/json.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type Result<T, E> = Ok<T> | Err<E>;
|
|
2
|
+
export interface Ok<T> {
|
|
3
|
+
ok: true;
|
|
4
|
+
value: T;
|
|
5
|
+
}
|
|
6
|
+
export interface Err<E> {
|
|
7
|
+
ok: false;
|
|
8
|
+
error: E;
|
|
9
|
+
}
|
|
10
|
+
export declare function ok<T>(value: T): Ok<T>;
|
|
11
|
+
export declare function err<E>(error: E): Err<E>;
|
|
12
|
+
//# sourceMappingURL=result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../core/result.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAE1C,MAAM,WAAW,EAAE,CAAC,CAAC;IACnB,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,GAAG,CAAC,CAAC;IACpB,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,CAAC,CAAC;CACV;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAErC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAEvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../core/result.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAI,KAAQ;IAC7B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.test.d.ts","sourceRoot":"","sources":["../../core/result.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ok, err } from "./result.js";
|
|
2
|
+
import { describe, expect, test } from "vitest";
|
|
3
|
+
describe("Result helpers", () => {
|
|
4
|
+
test("ok creates success result", () => {
|
|
5
|
+
expect(ok(123)).toEqual({ ok: true, value: 123 });
|
|
6
|
+
});
|
|
7
|
+
test("err creates error result", () => {
|
|
8
|
+
expect(err("oops")).toEqual({ ok: false, error: "oops" });
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=result.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.test.js","sourceRoot":"","sources":["../../core/result.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEhD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const DEFAULT_RETRY_POLICY: {
|
|
2
|
+
readonly initialIntervalMs: 1000;
|
|
3
|
+
readonly backoffCoefficient: 2;
|
|
4
|
+
readonly maximumIntervalMs: number;
|
|
5
|
+
readonly maximumAttempts: number;
|
|
6
|
+
};
|
|
7
|
+
export type RetryPolicy = typeof DEFAULT_RETRY_POLICY;
|
|
8
|
+
/**
|
|
9
|
+
* Calculate the next retry delay using exponential backoff.
|
|
10
|
+
*/
|
|
11
|
+
export declare function calculateRetryDelayMs(attemptNumber: number): number;
|
|
12
|
+
/**
|
|
13
|
+
* Check if an operation should be retried based on the retry policy.
|
|
14
|
+
*/
|
|
15
|
+
export declare function shouldRetry(retryPolicy: RetryPolicy, attemptNumber: number): boolean;
|
|
16
|
+
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../core/retry.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB;;;;;CAKvB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,oBAAoB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,GACpB,OAAO,CAET"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export const DEFAULT_NAMESPACE_ID = "default";
|
|
2
|
-
// -----------------------------------------------------------------------------
|
|
3
1
|
export const DEFAULT_RETRY_POLICY = {
|
|
4
2
|
initialIntervalMs: 1000, // 1s
|
|
5
3
|
backoffCoefficient: 2,
|
|
@@ -20,4 +18,4 @@ export function calculateRetryDelayMs(attemptNumber) {
|
|
|
20
18
|
export function shouldRetry(retryPolicy, attemptNumber) {
|
|
21
19
|
return attemptNumber < retryPolicy.maximumAttempts;
|
|
22
20
|
}
|
|
23
|
-
//# sourceMappingURL=
|
|
21
|
+
//# sourceMappingURL=retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../core/retry.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,iBAAiB,EAAE,IAAI,EAAE,KAAK;IAC9B,kBAAkB,EAAE,CAAC;IACrB,iBAAiB,EAAE,GAAG,GAAG,IAAI,EAAE,OAAO;IACtC,eAAe,EAAE,QAAQ,EAAE,YAAY;CAC/B,CAAC;AAIX;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,aAAqB;IACzD,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAChE,oBAAoB,CAAC;IAEvB,MAAM,SAAS,GACb,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,aAAa,GAAG,CAAC,CAAC,CAAC;IAEtE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,WAAwB,EACxB,aAAqB;IAErB,OAAO,aAAa,GAAG,WAAW,CAAC,eAAe,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.test.d.ts","sourceRoot":"","sources":["../../core/retry.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { calculateRetryDelayMs, DEFAULT_RETRY_POLICY, shouldRetry, } from "./retry.js";
|
|
2
|
+
import { describe, expect, test } from "vitest";
|
|
3
|
+
describe("calculateRetryDelayMs", () => {
|
|
4
|
+
test("calculates exponential backoff correctly", () => {
|
|
5
|
+
expect(calculateRetryDelayMs(1)).toBe(1000);
|
|
6
|
+
expect(calculateRetryDelayMs(2)).toBe(2000);
|
|
7
|
+
expect(calculateRetryDelayMs(3)).toBe(4000);
|
|
8
|
+
expect(calculateRetryDelayMs(4)).toBe(8000);
|
|
9
|
+
expect(calculateRetryDelayMs(5)).toBe(16_000);
|
|
10
|
+
expect(calculateRetryDelayMs(6)).toBe(32_000);
|
|
11
|
+
expect(calculateRetryDelayMs(7)).toBe(64_000);
|
|
12
|
+
});
|
|
13
|
+
test("caps delay at maximum interval", () => {
|
|
14
|
+
const { maximumIntervalMs } = DEFAULT_RETRY_POLICY;
|
|
15
|
+
// attempt 8: 1s * 2^7 = 128s = 128000ms, but capped at 100000ms (max)
|
|
16
|
+
expect(calculateRetryDelayMs(8)).toBe(maximumIntervalMs);
|
|
17
|
+
// attempts 10 & 100: should still be capped
|
|
18
|
+
expect(calculateRetryDelayMs(10)).toBe(maximumIntervalMs);
|
|
19
|
+
expect(calculateRetryDelayMs(100)).toBe(maximumIntervalMs);
|
|
20
|
+
});
|
|
21
|
+
test("handles edge cases", () => {
|
|
22
|
+
// attempt 0: 1s * 2^-1 = 0.5s = 500ms
|
|
23
|
+
expect(calculateRetryDelayMs(0)).toBe(500);
|
|
24
|
+
expect(calculateRetryDelayMs(Infinity)).toBe(100_000);
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
describe("shouldRetry", () => {
|
|
28
|
+
test("always returns true with default policy (infinite retries)", () => {
|
|
29
|
+
const retryPolicy = DEFAULT_RETRY_POLICY;
|
|
30
|
+
expect(shouldRetry(retryPolicy, 1)).toBe(true);
|
|
31
|
+
expect(shouldRetry(retryPolicy, 10)).toBe(true);
|
|
32
|
+
expect(shouldRetry(retryPolicy, 100)).toBe(true);
|
|
33
|
+
expect(shouldRetry(retryPolicy, 1000)).toBe(true);
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=retry.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.test.js","sourceRoot":"","sources":["../../core/retry.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEhD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CAAC;QAEnD,sEAAsE;QACtE,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEzD,4CAA4C;QAC5C,MAAM,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC9B,sCAAsC;QACtC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACtE,MAAM,WAAW,GAAG,oBAAoB,CAAC;QACzC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|