@meetsmore-oss/use-ai-server 1.2.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/agents/AISDKAgent.d.ts +220 -0
- package/dist/agents/AISDKAgent.d.ts.map +1 -0
- package/dist/agents/AISDKAgent.test.d.ts +2 -0
- package/dist/agents/AISDKAgent.test.d.ts.map +1 -0
- package/dist/agents/index.d.ts +7 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/types.d.ts +151 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents.integration.test.d.ts +2 -0
- package/dist/agents.integration.test.d.ts.map +1 -0
- package/dist/configuration.integration.test.d.ts +2 -0
- package/dist/configuration.integration.test.d.ts.map +1 -0
- package/dist/core-architecture.integration.test.d.ts +2 -0
- package/dist/core-architecture.integration.test.d.ts.map +1 -0
- package/dist/error-handling.integration.test.d.ts +2 -0
- package/dist/error-handling.integration.test.d.ts.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +80683 -0
- package/dist/instrumentation.d.ts +15 -0
- package/dist/instrumentation.d.ts.map +1 -0
- package/dist/langfuse.integration.test.d.ts +7 -0
- package/dist/langfuse.integration.test.d.ts.map +1 -0
- package/dist/logger.d.ts +30 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/mcp/RemoteMcpToolsProvider.d.ts +73 -0
- package/dist/mcp/RemoteMcpToolsProvider.d.ts.map +1 -0
- package/dist/mcp/RemoteMcpToolsProvider.test.d.ts +2 -0
- package/dist/mcp/RemoteMcpToolsProvider.test.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +2 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp.integration.test.d.ts +2 -0
- package/dist/mcp.integration.test.d.ts.map +1 -0
- package/dist/message-sanitization.test.d.ts +2 -0
- package/dist/message-sanitization.test.d.ts.map +1 -0
- package/dist/plugins/index.d.ts +2 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/types.d.ts +69 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins.integration.test.d.ts +2 -0
- package/dist/plugins.integration.test.d.ts.map +1 -0
- package/dist/rate-limiting.integration.test.d.ts +2 -0
- package/dist/rate-limiting.integration.test.d.ts.map +1 -0
- package/dist/rateLimiter.d.ts +17 -0
- package/dist/rateLimiter.d.ts.map +1 -0
- package/dist/rateLimiter.test.d.ts +2 -0
- package/dist/rateLimiter.test.d.ts.map +1 -0
- package/dist/server.d.ts +140 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.test.d.ts +2 -0
- package/dist/server.test.d.ts.map +1 -0
- package/dist/src/agents/AISDKAgent.d.ts +220 -0
- package/dist/src/agents/AISDKAgent.d.ts.map +1 -0
- package/dist/src/agents/AISDKAgent.test.d.ts +2 -0
- package/dist/src/agents/AISDKAgent.test.d.ts.map +1 -0
- package/dist/src/agents/index.d.ts +7 -0
- package/dist/src/agents/index.d.ts.map +1 -0
- package/dist/src/agents/types.d.ts +151 -0
- package/dist/src/agents/types.d.ts.map +1 -0
- package/dist/src/agents.integration.test.d.ts +2 -0
- package/dist/src/agents.integration.test.d.ts.map +1 -0
- package/dist/src/configuration.integration.test.d.ts +2 -0
- package/dist/src/configuration.integration.test.d.ts.map +1 -0
- package/dist/src/core-architecture.integration.test.d.ts +2 -0
- package/dist/src/core-architecture.integration.test.d.ts.map +1 -0
- package/dist/src/error-handling.integration.test.d.ts +2 -0
- package/dist/src/error-handling.integration.test.d.ts.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/instrumentation.d.ts +15 -0
- package/dist/src/instrumentation.d.ts.map +1 -0
- package/dist/src/langfuse.integration.test.d.ts +7 -0
- package/dist/src/langfuse.integration.test.d.ts.map +1 -0
- package/dist/src/logger.d.ts +30 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.d.ts +73 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.d.ts.map +1 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.test.d.ts +2 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.test.d.ts.map +1 -0
- package/dist/src/mcp/index.d.ts +2 -0
- package/dist/src/mcp/index.d.ts.map +1 -0
- package/dist/src/mcp.integration.test.d.ts +2 -0
- package/dist/src/mcp.integration.test.d.ts.map +1 -0
- package/dist/src/message-sanitization.test.d.ts +2 -0
- package/dist/src/message-sanitization.test.d.ts.map +1 -0
- package/dist/src/plugins/index.d.ts +2 -0
- package/dist/src/plugins/index.d.ts.map +1 -0
- package/dist/src/plugins/types.d.ts +69 -0
- package/dist/src/plugins/types.d.ts.map +1 -0
- package/dist/src/plugins.integration.test.d.ts +2 -0
- package/dist/src/plugins.integration.test.d.ts.map +1 -0
- package/dist/src/rate-limiting.integration.test.d.ts +2 -0
- package/dist/src/rate-limiting.integration.test.d.ts.map +1 -0
- package/dist/src/rateLimiter.d.ts +17 -0
- package/dist/src/rateLimiter.d.ts.map +1 -0
- package/dist/src/rateLimiter.test.d.ts +2 -0
- package/dist/src/rateLimiter.test.d.ts.map +1 -0
- package/dist/src/server.d.ts +140 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.test.d.ts +2 -0
- package/dist/src/server.test.d.ts.map +1 -0
- package/dist/src/test-preload.d.ts +25 -0
- package/dist/src/test-preload.d.ts.map +1 -0
- package/dist/src/tool-execution.integration.test.d.ts +2 -0
- package/dist/src/tool-execution.integration.test.d.ts.map +1 -0
- package/dist/src/types.d.ts +60 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +6 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/patternMatcher.d.ts +41 -0
- package/dist/src/utils/patternMatcher.d.ts.map +1 -0
- package/dist/src/utils/patternMatcher.test.d.ts +2 -0
- package/dist/src/utils/patternMatcher.test.d.ts.map +1 -0
- package/dist/src/utils/toolConverter.d.ts +22 -0
- package/dist/src/utils/toolConverter.d.ts.map +1 -0
- package/dist/src/utils/toolFilters.d.ts +101 -0
- package/dist/src/utils/toolFilters.d.ts.map +1 -0
- package/dist/test/integration-test-utils.d.ts +203 -0
- package/dist/test/integration-test-utils.d.ts.map +1 -0
- package/dist/test/test-utils.d.ts +104 -0
- package/dist/test/test-utils.d.ts.map +1 -0
- package/dist/test-preload.d.ts +25 -0
- package/dist/test-preload.d.ts.map +1 -0
- package/dist/tool-execution.integration.test.d.ts +2 -0
- package/dist/tool-execution.integration.test.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +60 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/patternMatcher.d.ts +41 -0
- package/dist/utils/patternMatcher.d.ts.map +1 -0
- package/dist/utils/patternMatcher.test.d.ts +2 -0
- package/dist/utils/patternMatcher.test.d.ts.map +1 -0
- package/dist/utils/toolConverter.d.ts +22 -0
- package/dist/utils/toolConverter.d.ts.map +1 -0
- package/dist/utils/toolFilters.d.ts +101 -0
- package/dist/utils/toolFilters.d.ts.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server Integration Test Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for server integration tests to reduce code duplication.
|
|
5
|
+
*/
|
|
6
|
+
import type { Socket } from 'socket.io-client';
|
|
7
|
+
import { MockLanguageModelV3, simulateReadableStream } from 'ai/test';
|
|
8
|
+
import { AISDKAgent } from '../src/agents/AISDKAgent';
|
|
9
|
+
import type { UseAIServerConfig } from '../src/types';
|
|
10
|
+
import { UseAIServer } from '../src/server';
|
|
11
|
+
/**
|
|
12
|
+
* Helper to create streaming chunks for a text response
|
|
13
|
+
*/
|
|
14
|
+
declare function createTextStreamChunks(text: string): ({
|
|
15
|
+
type: "text-start";
|
|
16
|
+
id: string;
|
|
17
|
+
delta?: undefined;
|
|
18
|
+
finishReason?: undefined;
|
|
19
|
+
usage?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
type: "text-delta";
|
|
22
|
+
id: string;
|
|
23
|
+
delta: string;
|
|
24
|
+
finishReason?: undefined;
|
|
25
|
+
usage?: undefined;
|
|
26
|
+
} | {
|
|
27
|
+
type: "text-end";
|
|
28
|
+
id: string;
|
|
29
|
+
delta?: undefined;
|
|
30
|
+
finishReason?: undefined;
|
|
31
|
+
usage?: undefined;
|
|
32
|
+
} | {
|
|
33
|
+
type: "finish";
|
|
34
|
+
finishReason: "stop";
|
|
35
|
+
usage: {
|
|
36
|
+
inputTokens: number;
|
|
37
|
+
outputTokens: number;
|
|
38
|
+
totalTokens: number;
|
|
39
|
+
};
|
|
40
|
+
id?: undefined;
|
|
41
|
+
delta?: undefined;
|
|
42
|
+
})[];
|
|
43
|
+
/**
|
|
44
|
+
* Helper to create streaming chunks for tool calls
|
|
45
|
+
*/
|
|
46
|
+
declare function createToolCallStreamChunks(toolCallId: string, toolName: string, toolInput: string): ({
|
|
47
|
+
type: "tool-input-start";
|
|
48
|
+
id: string;
|
|
49
|
+
toolName: string;
|
|
50
|
+
delta?: undefined;
|
|
51
|
+
toolCallId?: undefined;
|
|
52
|
+
input?: undefined;
|
|
53
|
+
finishReason?: undefined;
|
|
54
|
+
usage?: undefined;
|
|
55
|
+
} | {
|
|
56
|
+
type: "tool-input-delta";
|
|
57
|
+
id: string;
|
|
58
|
+
delta: string;
|
|
59
|
+
toolName?: undefined;
|
|
60
|
+
toolCallId?: undefined;
|
|
61
|
+
input?: undefined;
|
|
62
|
+
finishReason?: undefined;
|
|
63
|
+
usage?: undefined;
|
|
64
|
+
} | {
|
|
65
|
+
type: "tool-input-end";
|
|
66
|
+
id: string;
|
|
67
|
+
toolName?: undefined;
|
|
68
|
+
delta?: undefined;
|
|
69
|
+
toolCallId?: undefined;
|
|
70
|
+
input?: undefined;
|
|
71
|
+
finishReason?: undefined;
|
|
72
|
+
usage?: undefined;
|
|
73
|
+
} | {
|
|
74
|
+
type: "tool-call";
|
|
75
|
+
toolCallId: string;
|
|
76
|
+
toolName: string;
|
|
77
|
+
input: string;
|
|
78
|
+
id?: undefined;
|
|
79
|
+
delta?: undefined;
|
|
80
|
+
finishReason?: undefined;
|
|
81
|
+
usage?: undefined;
|
|
82
|
+
} | {
|
|
83
|
+
type: "finish";
|
|
84
|
+
finishReason: "tool-calls";
|
|
85
|
+
usage: {
|
|
86
|
+
inputTokens: number;
|
|
87
|
+
outputTokens: number;
|
|
88
|
+
totalTokens: number;
|
|
89
|
+
};
|
|
90
|
+
id?: undefined;
|
|
91
|
+
toolName?: undefined;
|
|
92
|
+
delta?: undefined;
|
|
93
|
+
toolCallId?: undefined;
|
|
94
|
+
input?: undefined;
|
|
95
|
+
})[];
|
|
96
|
+
/**
|
|
97
|
+
* Helper to create a test agent with mock model
|
|
98
|
+
*/
|
|
99
|
+
export declare function createTestAgent(name?: string): AISDKAgent;
|
|
100
|
+
/**
|
|
101
|
+
* Helper to create server config with a single agent
|
|
102
|
+
*/
|
|
103
|
+
export declare function createServerConfig(port: number, agentName?: string, additionalConfig?: Partial<UseAIServerConfig>): UseAIServerConfig;
|
|
104
|
+
/**
|
|
105
|
+
* Helper to create a mock model with custom doStream function
|
|
106
|
+
*/
|
|
107
|
+
export declare function createMockModel(doStream: (params?: unknown) => Promise<{
|
|
108
|
+
stream: ReadableStream<unknown>;
|
|
109
|
+
response?: {
|
|
110
|
+
id?: string;
|
|
111
|
+
timestamp?: Date;
|
|
112
|
+
modelId?: string;
|
|
113
|
+
headers?: Record<string, string>;
|
|
114
|
+
messages?: Array<{
|
|
115
|
+
role: string;
|
|
116
|
+
content: string | unknown[];
|
|
117
|
+
}>;
|
|
118
|
+
};
|
|
119
|
+
}>): MockLanguageModelV3;
|
|
120
|
+
/**
|
|
121
|
+
* Helper to create an agent with a custom mock model
|
|
122
|
+
*/
|
|
123
|
+
export declare function createAgentWithMockModel(doStream: (params?: unknown) => Promise<{
|
|
124
|
+
stream: ReadableStream<unknown>;
|
|
125
|
+
response?: {
|
|
126
|
+
id?: string;
|
|
127
|
+
timestamp?: Date;
|
|
128
|
+
modelId?: string;
|
|
129
|
+
headers?: Record<string, string>;
|
|
130
|
+
messages?: Array<{
|
|
131
|
+
role: string;
|
|
132
|
+
content: string | unknown[];
|
|
133
|
+
}>;
|
|
134
|
+
};
|
|
135
|
+
}>): AISDKAgent;
|
|
136
|
+
/**
|
|
137
|
+
* Helper to create a server with a custom mock agent
|
|
138
|
+
*/
|
|
139
|
+
export declare function createServerWithMockAgent(port: number, doStream: (params?: unknown) => Promise<{
|
|
140
|
+
stream: ReadableStream<unknown>;
|
|
141
|
+
response?: {
|
|
142
|
+
id?: string;
|
|
143
|
+
timestamp?: Date;
|
|
144
|
+
modelId?: string;
|
|
145
|
+
headers?: Record<string, string>;
|
|
146
|
+
messages?: Array<{
|
|
147
|
+
role: string;
|
|
148
|
+
content: string | unknown[];
|
|
149
|
+
}>;
|
|
150
|
+
};
|
|
151
|
+
}>, agentName?: string, additionalConfig?: Partial<UseAIServerConfig>): UseAIServer;
|
|
152
|
+
/**
|
|
153
|
+
* Server and socket cleanup manager
|
|
154
|
+
*/
|
|
155
|
+
export declare class TestCleanupManager {
|
|
156
|
+
private servers;
|
|
157
|
+
private sockets;
|
|
158
|
+
/**
|
|
159
|
+
* Track a server for cleanup
|
|
160
|
+
*/
|
|
161
|
+
trackServer(server: UseAIServer): void;
|
|
162
|
+
/**
|
|
163
|
+
* Track a socket for cleanup
|
|
164
|
+
*/
|
|
165
|
+
trackSocket(socket: Socket): void;
|
|
166
|
+
/**
|
|
167
|
+
* Cleanup all tracked servers and sockets
|
|
168
|
+
*/
|
|
169
|
+
cleanup(): void;
|
|
170
|
+
/**
|
|
171
|
+
* Create a test client and track it for cleanup
|
|
172
|
+
*/
|
|
173
|
+
createTestClient(port: number): Promise<Socket>;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Mock model that returns tool calls
|
|
177
|
+
*/
|
|
178
|
+
export declare function createToolCallMockModel(toolCallId: string, toolName: string, toolInput: Record<string, unknown>): MockLanguageModelV3;
|
|
179
|
+
/**
|
|
180
|
+
* Mock model with sequential responses
|
|
181
|
+
*/
|
|
182
|
+
export declare function createSequentialMockModel(responses: Array<{
|
|
183
|
+
text?: string;
|
|
184
|
+
toolCalls?: Array<{
|
|
185
|
+
toolCallId: string;
|
|
186
|
+
toolName: string;
|
|
187
|
+
input: Record<string, unknown>;
|
|
188
|
+
}>;
|
|
189
|
+
}>): MockLanguageModelV3;
|
|
190
|
+
/**
|
|
191
|
+
* Mock model that throws an error
|
|
192
|
+
*/
|
|
193
|
+
export declare function createErrorMockModel(errorMessage: string): MockLanguageModelV3;
|
|
194
|
+
/**
|
|
195
|
+
* Mock model that validates system prompts
|
|
196
|
+
*/
|
|
197
|
+
export declare function createSystemPromptValidatorMockModel(validator: (messages: unknown[]) => void): MockLanguageModelV3;
|
|
198
|
+
/**
|
|
199
|
+
* Mock model that validates tools
|
|
200
|
+
*/
|
|
201
|
+
export declare function createToolValidatorMockModel(validator: (tools: unknown) => void): MockLanguageModelV3;
|
|
202
|
+
export { simulateReadableStream, createTextStreamChunks, createToolCallStreamChunks };
|
|
203
|
+
//# sourceMappingURL=integration-test-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration-test-utils.d.ts","sourceRoot":"","sources":["../../test/integration-test-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { Socket } from 'socket.io-client';
|
|
2
|
+
import type { AGUIEvent, Tool, Message as AGUIMessage } from '../src/types';
|
|
3
|
+
import { EventType } from '../src/types';
|
|
4
|
+
export type MockGenerateTextResult = {
|
|
5
|
+
text: string;
|
|
6
|
+
toolCalls?: Array<{
|
|
7
|
+
toolCallId: string;
|
|
8
|
+
toolName: string;
|
|
9
|
+
input: any;
|
|
10
|
+
}>;
|
|
11
|
+
toolResults?: Array<{
|
|
12
|
+
toolCallId: string;
|
|
13
|
+
toolName: string;
|
|
14
|
+
output: any;
|
|
15
|
+
}>;
|
|
16
|
+
finishReason: string;
|
|
17
|
+
usage: {
|
|
18
|
+
inputTokens: number;
|
|
19
|
+
outputTokens: number;
|
|
20
|
+
totalTokens: number;
|
|
21
|
+
};
|
|
22
|
+
response: {
|
|
23
|
+
messages: Array<{
|
|
24
|
+
role: string;
|
|
25
|
+
content: string | any[];
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
warnings?: any[];
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Wait for Socket.IO connection to be established
|
|
32
|
+
*/
|
|
33
|
+
export declare function waitForConnection(socket: Socket): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Wait for an AG-UI event from the Socket.IO server
|
|
36
|
+
*/
|
|
37
|
+
export declare function waitForEvent(socket: Socket, timeout?: number): Promise<AGUIEvent>;
|
|
38
|
+
/**
|
|
39
|
+
* Wait for a specific AG-UI event type
|
|
40
|
+
*/
|
|
41
|
+
export declare function waitForEventType(socket: Socket, eventType: EventType, timeout?: number): Promise<AGUIEvent>;
|
|
42
|
+
/**
|
|
43
|
+
* Collect all events until a specific event type is received
|
|
44
|
+
*/
|
|
45
|
+
export declare function collectEventsUntil(socket: Socket, stopEventType: EventType, timeout?: number): Promise<AGUIEvent[]>;
|
|
46
|
+
/**
|
|
47
|
+
* Send a RunAgentInput message to the Socket.IO server
|
|
48
|
+
*/
|
|
49
|
+
export declare function sendRunAgent(socket: Socket, options: {
|
|
50
|
+
prompt: string;
|
|
51
|
+
tools?: Tool[];
|
|
52
|
+
state?: unknown;
|
|
53
|
+
threadId?: string;
|
|
54
|
+
previousMessages?: AGUIMessage[];
|
|
55
|
+
}): void;
|
|
56
|
+
/**
|
|
57
|
+
* Send a tool result back to the server
|
|
58
|
+
*/
|
|
59
|
+
export declare function sendToolResult(socket: Socket, toolCallId: string, result: unknown): void;
|
|
60
|
+
/**
|
|
61
|
+
* Create a Socket.IO client connected to the test server
|
|
62
|
+
*/
|
|
63
|
+
export declare function createTestClient(port: number): Promise<Socket>;
|
|
64
|
+
/**
|
|
65
|
+
* Create a mock AI SDK generateText result
|
|
66
|
+
*/
|
|
67
|
+
export declare function createMockGenerateTextResult(text: string, toolCalls?: Array<{
|
|
68
|
+
toolCallId: string;
|
|
69
|
+
toolName: string;
|
|
70
|
+
input: any;
|
|
71
|
+
}>): MockGenerateTextResult;
|
|
72
|
+
/**
|
|
73
|
+
* Create a mock text response
|
|
74
|
+
*/
|
|
75
|
+
export declare function createTextResponse(id: string, text: string): MockGenerateTextResult;
|
|
76
|
+
/**
|
|
77
|
+
* Create a mock tool use response
|
|
78
|
+
*/
|
|
79
|
+
export declare function createToolUseResponse(id: string, toolCallId: string, toolName: string, toolInput: Record<string, unknown>): MockGenerateTextResult;
|
|
80
|
+
/**
|
|
81
|
+
* Create a mock text response after tool execution
|
|
82
|
+
*/
|
|
83
|
+
export declare function createTextAfterToolResponse(id: string, text: string): MockGenerateTextResult;
|
|
84
|
+
/**
|
|
85
|
+
* Create a mock response with multiple tool uses
|
|
86
|
+
*/
|
|
87
|
+
export declare function createMultipleToolUseResponse(id: string, toolCalls: Array<{
|
|
88
|
+
id: string;
|
|
89
|
+
name: string;
|
|
90
|
+
input: Record<string, unknown>;
|
|
91
|
+
}>): MockGenerateTextResult;
|
|
92
|
+
/**
|
|
93
|
+
* Helper to extract text content from AG-UI TEXT_MESSAGE events
|
|
94
|
+
*/
|
|
95
|
+
export declare function extractTextFromEvents(events: AGUIEvent[]): string;
|
|
96
|
+
/**
|
|
97
|
+
* Helper to find tool call events and extract tool call data
|
|
98
|
+
*/
|
|
99
|
+
export declare function extractToolCallsFromEvents(events: AGUIEvent[]): Array<{
|
|
100
|
+
toolCallId: string;
|
|
101
|
+
toolCallName: string;
|
|
102
|
+
args: Record<string, unknown>;
|
|
103
|
+
}>;
|
|
104
|
+
//# sourceMappingURL=test-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../test/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAEV,SAAS,EAET,IAAI,EACJ,OAAO,IAAI,WAAW,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IACxE,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC3E,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,EAAE;QACR,QAAQ,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;SAAE,CAAC,CAAC;KAC5D,CAAC;IACF,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS/D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAW/E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,OAAO,SAAO,GACb,OAAO,CAAC,SAAS,CAAC,CAgBpB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,SAAS,EACxB,OAAO,SAAO,GACb,OAAO,CAAC,SAAS,EAAE,CAAC,CAkBtB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACP,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC;CAClC,GACA,IAAI,CA4BN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,OAAO,GACd,IAAI,CAYN;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMpE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,KAAK,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,GAAG,CAAA;CAAE,CAAC,GACtE,sBAAsB,CAcxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,CAInF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,sBAAsB,CAYxB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,CAI5F;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,GAC7E,sBAAsB,CAqBxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAKjE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC,CAaD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
declare const logFile: string;
|
|
2
|
+
declare const originalConsole: {
|
|
3
|
+
log: {
|
|
4
|
+
(...data: any[]): void;
|
|
5
|
+
(...data: any[]): void;
|
|
6
|
+
(message?: any, ...optionalParams: any[]): void;
|
|
7
|
+
};
|
|
8
|
+
info: {
|
|
9
|
+
(...data: any[]): void;
|
|
10
|
+
(...data: any[]): void;
|
|
11
|
+
(message?: any, ...optionalParams: any[]): void;
|
|
12
|
+
};
|
|
13
|
+
warn: {
|
|
14
|
+
(...data: any[]): void;
|
|
15
|
+
(...data: any[]): void;
|
|
16
|
+
(message?: any, ...optionalParams: any[]): void;
|
|
17
|
+
};
|
|
18
|
+
error: {
|
|
19
|
+
(...data: any[]): void;
|
|
20
|
+
(...data: any[]): void;
|
|
21
|
+
(message?: any, ...optionalParams: any[]): void;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
export { logFile, originalConsole };
|
|
25
|
+
//# sourceMappingURL=test-preload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-preload.d.ts","sourceRoot":"","sources":["../../src/test-preload.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,OAAO,QAA6B,CAAC;AAY3C,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;CAKpB,CAAC;AAmBF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-execution.integration.test.d.ts","sourceRoot":"","sources":["../../src/tool-execution.integration.test.ts"],"names":[],"mappings":""}
|