@powerhousedao/reactor-mcp 6.0.0-dev.152 → 6.0.0-dev.154
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/cli.d.mts +1 -0
- package/dist/cli.mjs +137 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/index.d.mts +637 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +46 -0
- package/dist/index.mjs.map +1 -0
- package/dist/server-DlxQXYHz.mjs +389 -0
- package/dist/server-DlxQXYHz.mjs.map +1 -0
- package/package.json +16 -9
- package/dist/src/cli.d.ts +0 -2
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -10
- package/dist/src/cli.js.map +0 -1
- package/dist/src/feature-flags.d.ts +0 -2
- package/dist/src/feature-flags.d.ts.map +0 -1
- package/dist/src/feature-flags.js +0 -9
- package/dist/src/feature-flags.js.map +0 -1
- package/dist/src/index.d.ts +0 -5
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -5
- package/dist/src/index.js.map +0 -1
- package/dist/src/logger.d.ts +0 -3
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/logger.js +0 -3
- package/dist/src/logger.js.map +0 -1
- package/dist/src/mcp-routes.d.ts +0 -19
- package/dist/src/mcp-routes.d.ts.map +0 -1
- package/dist/src/mcp-routes.js +0 -50
- package/dist/src/mcp-routes.js.map +0 -1
- package/dist/src/sdk/chat.d.ts +0 -19
- package/dist/src/sdk/chat.d.ts.map +0 -1
- package/dist/src/sdk/chat.js +0 -60
- package/dist/src/sdk/chat.js.map +0 -1
- package/dist/src/server.d.ts +0 -9
- package/dist/src/server.d.ts.map +0 -1
- package/dist/src/server.js +0 -59
- package/dist/src/server.js.map +0 -1
- package/dist/src/stdio/index.d.ts +0 -7
- package/dist/src/stdio/index.d.ts.map +0 -1
- package/dist/src/stdio/index.js +0 -64
- package/dist/src/stdio/index.js.map +0 -1
- package/dist/src/stdio/loader.d.ts +0 -19
- package/dist/src/stdio/loader.d.ts.map +0 -1
- package/dist/src/stdio/loader.js +0 -90
- package/dist/src/stdio/loader.js.map +0 -1
- package/dist/src/tools/index.d.ts +0 -3
- package/dist/src/tools/index.d.ts.map +0 -1
- package/dist/src/tools/index.js +0 -3
- package/dist/src/tools/index.js.map +0 -1
- package/dist/src/tools/reactor.d.ts +0 -567
- package/dist/src/tools/reactor.d.ts.map +0 -1
- package/dist/src/tools/reactor.js +0 -458
- package/dist/src/tools/reactor.js.map +0 -1
- package/dist/src/tools/types.d.ts +0 -24
- package/dist/src/tools/types.d.ts.map +0 -1
- package/dist/src/tools/types.js +0 -2
- package/dist/src/tools/types.js.map +0 -1
- package/dist/src/tools/utils.d.ts +0 -23
- package/dist/src/tools/utils.d.ts.map +0 -1
- package/dist/src/tools/utils.js +0 -99
- package/dist/src/tools/utils.js.map +0 -1
- package/dist/test/reactor.test.d.ts +0 -2
- package/dist/test/reactor.test.d.ts.map +0 -1
- package/dist/test/reactor.test.js +0 -458
- package/dist/test/reactor.test.js.map +0 -1
- package/dist/test/setup-mcp-server.test.d.ts +0 -10
- package/dist/test/setup-mcp-server.test.d.ts.map +0 -1
- package/dist/test/setup-mcp-server.test.js +0 -172
- package/dist/test/setup-mcp-server.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 -9
- package/dist/vitest.config.js.map +0 -1
|
@@ -1,458 +0,0 @@
|
|
|
1
|
-
import { ReactorBuilder, ReactorClientBuilder } from "@powerhousedao/reactor";
|
|
2
|
-
import { createReactorMcpProvider } from "@powerhousedao/reactor-mcp";
|
|
3
|
-
import { driveDocumentModelModule } from "@powerhousedao/shared/document-drive";
|
|
4
|
-
import { documentModelCreateDocument, documentModelDocumentModelModule, } from "document-model";
|
|
5
|
-
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
6
|
-
function getTextContent(result, index = 0) {
|
|
7
|
-
const content = result.content[index];
|
|
8
|
-
return content.type === "text" ? content.text : "";
|
|
9
|
-
}
|
|
10
|
-
// Mock reactor client for unit tests
|
|
11
|
-
const createMockReactorClient = () => {
|
|
12
|
-
const mockClient = {
|
|
13
|
-
get: vi.fn(),
|
|
14
|
-
getDocumentModelModule: vi.fn(),
|
|
15
|
-
getDocumentModelModules: vi.fn().mockResolvedValue({
|
|
16
|
-
results: [],
|
|
17
|
-
options: { cursor: "", limit: 10 },
|
|
18
|
-
}),
|
|
19
|
-
createEmpty: vi.fn(),
|
|
20
|
-
getChildren: vi.fn().mockResolvedValue({
|
|
21
|
-
results: [],
|
|
22
|
-
options: { cursor: "", limit: 10 },
|
|
23
|
-
}),
|
|
24
|
-
deleteDocument: vi.fn(),
|
|
25
|
-
execute: vi.fn(),
|
|
26
|
-
createDocumentInDrive: vi.fn(),
|
|
27
|
-
find: vi.fn().mockResolvedValue({
|
|
28
|
-
results: [],
|
|
29
|
-
options: { cursor: "", limit: 10 },
|
|
30
|
-
}),
|
|
31
|
-
rename: vi.fn(),
|
|
32
|
-
};
|
|
33
|
-
return mockClient;
|
|
34
|
-
};
|
|
35
|
-
// Create a real reactor client for integration tests
|
|
36
|
-
async function createReactorClientModule() {
|
|
37
|
-
const reactorBuilder = new ReactorBuilder().withDocumentModels([
|
|
38
|
-
documentModelDocumentModelModule,
|
|
39
|
-
driveDocumentModelModule,
|
|
40
|
-
]);
|
|
41
|
-
const module = await new ReactorClientBuilder()
|
|
42
|
-
.withReactorBuilder(reactorBuilder)
|
|
43
|
-
.buildModule();
|
|
44
|
-
return module;
|
|
45
|
-
}
|
|
46
|
-
describe("ReactorMcpProvider", () => {
|
|
47
|
-
let mockClient;
|
|
48
|
-
let reactorModule;
|
|
49
|
-
let client;
|
|
50
|
-
beforeEach(async () => {
|
|
51
|
-
reactorModule = await createReactorClientModule();
|
|
52
|
-
client = reactorModule.client;
|
|
53
|
-
mockClient = createMockReactorClient();
|
|
54
|
-
vi.clearAllMocks();
|
|
55
|
-
});
|
|
56
|
-
afterEach(() => {
|
|
57
|
-
reactorModule.reactor.kill();
|
|
58
|
-
});
|
|
59
|
-
describe("getDocument tool", () => {
|
|
60
|
-
it("should retrieve a document successfully", async () => {
|
|
61
|
-
// Create a document using the client
|
|
62
|
-
const document = documentModelCreateDocument();
|
|
63
|
-
await client.create(document);
|
|
64
|
-
const provider = await createReactorMcpProvider({ client });
|
|
65
|
-
const result = await provider.tools.getDocument.callback({
|
|
66
|
-
id: document.header.id,
|
|
67
|
-
});
|
|
68
|
-
expect(result.isError).toBeUndefined();
|
|
69
|
-
expect(result.structuredContent).toMatchObject({
|
|
70
|
-
document: {
|
|
71
|
-
header: expect.objectContaining({
|
|
72
|
-
id: document.header.id,
|
|
73
|
-
documentType: document.header.documentType,
|
|
74
|
-
}),
|
|
75
|
-
},
|
|
76
|
-
});
|
|
77
|
-
});
|
|
78
|
-
it("should handle errors gracefully", async () => {
|
|
79
|
-
const provider = await createReactorMcpProvider({ client });
|
|
80
|
-
const result = await provider.tools.getDocument.callback({
|
|
81
|
-
id: "non-existent-id",
|
|
82
|
-
});
|
|
83
|
-
expect(result.isError).toBe(true);
|
|
84
|
-
expect(getTextContent(result)).toContain("non-existent-id");
|
|
85
|
-
});
|
|
86
|
-
it("should handle non-Error exceptions", async () => {
|
|
87
|
-
const errorMessage = "String error message";
|
|
88
|
-
vi.mocked(mockClient.get).mockRejectedValue(errorMessage);
|
|
89
|
-
const provider = await createReactorMcpProvider({ client: mockClient });
|
|
90
|
-
const result = await provider.tools.getDocument.callback({
|
|
91
|
-
id: "test-id",
|
|
92
|
-
});
|
|
93
|
-
expect(result.isError).toBe(true);
|
|
94
|
-
expect(result.content).toEqual([
|
|
95
|
-
{
|
|
96
|
-
type: "text",
|
|
97
|
-
text: "Error: String error message",
|
|
98
|
-
},
|
|
99
|
-
]);
|
|
100
|
-
});
|
|
101
|
-
});
|
|
102
|
-
describe("createDocument tool", () => {
|
|
103
|
-
it("should create a document successfully", async () => {
|
|
104
|
-
const provider = await createReactorMcpProvider({ client });
|
|
105
|
-
const result = await provider.tools.createDocument.callback({
|
|
106
|
-
documentType: "powerhouse/document-model",
|
|
107
|
-
});
|
|
108
|
-
expect(result.isError).toBeUndefined();
|
|
109
|
-
expect(result.structuredContent).toMatchObject({
|
|
110
|
-
documentId: expect.any(String),
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
it("should create a document in a drive when driveId is provided", async () => {
|
|
114
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
115
|
-
const provider = await createReactorMcpProvider({ client });
|
|
116
|
-
const result = await provider.tools.createDocument.callback({
|
|
117
|
-
documentType: "powerhouse/document-model",
|
|
118
|
-
driveId: drive.header.id,
|
|
119
|
-
});
|
|
120
|
-
expect(result.isError).toBeUndefined();
|
|
121
|
-
expect(result.structuredContent).toMatchObject({
|
|
122
|
-
documentId: expect.any(String),
|
|
123
|
-
});
|
|
124
|
-
// Verify the document was created and can be retrieved
|
|
125
|
-
const documentId = result.structuredContent
|
|
126
|
-
.documentId;
|
|
127
|
-
const doc = await client.get(documentId);
|
|
128
|
-
expect(doc).toBeDefined();
|
|
129
|
-
expect(doc.header.documentType).toBe("powerhouse/document-model");
|
|
130
|
-
});
|
|
131
|
-
it("should create a document in a drive with parentFolder", async () => {
|
|
132
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
133
|
-
// Add a folder to the drive using addActions tool (properly formats actions)
|
|
134
|
-
const folderId = "test-folder-id";
|
|
135
|
-
const provider = await createReactorMcpProvider({ client });
|
|
136
|
-
await provider.tools.addActions.callback({
|
|
137
|
-
documentId: drive.header.id,
|
|
138
|
-
actions: [
|
|
139
|
-
{
|
|
140
|
-
type: "ADD_FOLDER",
|
|
141
|
-
input: { id: folderId, name: "Test Folder" },
|
|
142
|
-
scope: "global",
|
|
143
|
-
},
|
|
144
|
-
],
|
|
145
|
-
});
|
|
146
|
-
const result = await provider.tools.createDocument.callback({
|
|
147
|
-
documentType: "powerhouse/document-model",
|
|
148
|
-
driveId: drive.header.id,
|
|
149
|
-
parentFolder: folderId,
|
|
150
|
-
});
|
|
151
|
-
expect(result.isError).toBeUndefined();
|
|
152
|
-
expect(result.structuredContent).toMatchObject({
|
|
153
|
-
documentId: expect.any(String),
|
|
154
|
-
});
|
|
155
|
-
// Verify the document exists
|
|
156
|
-
const documentId = result.structuredContent
|
|
157
|
-
.documentId;
|
|
158
|
-
const doc = await client.get(documentId);
|
|
159
|
-
expect(doc).toBeDefined();
|
|
160
|
-
expect(doc.header.documentType).toBe("powerhouse/document-model");
|
|
161
|
-
});
|
|
162
|
-
it("should return error for unknown document type with driveId", async () => {
|
|
163
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
164
|
-
const provider = await createReactorMcpProvider({ client });
|
|
165
|
-
const result = await provider.tools.createDocument.callback({
|
|
166
|
-
documentType: "non-existent/type",
|
|
167
|
-
driveId: drive.header.id,
|
|
168
|
-
});
|
|
169
|
-
expect(result.isError).toBe(true);
|
|
170
|
-
expect(getTextContent(result)).toContain("non-existent/type");
|
|
171
|
-
});
|
|
172
|
-
});
|
|
173
|
-
describe("getDocuments tool", () => {
|
|
174
|
-
it("should get documents from a drive", async () => {
|
|
175
|
-
// Create a drive first
|
|
176
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
177
|
-
const provider = await createReactorMcpProvider({ client });
|
|
178
|
-
const result = await provider.tools.getDocuments.callback({
|
|
179
|
-
parentId: drive.header.id,
|
|
180
|
-
});
|
|
181
|
-
expect(result.isError).toBeUndefined();
|
|
182
|
-
expect(result.structuredContent).toMatchObject({
|
|
183
|
-
documentIds: [],
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
});
|
|
187
|
-
describe("deleteDocument tool", () => {
|
|
188
|
-
it("should delete a document successfully", async () => {
|
|
189
|
-
const document = documentModelCreateDocument();
|
|
190
|
-
await client.create(document);
|
|
191
|
-
const provider = await createReactorMcpProvider({ client });
|
|
192
|
-
const result = await provider.tools.deleteDocument.callback({
|
|
193
|
-
documentId: document.header.id,
|
|
194
|
-
});
|
|
195
|
-
expect(result.isError).toBeUndefined();
|
|
196
|
-
expect(result.structuredContent).toMatchObject({
|
|
197
|
-
success: true,
|
|
198
|
-
});
|
|
199
|
-
});
|
|
200
|
-
it("should handle deletion of non-existent document", async () => {
|
|
201
|
-
const provider = await createReactorMcpProvider({ client });
|
|
202
|
-
const result = await provider.tools.deleteDocument.callback({
|
|
203
|
-
documentId: "non-existent-id",
|
|
204
|
-
});
|
|
205
|
-
// The new reactor throws for non-existent documents
|
|
206
|
-
expect(result.structuredContent).toMatchObject({
|
|
207
|
-
success: false,
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
});
|
|
211
|
-
describe("addActions tool", () => {
|
|
212
|
-
it("should add an action to a document", async () => {
|
|
213
|
-
const document = documentModelCreateDocument();
|
|
214
|
-
await client.create(document);
|
|
215
|
-
const provider = await createReactorMcpProvider({ client });
|
|
216
|
-
const action = documentModelDocumentModelModule.actions.setModelName({
|
|
217
|
-
name: "test-doc",
|
|
218
|
-
});
|
|
219
|
-
const result = await provider.tools.addActions.callback({
|
|
220
|
-
documentId: document.header.id,
|
|
221
|
-
actions: [action],
|
|
222
|
-
});
|
|
223
|
-
expect(result.isError).toBeUndefined();
|
|
224
|
-
expect(result.structuredContent).toStrictEqual({
|
|
225
|
-
success: true,
|
|
226
|
-
});
|
|
227
|
-
});
|
|
228
|
-
it("should add multiple actions to a document", async () => {
|
|
229
|
-
const document = documentModelCreateDocument();
|
|
230
|
-
await client.create(document);
|
|
231
|
-
const provider = await createReactorMcpProvider({ client });
|
|
232
|
-
const actions = [
|
|
233
|
-
documentModelDocumentModelModule.actions.setModelName({
|
|
234
|
-
name: "Test Name 1",
|
|
235
|
-
}),
|
|
236
|
-
documentModelDocumentModelModule.actions.setModelName({
|
|
237
|
-
name: "Test Name 2",
|
|
238
|
-
}),
|
|
239
|
-
];
|
|
240
|
-
const result = await provider.tools.addActions.callback({
|
|
241
|
-
documentId: document.header.id,
|
|
242
|
-
actions,
|
|
243
|
-
});
|
|
244
|
-
expect(result.isError).toBeUndefined();
|
|
245
|
-
expect(result.structuredContent).toStrictEqual({
|
|
246
|
-
success: true,
|
|
247
|
-
});
|
|
248
|
-
});
|
|
249
|
-
it("should throw error on invalid action type", async () => {
|
|
250
|
-
const document = documentModelCreateDocument();
|
|
251
|
-
await client.create(document);
|
|
252
|
-
const provider = await createReactorMcpProvider({ client });
|
|
253
|
-
const result = await provider.tools.addActions.callback({
|
|
254
|
-
documentId: document.header.id,
|
|
255
|
-
actions: [
|
|
256
|
-
{
|
|
257
|
-
type: "INVALID_ACTION",
|
|
258
|
-
input: {},
|
|
259
|
-
scope: "global",
|
|
260
|
-
},
|
|
261
|
-
],
|
|
262
|
-
});
|
|
263
|
-
expect(result.isError).toBe(true);
|
|
264
|
-
expect(getTextContent(result)).toContain(`Operation "INVALID_ACTION" is not defined in any module of the document model`);
|
|
265
|
-
});
|
|
266
|
-
it("should throw error on invalid action input", async () => {
|
|
267
|
-
const document = documentModelCreateDocument();
|
|
268
|
-
await client.create(document);
|
|
269
|
-
const provider = await createReactorMcpProvider({ client });
|
|
270
|
-
const result = await provider.tools.addActions.callback({
|
|
271
|
-
documentId: document.header.id,
|
|
272
|
-
actions: [
|
|
273
|
-
{
|
|
274
|
-
type: "SET_MODEL_NAME",
|
|
275
|
-
input: {
|
|
276
|
-
invalidField: "test",
|
|
277
|
-
},
|
|
278
|
-
scope: "global",
|
|
279
|
-
},
|
|
280
|
-
],
|
|
281
|
-
});
|
|
282
|
-
expect(result.isError).toBe(true);
|
|
283
|
-
expect(getTextContent(result)).toContain("Input validation error");
|
|
284
|
-
});
|
|
285
|
-
it("should throw error on action on non-existent document", async () => {
|
|
286
|
-
const provider = await createReactorMcpProvider({ client });
|
|
287
|
-
const result = await provider.tools.addActions.callback({
|
|
288
|
-
documentId: "non-existent-id",
|
|
289
|
-
actions: [
|
|
290
|
-
{
|
|
291
|
-
type: "SET_NAME",
|
|
292
|
-
input: "Test Name",
|
|
293
|
-
scope: "global",
|
|
294
|
-
},
|
|
295
|
-
],
|
|
296
|
-
});
|
|
297
|
-
// Action on non-existent document returns an error
|
|
298
|
-
expect(result.isError).toBe(true);
|
|
299
|
-
expect(getTextContent(result)).toContain("non-existent-id");
|
|
300
|
-
});
|
|
301
|
-
});
|
|
302
|
-
describe("getDrives tool", () => {
|
|
303
|
-
it("should list all drives", async () => {
|
|
304
|
-
await client.createEmpty("powerhouse/document-drive");
|
|
305
|
-
await client.createEmpty("powerhouse/document-drive");
|
|
306
|
-
const provider = await createReactorMcpProvider({ client });
|
|
307
|
-
const result = await provider.tools.getDrives.callback({});
|
|
308
|
-
expect(result.isError).toBeUndefined();
|
|
309
|
-
expect(result.structuredContent).toMatchObject({
|
|
310
|
-
driveIds: expect.any(Array),
|
|
311
|
-
});
|
|
312
|
-
expect(result.structuredContent.driveIds.length).toBeGreaterThanOrEqual(2);
|
|
313
|
-
});
|
|
314
|
-
});
|
|
315
|
-
describe("addDrive tool", () => {
|
|
316
|
-
it("should add a new drive", async () => {
|
|
317
|
-
const provider = await createReactorMcpProvider({ client });
|
|
318
|
-
const result = await provider.tools.addDrive.callback({
|
|
319
|
-
driveInput: {
|
|
320
|
-
global: {
|
|
321
|
-
name: "New Test Drive",
|
|
322
|
-
icon: "test-icon",
|
|
323
|
-
},
|
|
324
|
-
},
|
|
325
|
-
});
|
|
326
|
-
expect(result.isError).toBeUndefined();
|
|
327
|
-
expect(result.structuredContent).toMatchObject({
|
|
328
|
-
driveId: expect.any(String),
|
|
329
|
-
});
|
|
330
|
-
const drive = await client.get(result.structuredContent.driveId);
|
|
331
|
-
expect(drive).toMatchObject({
|
|
332
|
-
header: expect.objectContaining({
|
|
333
|
-
documentType: "powerhouse/document-drive",
|
|
334
|
-
}),
|
|
335
|
-
});
|
|
336
|
-
});
|
|
337
|
-
it("should add a drive with minimal input", async () => {
|
|
338
|
-
const provider = await createReactorMcpProvider({ client });
|
|
339
|
-
const result = await provider.tools.addDrive.callback({
|
|
340
|
-
driveInput: {
|
|
341
|
-
global: {
|
|
342
|
-
name: "Minimal Drive",
|
|
343
|
-
},
|
|
344
|
-
},
|
|
345
|
-
});
|
|
346
|
-
expect(result.isError).toBeUndefined();
|
|
347
|
-
expect(result.structuredContent).toMatchObject({
|
|
348
|
-
driveId: expect.any(String),
|
|
349
|
-
});
|
|
350
|
-
const drive = await client.get(result.structuredContent.driveId);
|
|
351
|
-
expect(drive).toMatchObject({
|
|
352
|
-
header: expect.objectContaining({
|
|
353
|
-
documentType: "powerhouse/document-drive",
|
|
354
|
-
}),
|
|
355
|
-
});
|
|
356
|
-
});
|
|
357
|
-
});
|
|
358
|
-
describe("getDrive tool", () => {
|
|
359
|
-
it("should get a specific drive", async () => {
|
|
360
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
361
|
-
const provider = await createReactorMcpProvider({ client });
|
|
362
|
-
const result = await provider.tools.getDrive.callback({
|
|
363
|
-
driveId: drive.header.id,
|
|
364
|
-
});
|
|
365
|
-
expect(result.isError).toBeUndefined();
|
|
366
|
-
expect(result.structuredContent).toMatchObject({
|
|
367
|
-
drive: expect.objectContaining({
|
|
368
|
-
header: expect.objectContaining({
|
|
369
|
-
documentType: "powerhouse/document-drive",
|
|
370
|
-
}),
|
|
371
|
-
}),
|
|
372
|
-
});
|
|
373
|
-
});
|
|
374
|
-
});
|
|
375
|
-
describe("deleteDrive tool", () => {
|
|
376
|
-
it("should delete a drive successfully", async () => {
|
|
377
|
-
const drive = await client.createEmpty("powerhouse/document-drive");
|
|
378
|
-
const provider = await createReactorMcpProvider({ client });
|
|
379
|
-
const result = await provider.tools.deleteDrive.callback({
|
|
380
|
-
driveId: drive.header.id,
|
|
381
|
-
});
|
|
382
|
-
expect(result.isError).toBeUndefined();
|
|
383
|
-
expect(result.structuredContent).toMatchObject({
|
|
384
|
-
success: true,
|
|
385
|
-
});
|
|
386
|
-
});
|
|
387
|
-
it("should handle deletion of non-existent drive", async () => {
|
|
388
|
-
const provider = await createReactorMcpProvider({ client });
|
|
389
|
-
const result = await provider.tools.deleteDrive.callback({
|
|
390
|
-
driveId: "non-existent-drive-id",
|
|
391
|
-
});
|
|
392
|
-
// The new reactor throws for non-existent documents
|
|
393
|
-
expect(result.structuredContent).toMatchObject({
|
|
394
|
-
success: false,
|
|
395
|
-
});
|
|
396
|
-
});
|
|
397
|
-
});
|
|
398
|
-
describe("addRemoteDrive tool", () => {
|
|
399
|
-
it("should return an error when syncManager is not configured", async () => {
|
|
400
|
-
// No syncManager provided
|
|
401
|
-
const provider = await createReactorMcpProvider({ client });
|
|
402
|
-
const result = await provider.tools.addRemoteDrive.callback({
|
|
403
|
-
url: "https://example.com/remote-drive",
|
|
404
|
-
options: {
|
|
405
|
-
availableOffline: true,
|
|
406
|
-
sharingType: "public",
|
|
407
|
-
pullFilter: {
|
|
408
|
-
branch: ["main"],
|
|
409
|
-
documentId: ["doc1", "doc2"],
|
|
410
|
-
documentType: ["powerhouse/document-model"],
|
|
411
|
-
scope: ["global"],
|
|
412
|
-
},
|
|
413
|
-
pullInterval: 30000,
|
|
414
|
-
},
|
|
415
|
-
});
|
|
416
|
-
expect(result.isError).toBe(true);
|
|
417
|
-
expect(getTextContent(result)).toContain("Remote drive management is not available");
|
|
418
|
-
expect(getTextContent(result)).toContain("SyncManager was not configured");
|
|
419
|
-
});
|
|
420
|
-
});
|
|
421
|
-
describe("getDocumentModels tool", () => {
|
|
422
|
-
it("should list available document models", async () => {
|
|
423
|
-
const provider = await createReactorMcpProvider({ client });
|
|
424
|
-
const result = await provider.tools.getDocumentModels.callback({});
|
|
425
|
-
expect(result.isError).toBeUndefined();
|
|
426
|
-
expect(result.structuredContent).toMatchObject({
|
|
427
|
-
documentModels: expect.any(Array),
|
|
428
|
-
});
|
|
429
|
-
// Should include at least the document model and drive document model
|
|
430
|
-
const models = result.structuredContent.documentModels;
|
|
431
|
-
expect(models.length).toBeGreaterThanOrEqual(2);
|
|
432
|
-
});
|
|
433
|
-
});
|
|
434
|
-
describe("getDocumentModelSchema tool", () => {
|
|
435
|
-
it("should get schema for a document model", async () => {
|
|
436
|
-
const provider = await createReactorMcpProvider({ client });
|
|
437
|
-
const result = await provider.tools.getDocumentModelSchema.callback({
|
|
438
|
-
type: "powerhouse/document-model",
|
|
439
|
-
});
|
|
440
|
-
expect(result.isError).toBeUndefined();
|
|
441
|
-
expect(result.structuredContent).toMatchObject({
|
|
442
|
-
schema: expect.objectContaining({
|
|
443
|
-
name: expect.any(String),
|
|
444
|
-
id: "powerhouse/document-model",
|
|
445
|
-
}),
|
|
446
|
-
});
|
|
447
|
-
});
|
|
448
|
-
it("should return error for non-existent document model", async () => {
|
|
449
|
-
const provider = await createReactorMcpProvider({ client });
|
|
450
|
-
const result = await provider.tools.getDocumentModelSchema.callback({
|
|
451
|
-
type: "non-existent/model",
|
|
452
|
-
});
|
|
453
|
-
expect(result.isError).toBe(true);
|
|
454
|
-
expect(getTextContent(result)).toContain("non-existent/model");
|
|
455
|
-
});
|
|
456
|
-
});
|
|
457
|
-
});
|
|
458
|
-
//# sourceMappingURL=reactor.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactor.test.js","sourceRoot":"","sources":["../../test/reactor.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Unit tests for setupMcpServer (packages/reactor-mcp/src/mcp-routes.ts).
|
|
3
|
-
*
|
|
4
|
-
* Verifies that:
|
|
5
|
-
* - mountNodeRoute is called for POST, GET, and DELETE on /mcp
|
|
6
|
-
* - The GET and DELETE handlers return 405 Method Not Allowed
|
|
7
|
-
* - The POST handler delegates to the MCP transport (via a mock McpServer)
|
|
8
|
-
*/
|
|
9
|
-
export {};
|
|
10
|
-
//# sourceMappingURL=setup-mcp-server.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-mcp-server.test.d.ts","sourceRoot":"","sources":["../../test/setup-mcp-server.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|