openworkflow 0.6.0 → 0.6.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 +2 -0
- package/dist/bin/openworkflow.js +0 -0
- package/dist/internal.d.ts +0 -1
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +0 -1
- package/package.json +6 -2
- package/dist/backend-test/backend.testsuite.d.ts +0 -20
- package/dist/backend-test/backend.testsuite.d.ts.map +0 -1
- package/dist/backend-test/backend.testsuite.js +0 -1090
- package/dist/backend-test/index.d.ts +0 -2
- package/dist/backend-test/index.d.ts.map +0 -1
- package/dist/backend-test/index.js +0 -1
- package/dist/backend.testsuite.d.ts +0 -20
- package/dist/backend.testsuite.d.ts.map +0 -1
- package/dist/backend.testsuite.js +0 -1090
- package/dist/chaos.test.d.ts +0 -2
- package/dist/chaos.test.d.ts.map +0 -1
- package/dist/chaos.test.js +0 -88
- package/dist/client.test.d.ts +0 -2
- package/dist/client.test.d.ts.map +0 -1
- package/dist/client.test.js +0 -311
- package/dist/core/duration.test.d.ts +0 -2
- package/dist/core/duration.test.d.ts.map +0 -1
- package/dist/core/duration.test.js +0 -263
- package/dist/core/error.test.d.ts +0 -2
- package/dist/core/error.test.d.ts.map +0 -1
- package/dist/core/error.test.js +0 -60
- package/dist/core/result.test.d.ts +0 -2
- package/dist/core/result.test.d.ts.map +0 -1
- package/dist/core/result.test.js +0 -11
- package/dist/core/step.test.d.ts +0 -2
- package/dist/core/step.test.d.ts.map +0 -1
- package/dist/core/step.test.js +0 -266
- package/dist/core/workflow.test.d.ts +0 -2
- package/dist/core/workflow.test.d.ts.map +0 -1
- package/dist/core/workflow.test.js +0 -113
- package/dist/driver.d.ts +0 -116
- package/dist/driver.d.ts.map +0 -1
- package/dist/driver.js +0 -1
- package/dist/execution.test.d.ts +0 -2
- package/dist/execution.test.d.ts.map +0 -1
- package/dist/execution.test.js +0 -381
- package/dist/factory.d.ts +0 -74
- package/dist/factory.d.ts.map +0 -1
- package/dist/factory.js +0 -72
- package/dist/node-sqlite/backend.d.ts +0 -52
- package/dist/node-sqlite/backend.d.ts.map +0 -1
- package/dist/node-sqlite/backend.js +0 -673
- package/dist/node-sqlite/index.d.ts +0 -11
- package/dist/node-sqlite/index.d.ts.map +0 -1
- package/dist/node-sqlite/index.js +0 -7
- package/dist/node-sqlite/sqlite.d.ts +0 -60
- package/dist/node-sqlite/sqlite.d.ts.map +0 -1
- package/dist/node-sqlite/sqlite.js +0 -246
- package/dist/postgres/backend.test.d.ts +0 -2
- package/dist/postgres/backend.test.d.ts.map +0 -1
- package/dist/postgres/backend.test.js +0 -19
- package/dist/postgres/driver.d.ts +0 -81
- package/dist/postgres/driver.d.ts.map +0 -1
- package/dist/postgres/driver.js +0 -63
- package/dist/postgres/index.d.ts +0 -11
- package/dist/postgres/index.d.ts.map +0 -1
- package/dist/postgres/index.js +0 -7
- package/dist/postgres/internal.d.ts +0 -2
- package/dist/postgres/internal.d.ts.map +0 -1
- package/dist/postgres/internal.js +0 -1
- package/dist/postgres/postgres.test.d.ts +0 -2
- package/dist/postgres/postgres.test.d.ts.map +0 -1
- package/dist/postgres/postgres.test.js +0 -45
- package/dist/postgres/vitest.global-setup.d.ts +0 -3
- package/dist/postgres/vitest.global-setup.d.ts.map +0 -1
- package/dist/postgres/vitest.global-setup.js +0 -7
- package/dist/registry.test.d.ts +0 -2
- package/dist/registry.test.d.ts.map +0 -1
- package/dist/registry.test.js +0 -109
- package/dist/sqlite/backend.test.d.ts +0 -2
- package/dist/sqlite/backend.test.d.ts.map +0 -1
- package/dist/sqlite/backend.test.js +0 -50
- package/dist/sqlite/driver.d.ts +0 -79
- package/dist/sqlite/driver.d.ts.map +0 -1
- package/dist/sqlite/driver.js +0 -62
- package/dist/sqlite/index.d.ts +0 -13
- package/dist/sqlite/index.d.ts.map +0 -1
- package/dist/sqlite/index.js +0 -11
- package/dist/sqlite/internal.d.ts +0 -2
- package/dist/sqlite/internal.d.ts.map +0 -1
- package/dist/sqlite/internal.js +0 -1
- package/dist/sqlite/sqlite.test.d.ts +0 -2
- package/dist/sqlite/sqlite.test.d.ts.map +0 -1
- package/dist/sqlite/sqlite.test.js +0 -171
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/worker.test.d.ts +0 -2
- package/dist/worker.test.d.ts.map +0 -1
- package/dist/worker.test.js +0 -900
- package/dist/workflow.test.d.ts +0 -2
- package/dist/workflow.test.d.ts.map +0 -1
- package/dist/workflow.test.js +0 -84
package/dist/workflow.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.test.d.ts","sourceRoot":"","sources":["../workflow.test.ts"],"names":[],"mappings":""}
|
package/dist/workflow.test.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { defineWorkflow, defineWorkflowSpec, isWorkflow } from "./workflow.js";
|
|
2
|
-
import { describe, expect, test } from "vitest";
|
|
3
|
-
describe("defineWorkflowSpec", () => {
|
|
4
|
-
test("returns spec (passthrough)", () => {
|
|
5
|
-
const spec = { name: "test-workflow" };
|
|
6
|
-
const definedSpec = defineWorkflowSpec(spec);
|
|
7
|
-
expect(definedSpec).toStrictEqual(spec);
|
|
8
|
-
});
|
|
9
|
-
});
|
|
10
|
-
describe("defineWorkflow", () => {
|
|
11
|
-
test("returns workflow with spec and fn", () => {
|
|
12
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
13
|
-
function fn() {
|
|
14
|
-
return { result: "done" };
|
|
15
|
-
}
|
|
16
|
-
const spec = { name: "test-workflow" };
|
|
17
|
-
const workflow = defineWorkflow(spec, fn);
|
|
18
|
-
expect(workflow).toStrictEqual({
|
|
19
|
-
spec,
|
|
20
|
-
fn,
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
describe("isWorkflow", () => {
|
|
25
|
-
test("returns true for valid workflow objects", () => {
|
|
26
|
-
const workflow = defineWorkflow({ name: "test" }, () => "done");
|
|
27
|
-
expect(isWorkflow(workflow)).toBe(true);
|
|
28
|
-
});
|
|
29
|
-
test("returns false for null", () => {
|
|
30
|
-
expect(isWorkflow(null)).toBe(false);
|
|
31
|
-
});
|
|
32
|
-
test("returns false for undefined", () => {
|
|
33
|
-
// eslint-disable-next-line unicorn/no-useless-undefined
|
|
34
|
-
expect(isWorkflow(undefined)).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
test("returns false for primitives", () => {
|
|
37
|
-
expect(isWorkflow("string")).toBe(false);
|
|
38
|
-
expect(isWorkflow(123)).toBe(false);
|
|
39
|
-
expect(isWorkflow(true)).toBe(false);
|
|
40
|
-
});
|
|
41
|
-
test("returns false for objects without spec", () => {
|
|
42
|
-
expect(isWorkflow({ fn: () => "result" })).toBe(false);
|
|
43
|
-
});
|
|
44
|
-
test("returns false for objects without fn", () => {
|
|
45
|
-
expect(isWorkflow({ spec: { name: "test" } })).toBe(false);
|
|
46
|
-
});
|
|
47
|
-
test("returns false for objects with invalid spec", () => {
|
|
48
|
-
expect(isWorkflow({ spec: null, fn: () => "result" })).toBe(false);
|
|
49
|
-
expect(isWorkflow({ spec: "invalid", fn: () => "result" })).toBe(false);
|
|
50
|
-
});
|
|
51
|
-
test("returns false for objects with invalid fn", () => {
|
|
52
|
-
expect(isWorkflow({ spec: { name: "test" }, fn: "not-a-function" })).toBe(false);
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
// --- type checks below -------------------------------------------------------
|
|
56
|
-
// they're unused but useful to ensure that the types work as expected for both
|
|
57
|
-
// defineWorkflowSpec and defineWorkflow
|
|
58
|
-
const inferredTypesSpec = defineWorkflowSpec({
|
|
59
|
-
name: "inferred-types",
|
|
60
|
-
});
|
|
61
|
-
defineWorkflow(inferredTypesSpec, async ({ step }) => {
|
|
62
|
-
await step.run({ name: "step-1" }, () => {
|
|
63
|
-
return "success";
|
|
64
|
-
});
|
|
65
|
-
return { result: "done" };
|
|
66
|
-
});
|
|
67
|
-
const explicitInputTypeSpec = defineWorkflowSpec({
|
|
68
|
-
name: "explicit-input-type",
|
|
69
|
-
});
|
|
70
|
-
defineWorkflow(explicitInputTypeSpec, async ({ step }) => {
|
|
71
|
-
await step.run({ name: "step-1" }, () => {
|
|
72
|
-
return "success";
|
|
73
|
-
});
|
|
74
|
-
return { result: "done" };
|
|
75
|
-
});
|
|
76
|
-
const explicitInputAndOutputTypesSpec = defineWorkflowSpec({
|
|
77
|
-
name: "explicit-input-and-output-types",
|
|
78
|
-
});
|
|
79
|
-
defineWorkflow(explicitInputAndOutputTypesSpec, async ({ step }) => {
|
|
80
|
-
await step.run({ name: "step-1" }, () => {
|
|
81
|
-
return "success";
|
|
82
|
-
});
|
|
83
|
-
return { result: "done" };
|
|
84
|
-
});
|