@powerhousedao/reactor 5.0.0-staging.8 → 5.0.1-staging.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/dist/src/cache/buffer/ring-buffer.d.ts +37 -0
- package/dist/src/cache/buffer/ring-buffer.d.ts.map +1 -0
- package/dist/src/cache/buffer/ring-buffer.js +69 -0
- package/dist/src/cache/buffer/ring-buffer.js.map +1 -0
- package/dist/src/cache/kysely-write-cache.d.ts +133 -0
- package/dist/src/cache/kysely-write-cache.d.ts.map +1 -0
- package/dist/src/cache/kysely-write-cache.js +375 -0
- package/dist/src/cache/kysely-write-cache.js.map +1 -0
- package/dist/src/cache/lru/lru-tracker.d.ts +15 -0
- package/dist/src/cache/lru/lru-tracker.d.ts.map +1 -0
- package/dist/src/cache/lru/lru-tracker.js +96 -0
- package/dist/src/cache/lru/lru-tracker.js.map +1 -0
- package/dist/src/cache/types.d.ts +42 -0
- package/dist/src/cache/types.d.ts.map +1 -0
- package/dist/src/cache/types.js +2 -0
- package/dist/src/cache/types.js.map +1 -0
- package/dist/src/cache/write/interfaces.d.ts +83 -0
- package/dist/src/cache/write/interfaces.d.ts.map +1 -0
- package/dist/src/cache/write/interfaces.js +2 -0
- package/dist/src/cache/write/interfaces.js.map +1 -0
- package/dist/src/client/reactor-client.d.ts +103 -0
- package/dist/src/client/reactor-client.d.ts.map +1 -0
- package/dist/src/client/reactor-client.js +184 -0
- package/dist/src/client/reactor-client.js.map +1 -0
- package/dist/src/client/types.d.ts +213 -0
- package/dist/src/client/types.d.ts.map +1 -0
- package/dist/src/client/types.js +14 -0
- package/dist/src/client/types.js.map +1 -0
- package/dist/src/core/builder.d.ts +20 -0
- package/dist/src/core/builder.d.ts.map +1 -0
- package/dist/src/core/builder.js +47 -0
- package/dist/src/core/builder.js.map +1 -0
- package/dist/src/{reactor.d.ts → core/reactor.d.ts} +13 -30
- package/dist/src/core/reactor.d.ts.map +1 -0
- package/dist/src/{reactor.js → core/reactor.js} +147 -111
- package/dist/src/core/reactor.js.map +1 -0
- package/dist/src/{interfaces/reactor.d.ts → core/types.d.ts} +7 -7
- package/dist/src/core/types.d.ts.map +1 -0
- package/dist/src/core/types.js +2 -0
- package/dist/src/core/types.js.map +1 -0
- package/dist/src/{utils.d.ts → core/utils.d.ts} +2 -2
- package/dist/src/core/utils.d.ts.map +1 -0
- package/dist/src/core/utils.js.map +1 -0
- package/dist/src/events/event-bus.d.ts +2 -2
- package/dist/src/events/event-bus.d.ts.map +1 -1
- package/dist/src/events/event-bus.js +1 -1
- package/dist/src/events/event-bus.js.map +1 -1
- package/dist/src/events/interfaces.d.ts +1 -1
- package/dist/src/events/interfaces.d.ts.map +1 -1
- package/dist/src/events/types.d.ts +14 -0
- package/dist/src/events/types.d.ts.map +1 -1
- package/dist/src/events/types.js +6 -0
- package/dist/src/events/types.js.map +1 -1
- package/dist/src/executor/interfaces.d.ts +2 -2
- package/dist/src/executor/interfaces.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor-manager.d.ts +5 -1
- package/dist/src/executor/simple-job-executor-manager.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor-manager.js +98 -36
- package/dist/src/executor/simple-job-executor-manager.js.map +1 -1
- package/dist/src/executor/simple-job-executor.d.ts +32 -3
- package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor.js +436 -17
- package/dist/src/executor/simple-job-executor.js.map +1 -1
- package/dist/src/executor/types.d.ts +10 -3
- package/dist/src/executor/types.d.ts.map +1 -1
- package/dist/src/executor/types.js.map +1 -1
- package/dist/src/executor/util.d.ts +47 -0
- package/dist/src/executor/util.d.ts.map +1 -0
- package/dist/src/executor/util.js +113 -0
- package/dist/src/executor/util.js.map +1 -0
- package/dist/src/index.d.ts +23 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +30 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts +15 -0
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts.map +1 -0
- package/dist/src/job-tracker/in-memory-job-tracker.js +78 -0
- package/dist/src/job-tracker/in-memory-job-tracker.js.map +1 -0
- package/dist/src/job-tracker/index.d.ts +3 -0
- package/dist/src/job-tracker/index.d.ts.map +1 -0
- package/dist/src/job-tracker/index.js +2 -0
- package/dist/src/job-tracker/index.js.map +1 -0
- package/dist/src/job-tracker/interfaces.d.ts +41 -0
- package/dist/src/job-tracker/interfaces.d.ts.map +1 -0
- package/dist/src/job-tracker/interfaces.js +2 -0
- package/dist/src/job-tracker/interfaces.js.map +1 -0
- package/dist/src/queue/interfaces.d.ts +1 -1
- package/dist/src/queue/interfaces.d.ts.map +1 -1
- package/dist/src/queue/job-execution-handle.d.ts +2 -1
- package/dist/src/queue/job-execution-handle.d.ts.map +1 -1
- package/dist/src/queue/job-execution-handle.js.map +1 -1
- package/dist/src/queue/queue.d.ts +3 -3
- package/dist/src/queue/queue.d.ts.map +1 -1
- package/dist/src/queue/queue.js +47 -25
- package/dist/src/queue/queue.js.map +1 -1
- package/dist/src/queue/types.d.ts +7 -5
- package/dist/src/queue/types.d.ts.map +1 -1
- package/dist/src/queue/types.js.map +1 -1
- package/dist/src/read-models/coordinator.d.ts +38 -0
- package/dist/src/read-models/coordinator.d.ts.map +1 -0
- package/dist/src/read-models/coordinator.js +62 -0
- package/dist/src/read-models/coordinator.js.map +1 -0
- package/dist/src/read-models/document-view.d.ts +20 -0
- package/dist/src/read-models/document-view.d.ts.map +1 -0
- package/dist/src/read-models/document-view.js +365 -0
- package/dist/src/read-models/document-view.js.map +1 -0
- package/dist/src/read-models/interfaces.d.ts +29 -0
- package/dist/src/read-models/interfaces.d.ts.map +1 -0
- package/dist/src/read-models/interfaces.js +2 -0
- package/dist/src/read-models/interfaces.js.map +1 -0
- package/dist/src/read-models/types.d.ts +46 -0
- package/dist/src/read-models/types.d.ts.map +1 -0
- package/dist/src/read-models/types.js +2 -0
- package/dist/src/read-models/types.js.map +1 -0
- package/dist/src/registry/implementation.js +1 -1
- package/dist/src/registry/implementation.js.map +1 -1
- package/dist/src/shared/awaiter.d.ts +32 -0
- package/dist/src/shared/awaiter.d.ts.map +1 -0
- package/dist/src/shared/awaiter.js +132 -0
- package/dist/src/shared/awaiter.js.map +1 -0
- package/dist/src/shared/errors.d.ts +17 -0
- package/dist/src/shared/errors.d.ts.map +1 -0
- package/dist/src/shared/errors.js +33 -0
- package/dist/src/shared/errors.js.map +1 -0
- package/dist/src/shared/factories.d.ts +1 -1
- package/dist/src/shared/factories.d.ts.map +1 -1
- package/dist/src/shared/types.d.ts +8 -0
- package/dist/src/shared/types.d.ts.map +1 -1
- package/dist/src/shared/types.js +5 -0
- package/dist/src/shared/types.js.map +1 -1
- package/dist/src/signer/passthrough-signer.d.ts +6 -0
- package/dist/src/signer/passthrough-signer.d.ts.map +1 -0
- package/dist/src/signer/passthrough-signer.js +6 -0
- package/dist/src/signer/passthrough-signer.js.map +1 -0
- package/dist/src/signer/types.d.ts +15 -0
- package/dist/src/signer/types.d.ts.map +1 -0
- package/dist/src/signer/types.js +2 -0
- package/dist/src/signer/types.js.map +1 -0
- package/dist/src/storage/interfaces.d.ts +121 -0
- package/dist/src/storage/interfaces.d.ts.map +1 -0
- package/dist/src/storage/interfaces.js +19 -0
- package/dist/src/storage/interfaces.js.map +1 -0
- package/dist/src/storage/kysely/keyframe-store.d.ts +15 -0
- package/dist/src/storage/kysely/keyframe-store.d.ts.map +1 -0
- package/dist/src/storage/kysely/keyframe-store.js +71 -0
- package/dist/src/storage/kysely/keyframe-store.js.map +1 -0
- package/dist/src/storage/kysely/store.d.ts +15 -0
- package/dist/src/storage/kysely/store.d.ts.map +1 -0
- package/dist/src/storage/kysely/store.js +196 -0
- package/dist/src/storage/kysely/store.js.map +1 -0
- package/dist/src/storage/kysely/types.d.ts +39 -0
- package/dist/src/storage/kysely/types.d.ts.map +1 -0
- package/dist/src/storage/kysely/types.js +2 -0
- package/dist/src/storage/kysely/types.js.map +1 -0
- package/dist/src/storage/txn.d.ts +15 -0
- package/dist/src/storage/txn.d.ts.map +1 -0
- package/dist/src/storage/txn.js +41 -0
- package/dist/src/storage/txn.js.map +1 -0
- package/dist/src/subs/default-error-handler.d.ts +13 -0
- package/dist/src/subs/default-error-handler.d.ts.map +1 -0
- package/dist/src/subs/default-error-handler.js +27 -0
- package/dist/src/subs/default-error-handler.js.map +1 -0
- package/dist/src/subs/react-subscription-manager.d.ts +45 -0
- package/dist/src/subs/react-subscription-manager.d.ts.map +1 -0
- package/dist/src/subs/react-subscription-manager.js +185 -0
- package/dist/src/subs/react-subscription-manager.js.map +1 -0
- package/dist/src/subs/types.d.ts +64 -0
- package/dist/src/subs/types.d.ts.map +1 -0
- package/dist/src/subs/types.js +2 -0
- package/dist/src/subs/types.js.map +1 -0
- package/dist/src/utils/reshuffle.d.ts +30 -0
- package/dist/src/utils/reshuffle.d.ts.map +1 -0
- package/dist/src/utils/reshuffle.js +47 -0
- package/dist/src/utils/reshuffle.js.map +1 -0
- package/package.json +15 -9
- package/dist/bench/event-bus.bench.d.ts +0 -2
- package/dist/bench/event-bus.bench.d.ts.map +0 -1
- package/dist/bench/event-bus.bench.js +0 -228
- package/dist/bench/event-bus.bench.js.map +0 -1
- package/dist/bench/queue-only.bench.d.ts +0 -2
- package/dist/bench/queue-only.bench.d.ts.map +0 -1
- package/dist/bench/queue-only.bench.js +0 -46
- package/dist/bench/queue-only.bench.js.map +0 -1
- package/dist/bench/reactor-throughput.bench.d.ts +0 -2
- package/dist/bench/reactor-throughput.bench.d.ts.map +0 -1
- package/dist/bench/reactor-throughput.bench.js +0 -144
- package/dist/bench/reactor-throughput.bench.js.map +0 -1
- package/dist/src/interfaces/reactor.d.ts.map +0 -1
- package/dist/src/interfaces/reactor.js +0 -2
- package/dist/src/interfaces/reactor.js.map +0 -1
- package/dist/src/reactor.d.ts.map +0 -1
- package/dist/src/reactor.js.map +0 -1
- package/dist/src/utils.d.ts.map +0 -1
- package/dist/src/utils.js.map +0 -1
- package/dist/test/event-bus.test.d.ts +0 -2
- package/dist/test/event-bus.test.d.ts.map +0 -1
- package/dist/test/event-bus.test.js +0 -541
- package/dist/test/event-bus.test.js.map +0 -1
- package/dist/test/executor/executor-integration.test.d.ts +0 -2
- package/dist/test/executor/executor-integration.test.d.ts.map +0 -1
- package/dist/test/executor/executor-integration.test.js +0 -287
- package/dist/test/executor/executor-integration.test.js.map +0 -1
- package/dist/test/executor/job-execution-handle.test.d.ts +0 -2
- package/dist/test/executor/job-execution-handle.test.d.ts.map +0 -1
- package/dist/test/executor/job-execution-handle.test.js +0 -272
- package/dist/test/executor/job-execution-handle.test.js.map +0 -1
- package/dist/test/executor/simple-job-executor-manager.test.d.ts +0 -2
- package/dist/test/executor/simple-job-executor-manager.test.d.ts.map +0 -1
- package/dist/test/executor/simple-job-executor-manager.test.js +0 -132
- package/dist/test/executor/simple-job-executor-manager.test.js.map +0 -1
- package/dist/test/executor/simple-job-executor.test.d.ts +0 -2
- package/dist/test/executor/simple-job-executor.test.d.ts.map +0 -1
- package/dist/test/executor/simple-job-executor.test.js +0 -139
- package/dist/test/executor/simple-job-executor.test.js.map +0 -1
- package/dist/test/factories.d.ts +0 -122
- package/dist/test/factories.d.ts.map +0 -1
- package/dist/test/factories.js +0 -319
- package/dist/test/factories.js.map +0 -1
- package/dist/test/integration/document-drive-integration.test.d.ts +0 -2
- package/dist/test/integration/document-drive-integration.test.d.ts.map +0 -1
- package/dist/test/integration/document-drive-integration.test.js +0 -1102
- package/dist/test/integration/document-drive-integration.test.js.map +0 -1
- package/dist/test/integration/reactor-read.test.d.ts +0 -2
- package/dist/test/integration/reactor-read.test.d.ts.map +0 -1
- package/dist/test/integration/reactor-read.test.js +0 -300
- package/dist/test/integration/reactor-read.test.js.map +0 -1
- package/dist/test/queue/queue-integration.test.d.ts +0 -2
- package/dist/test/queue/queue-integration.test.d.ts.map +0 -1
- package/dist/test/queue/queue-integration.test.js +0 -322
- package/dist/test/queue/queue-integration.test.js.map +0 -1
- package/dist/test/queue/queue.test.d.ts +0 -2
- package/dist/test/queue/queue.test.d.ts.map +0 -1
- package/dist/test/queue/queue.test.js +0 -770
- package/dist/test/queue/queue.test.js.map +0 -1
- package/dist/test/registry/registry.test.d.ts +0 -2
- package/dist/test/registry/registry.test.d.ts.map +0 -1
- package/dist/test/registry/registry.test.js +0 -182
- package/dist/test/registry/registry.test.js.map +0 -1
- package/dist/test/utils.test.d.ts +0 -2
- package/dist/test/utils.test.d.ts.map +0 -1
- package/dist/test/utils.test.js +0 -66
- package/dist/test/utils.test.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -11
- package/dist/vitest.config.js.map +0 -1
- /package/dist/src/{utils.js → core/utils.js} +0 -0
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
2
|
-
import { EventBus } from "../../src/events/event-bus.js";
|
|
3
|
-
import { SimpleJobExecutorManager, } from "../../src/executor/simple-job-executor-manager.js";
|
|
4
|
-
import { InMemoryQueue } from "../../src/queue/queue.js";
|
|
5
|
-
describe("SimpleJobExecutorManager", () => {
|
|
6
|
-
let manager;
|
|
7
|
-
let mockExecutors;
|
|
8
|
-
let executorFactory;
|
|
9
|
-
let eventBus;
|
|
10
|
-
let queue;
|
|
11
|
-
// Create a mock executor
|
|
12
|
-
const createMockExecutor = () => {
|
|
13
|
-
const mockExecutor = {
|
|
14
|
-
executeJob: vi.fn().mockResolvedValue({
|
|
15
|
-
job: {},
|
|
16
|
-
success: true,
|
|
17
|
-
duration: 10,
|
|
18
|
-
}),
|
|
19
|
-
};
|
|
20
|
-
mockExecutors.push(mockExecutor);
|
|
21
|
-
return mockExecutor;
|
|
22
|
-
};
|
|
23
|
-
beforeEach(() => {
|
|
24
|
-
mockExecutors = [];
|
|
25
|
-
eventBus = new EventBus();
|
|
26
|
-
queue = new InMemoryQueue(eventBus);
|
|
27
|
-
// Create factory that returns mock executors
|
|
28
|
-
executorFactory = vi.fn(() => createMockExecutor());
|
|
29
|
-
manager = new SimpleJobExecutorManager(executorFactory, eventBus, queue);
|
|
30
|
-
});
|
|
31
|
-
describe("start", () => {
|
|
32
|
-
it("should start with specified number of executors", async () => {
|
|
33
|
-
await manager.start(3);
|
|
34
|
-
const executors = manager.getExecutors();
|
|
35
|
-
expect(executors).toHaveLength(3);
|
|
36
|
-
expect(executorFactory).toHaveBeenCalledTimes(3);
|
|
37
|
-
});
|
|
38
|
-
it("should throw error if already running", async () => {
|
|
39
|
-
await manager.start(2);
|
|
40
|
-
await expect(manager.start(2)).rejects.toThrow("JobExecutorManager is already running");
|
|
41
|
-
});
|
|
42
|
-
it("should throw error for invalid number of executors", async () => {
|
|
43
|
-
await expect(manager.start(0)).rejects.toThrow("Number of executors must be at least 1");
|
|
44
|
-
await expect(manager.start(-1)).rejects.toThrow("Number of executors must be at least 1");
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
describe("stop", () => {
|
|
48
|
-
it("should stop gracefully", async () => {
|
|
49
|
-
await manager.start(3);
|
|
50
|
-
await manager.stop(true);
|
|
51
|
-
const executors = manager.getExecutors();
|
|
52
|
-
expect(executors).toHaveLength(0);
|
|
53
|
-
});
|
|
54
|
-
it("should stop immediately", async () => {
|
|
55
|
-
await manager.start(3);
|
|
56
|
-
await manager.stop(false);
|
|
57
|
-
const executors = manager.getExecutors();
|
|
58
|
-
expect(executors).toHaveLength(0);
|
|
59
|
-
});
|
|
60
|
-
it("should handle stop when not running", async () => {
|
|
61
|
-
await expect(manager.stop()).resolves.not.toThrow();
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
describe("getExecutors", () => {
|
|
65
|
-
it("should return empty array when no executors", () => {
|
|
66
|
-
const executors = manager.getExecutors();
|
|
67
|
-
expect(executors).toEqual([]);
|
|
68
|
-
});
|
|
69
|
-
it("should return all executors", async () => {
|
|
70
|
-
await manager.start(3);
|
|
71
|
-
const executors = manager.getExecutors();
|
|
72
|
-
expect(executors).toHaveLength(3);
|
|
73
|
-
});
|
|
74
|
-
it("should return a copy of executors array", async () => {
|
|
75
|
-
await manager.start(2);
|
|
76
|
-
const executors1 = manager.getExecutors();
|
|
77
|
-
const executors2 = manager.getExecutors();
|
|
78
|
-
expect(executors1).not.toBe(executors2);
|
|
79
|
-
expect(executors1).toEqual(executors2);
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
describe("getStatus", () => {
|
|
83
|
-
it("should return status when not running", () => {
|
|
84
|
-
const status = manager.getStatus();
|
|
85
|
-
expect(status.isRunning).toBe(false);
|
|
86
|
-
expect(status.numExecutors).toBe(0);
|
|
87
|
-
expect(status.activeJobs).toBe(0);
|
|
88
|
-
expect(status.totalJobsProcessed).toBe(0);
|
|
89
|
-
});
|
|
90
|
-
it("should return status when running", async () => {
|
|
91
|
-
await manager.start(3);
|
|
92
|
-
const status = manager.getStatus();
|
|
93
|
-
expect(status.isRunning).toBe(true);
|
|
94
|
-
expect(status.numExecutors).toBe(3);
|
|
95
|
-
expect(status.activeJobs).toBe(0);
|
|
96
|
-
expect(status.totalJobsProcessed).toBe(0);
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
describe("job processing", () => {
|
|
100
|
-
it("should process jobs when they become available", async () => {
|
|
101
|
-
await manager.start(1);
|
|
102
|
-
const job = {
|
|
103
|
-
id: "job-1",
|
|
104
|
-
documentId: "doc-1",
|
|
105
|
-
scope: "global",
|
|
106
|
-
branch: "main",
|
|
107
|
-
operation: {
|
|
108
|
-
action: {
|
|
109
|
-
id: "action-1",
|
|
110
|
-
type: "CREATE",
|
|
111
|
-
scope: "global",
|
|
112
|
-
timestampUtcMs: "123",
|
|
113
|
-
input: {},
|
|
114
|
-
},
|
|
115
|
-
index: 0,
|
|
116
|
-
timestampUtcMs: "123",
|
|
117
|
-
hash: "hash",
|
|
118
|
-
skip: 0,
|
|
119
|
-
},
|
|
120
|
-
createdAt: "123",
|
|
121
|
-
queueHint: [],
|
|
122
|
-
};
|
|
123
|
-
// Enqueue a job
|
|
124
|
-
await queue.enqueue(job);
|
|
125
|
-
// Give the manager time to process
|
|
126
|
-
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
127
|
-
// Check that the executor was called
|
|
128
|
-
expect(mockExecutors[0].executeJob).toHaveBeenCalledWith(job);
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
//# sourceMappingURL=simple-job-executor-manager.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-job-executor-manager.test.js","sourceRoot":"","sources":["../../../test/executor/simple-job-executor-manager.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-job-executor.test.d.ts","sourceRoot":"","sources":["../../../test/executor/simple-job-executor.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { documentModelDocumentModelModule } from "document-model";
|
|
2
|
-
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
3
|
-
import { SimpleJobExecutor } from "../../src/executor/simple-job-executor.js";
|
|
4
|
-
import { createMockDocumentStorage, createMockOperationStorage, createTestRegistry, } from "../factories.js";
|
|
5
|
-
describe("SimpleJobExecutor", () => {
|
|
6
|
-
let executor;
|
|
7
|
-
let registry;
|
|
8
|
-
let mockDocStorage;
|
|
9
|
-
let mockOperationStorage;
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
// Setup registry with real document model
|
|
12
|
-
registry = createTestRegistry([documentModelDocumentModelModule]);
|
|
13
|
-
// Setup mock document storage with additional mock for operations/state structure
|
|
14
|
-
mockDocStorage = createMockDocumentStorage({
|
|
15
|
-
get: vi.fn().mockResolvedValue({
|
|
16
|
-
header: {
|
|
17
|
-
id: "doc-1",
|
|
18
|
-
documentType: "powerhouse/document-model",
|
|
19
|
-
},
|
|
20
|
-
operations: {
|
|
21
|
-
global: [],
|
|
22
|
-
local: [],
|
|
23
|
-
},
|
|
24
|
-
state: {
|
|
25
|
-
global: {},
|
|
26
|
-
local: {},
|
|
27
|
-
},
|
|
28
|
-
}),
|
|
29
|
-
exists: vi.fn().mockResolvedValue(true),
|
|
30
|
-
resolveSlugs: vi.fn().mockResolvedValue([]),
|
|
31
|
-
});
|
|
32
|
-
// Setup mock operation storage
|
|
33
|
-
mockOperationStorage = createMockOperationStorage();
|
|
34
|
-
executor = new SimpleJobExecutor(registry, mockDocStorage, mockOperationStorage);
|
|
35
|
-
});
|
|
36
|
-
describe("executeJob", () => {
|
|
37
|
-
it.skip("should execute a job successfully", async () => {
|
|
38
|
-
// Skip this test as document-model has complex validation requirements
|
|
39
|
-
// The simplified executor concept has been proven with the other tests
|
|
40
|
-
});
|
|
41
|
-
it("should handle document not found", async () => {
|
|
42
|
-
mockDocStorage.get = vi
|
|
43
|
-
.fn()
|
|
44
|
-
.mockRejectedValue(new Error("Document not found"));
|
|
45
|
-
const job = {
|
|
46
|
-
id: "job-2",
|
|
47
|
-
documentId: "missing-doc",
|
|
48
|
-
scope: "global",
|
|
49
|
-
branch: "main",
|
|
50
|
-
operation: {
|
|
51
|
-
action: {
|
|
52
|
-
id: "action-2",
|
|
53
|
-
type: "SET_NAME",
|
|
54
|
-
scope: "global",
|
|
55
|
-
timestampUtcMs: "123",
|
|
56
|
-
input: { name: "Test" },
|
|
57
|
-
},
|
|
58
|
-
index: 0,
|
|
59
|
-
timestampUtcMs: "123",
|
|
60
|
-
hash: "hash",
|
|
61
|
-
skip: 0,
|
|
62
|
-
},
|
|
63
|
-
createdAt: "123",
|
|
64
|
-
queueHint: [],
|
|
65
|
-
};
|
|
66
|
-
const result = await executor.executeJob(job);
|
|
67
|
-
expect(result.success).toBe(false);
|
|
68
|
-
expect(result.error).toBeDefined();
|
|
69
|
-
expect(result.error?.message).toContain("Document not found");
|
|
70
|
-
});
|
|
71
|
-
it("should handle missing reducer", async () => {
|
|
72
|
-
// Mock a document with unknown type
|
|
73
|
-
mockDocStorage.get = vi.fn().mockResolvedValue({
|
|
74
|
-
header: {
|
|
75
|
-
id: "doc-1",
|
|
76
|
-
documentType: "unknown/type",
|
|
77
|
-
},
|
|
78
|
-
operations: { global: [] },
|
|
79
|
-
state: {},
|
|
80
|
-
});
|
|
81
|
-
const job = {
|
|
82
|
-
id: "job-3",
|
|
83
|
-
documentId: "doc-1",
|
|
84
|
-
scope: "global",
|
|
85
|
-
branch: "main",
|
|
86
|
-
operation: {
|
|
87
|
-
action: {
|
|
88
|
-
id: "action-3",
|
|
89
|
-
type: "SOME_ACTION",
|
|
90
|
-
scope: "global",
|
|
91
|
-
timestampUtcMs: "123",
|
|
92
|
-
input: {},
|
|
93
|
-
},
|
|
94
|
-
index: 0,
|
|
95
|
-
timestampUtcMs: "123",
|
|
96
|
-
hash: "hash",
|
|
97
|
-
skip: 0,
|
|
98
|
-
},
|
|
99
|
-
createdAt: "123",
|
|
100
|
-
queueHint: [],
|
|
101
|
-
};
|
|
102
|
-
const result = await executor.executeJob(job);
|
|
103
|
-
expect(result.success).toBe(false);
|
|
104
|
-
expect(result.error).toBeDefined();
|
|
105
|
-
expect(result.error?.message).toContain("Document model module not found");
|
|
106
|
-
});
|
|
107
|
-
it("should handle storage errors", async () => {
|
|
108
|
-
mockDocStorage.get = vi
|
|
109
|
-
.fn()
|
|
110
|
-
.mockRejectedValue(new Error("Storage error"));
|
|
111
|
-
const job = {
|
|
112
|
-
id: "job-4",
|
|
113
|
-
documentId: "doc-1",
|
|
114
|
-
scope: "global",
|
|
115
|
-
branch: "main",
|
|
116
|
-
operation: {
|
|
117
|
-
action: {
|
|
118
|
-
id: "action-4",
|
|
119
|
-
type: "SET_NAME",
|
|
120
|
-
scope: "global",
|
|
121
|
-
timestampUtcMs: "123",
|
|
122
|
-
input: { name: "Test" },
|
|
123
|
-
},
|
|
124
|
-
index: 0,
|
|
125
|
-
timestampUtcMs: "123",
|
|
126
|
-
hash: "hash",
|
|
127
|
-
skip: 0,
|
|
128
|
-
},
|
|
129
|
-
createdAt: "123",
|
|
130
|
-
queueHint: [],
|
|
131
|
-
};
|
|
132
|
-
const result = await executor.executeJob(job);
|
|
133
|
-
expect(result.success).toBe(false);
|
|
134
|
-
expect(result.error).toBeDefined();
|
|
135
|
-
expect(result.error?.message).toContain("Storage error");
|
|
136
|
-
});
|
|
137
|
-
});
|
|
138
|
-
});
|
|
139
|
-
//# sourceMappingURL=simple-job-executor.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-job-executor.test.js","sourceRoot":"","sources":["../../../test/executor/simple-job-executor.test.ts"],"names":[],"mappings":"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"}
|
package/dist/test/factories.d.ts
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
import { MemoryStorage, type BaseDocumentDriveServer } from "document-drive";
|
|
2
|
-
import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive/storage/types";
|
|
3
|
-
import { type Action, type DocumentModelModule, type Operation, type PHDocument } from "document-model";
|
|
4
|
-
import { EventBus } from "../src/events/event-bus.js";
|
|
5
|
-
import type { IEventBus } from "../src/events/interfaces.js";
|
|
6
|
-
import type { IJobExecutor } from "../src/executor/interfaces.js";
|
|
7
|
-
import { SimpleJobExecutorManager } from "../src/executor/simple-job-executor-manager.js";
|
|
8
|
-
import { SimpleJobExecutor } from "../src/executor/simple-job-executor.js";
|
|
9
|
-
import type { IQueue } from "../src/queue/interfaces.js";
|
|
10
|
-
import { InMemoryQueue } from "../src/queue/queue.js";
|
|
11
|
-
import type { Job } from "../src/queue/types.js";
|
|
12
|
-
import { Reactor } from "../src/reactor.js";
|
|
13
|
-
import { DocumentModelRegistry } from "../src/registry/implementation.js";
|
|
14
|
-
import type { IDocumentModelRegistry } from "../src/registry/interfaces.js";
|
|
15
|
-
/**
|
|
16
|
-
* Factory for creating test Job objects
|
|
17
|
-
*/
|
|
18
|
-
export declare function createTestJob(overrides?: Partial<Job>): Job;
|
|
19
|
-
/**
|
|
20
|
-
* Factory for creating minimal Job objects (useful for performance tests)
|
|
21
|
-
*/
|
|
22
|
-
export declare function createMinimalJob(overrides?: Partial<Job>): Job;
|
|
23
|
-
/**
|
|
24
|
-
* Factory for creating test Operation objects
|
|
25
|
-
*/
|
|
26
|
-
export declare function createTestOperation(overrides?: Partial<Operation>): Operation;
|
|
27
|
-
/**
|
|
28
|
-
* Factory for creating minimal Operation objects
|
|
29
|
-
*/
|
|
30
|
-
export declare function createMinimalOperation(overrides?: Partial<Operation>): Operation;
|
|
31
|
-
/**
|
|
32
|
-
* Factory for creating test Action objects
|
|
33
|
-
*/
|
|
34
|
-
export declare function createTestAction(overrides?: Partial<Action>): Action;
|
|
35
|
-
/**
|
|
36
|
-
* Factory for creating minimal Action objects
|
|
37
|
-
*/
|
|
38
|
-
export declare function createMinimalAction(overrides?: Partial<Action>): Action;
|
|
39
|
-
/**
|
|
40
|
-
* Factory for creating specific document model actions
|
|
41
|
-
*/
|
|
42
|
-
export declare function createDocumentModelAction(type: "SET_NAME" | "SET_DESCRIPTION" | "CREATE" | "UPDATE", overrides?: Partial<Action>): Action;
|
|
43
|
-
/**
|
|
44
|
-
* Factory for creating mock PHDocument objects
|
|
45
|
-
*/
|
|
46
|
-
export declare function createDocModelDocument(overrides?: {
|
|
47
|
-
id?: string;
|
|
48
|
-
slug?: string;
|
|
49
|
-
documentType?: string;
|
|
50
|
-
state?: any;
|
|
51
|
-
}): PHDocument;
|
|
52
|
-
/**
|
|
53
|
-
* Factory for creating test EventBus instances
|
|
54
|
-
*/
|
|
55
|
-
export declare function createTestEventBus(): IEventBus;
|
|
56
|
-
/**
|
|
57
|
-
* Factory for creating test Queue instances
|
|
58
|
-
*/
|
|
59
|
-
export declare function createTestQueue(eventBus?: IEventBus): IQueue;
|
|
60
|
-
/**
|
|
61
|
-
* Factory for creating test Registry instances
|
|
62
|
-
*/
|
|
63
|
-
export declare function createTestRegistry(modules?: DocumentModelModule<any>[]): IDocumentModelRegistry;
|
|
64
|
-
/**
|
|
65
|
-
* Factory for creating mock JobExecutor
|
|
66
|
-
*/
|
|
67
|
-
export declare function createMockJobExecutor(overrides?: Partial<IJobExecutor>): IJobExecutor;
|
|
68
|
-
/**
|
|
69
|
-
* Factory for creating mock IDocumentStorage
|
|
70
|
-
*/
|
|
71
|
-
export declare function createMockDocumentStorage(overrides?: Partial<IDocumentStorage>): IDocumentStorage;
|
|
72
|
-
/**
|
|
73
|
-
* Factory for creating mock IDocumentOperationStorage
|
|
74
|
-
*/
|
|
75
|
-
export declare function createMockOperationStorage(overrides?: Partial<IDocumentOperationStorage>): IDocumentOperationStorage;
|
|
76
|
-
/**
|
|
77
|
-
* Factory for creating a complete test reactor setup
|
|
78
|
-
*/
|
|
79
|
-
export declare function createTestReactorSetup(documentModels?: DocumentModelModule<any>[]): Promise<{
|
|
80
|
-
reactor: Reactor;
|
|
81
|
-
driveServer: BaseDocumentDriveServer;
|
|
82
|
-
storage: MemoryStorage;
|
|
83
|
-
eventBus: EventBus;
|
|
84
|
-
queue: InMemoryQueue;
|
|
85
|
-
jobExecutor: SimpleJobExecutor;
|
|
86
|
-
registry: DocumentModelRegistry;
|
|
87
|
-
}>;
|
|
88
|
-
/**
|
|
89
|
-
* Factory for creating SimpleJobExecutorManager with dependencies
|
|
90
|
-
*/
|
|
91
|
-
export declare function createTestJobExecutorManager(queue?: IQueue, eventBus?: IEventBus, executor?: IJobExecutor): {
|
|
92
|
-
manager: SimpleJobExecutorManager;
|
|
93
|
-
queue: IQueue;
|
|
94
|
-
eventBus: IEventBus;
|
|
95
|
-
executor: IJobExecutor;
|
|
96
|
-
};
|
|
97
|
-
/**
|
|
98
|
-
* Factory for creating test data sets
|
|
99
|
-
*/
|
|
100
|
-
export declare function createTestJobSet(count: number, baseOverrides?: Partial<Job>): Job[];
|
|
101
|
-
/**
|
|
102
|
-
* Factory for creating jobs with dependencies
|
|
103
|
-
*/
|
|
104
|
-
export declare function createJobWithDependencies(id: string, dependencies: string[], overrides?: Partial<Job>): Job;
|
|
105
|
-
/**
|
|
106
|
-
* Factory for creating a dependency chain of jobs
|
|
107
|
-
*/
|
|
108
|
-
export declare function createJobDependencyChain(length: number): Job[];
|
|
109
|
-
/**
|
|
110
|
-
* Factory for creating multiple actions for testing
|
|
111
|
-
*/
|
|
112
|
-
export declare function createTestActions(count: number, type?: "SET_NAME" | "SET_DESCRIPTION" | "CREATE" | "UPDATE"): Action[];
|
|
113
|
-
/**
|
|
114
|
-
* Factory for creating mock documents in bulk
|
|
115
|
-
*/
|
|
116
|
-
export declare function createTestDocuments(count: number, baseOverrides?: {
|
|
117
|
-
id?: string;
|
|
118
|
-
slug?: string;
|
|
119
|
-
documentType?: string;
|
|
120
|
-
state?: any;
|
|
121
|
-
}): PHDocument[];
|
|
122
|
-
//# sourceMappingURL=factories.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../test/factories.ts"],"names":[],"mappings":"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"}
|