@agtlantis/core 0.5.0 → 0.6.0
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 +18 -5
- package/dist/errors/index.d.ts +4 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +3 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/types.d.ts +69 -0
- package/dist/errors/types.d.ts.map +1 -0
- package/dist/errors/types.js +116 -0
- package/dist/errors/types.js.map +1 -0
- package/dist/errors/utils.d.ts +17 -0
- package/dist/errors/utils.d.ts.map +1 -0
- package/dist/errors/utils.js +16 -0
- package/dist/errors/utils.js.map +1 -0
- package/dist/execution/constants.d.ts +7 -0
- package/dist/execution/constants.d.ts.map +1 -0
- package/dist/execution/constants.js +7 -0
- package/dist/execution/constants.js.map +1 -0
- package/dist/execution/index.d.ts +8 -0
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +7 -0
- package/dist/execution/index.js.map +1 -0
- package/dist/execution/mapping.d.ts +17 -0
- package/dist/execution/mapping.d.ts.map +1 -0
- package/dist/execution/mapping.js +197 -0
- package/dist/execution/mapping.js.map +1 -0
- package/dist/execution/shared.d.ts +86 -0
- package/dist/execution/shared.d.ts.map +1 -0
- package/dist/execution/shared.js +100 -0
- package/dist/execution/shared.js.map +1 -0
- package/dist/execution/simple-host.d.ts +56 -0
- package/dist/execution/simple-host.d.ts.map +1 -0
- package/dist/execution/simple-host.js +126 -0
- package/dist/execution/simple-host.js.map +1 -0
- package/dist/execution/streaming-host.d.ts +79 -0
- package/dist/execution/streaming-host.d.ts.map +1 -0
- package/dist/execution/streaming-host.js +276 -0
- package/dist/execution/streaming-host.js.map +1 -0
- package/dist/execution/testing/fixtures.d.ts +67 -0
- package/dist/execution/testing/fixtures.d.ts.map +1 -0
- package/dist/execution/testing/fixtures.js +145 -0
- package/dist/execution/testing/fixtures.js.map +1 -0
- package/dist/execution/testing/helpers.d.ts +218 -0
- package/dist/execution/testing/helpers.d.ts.map +1 -0
- package/dist/execution/testing/helpers.js +327 -0
- package/dist/execution/testing/helpers.js.map +1 -0
- package/dist/execution/testing/host-configs.d.ts +56 -0
- package/dist/execution/testing/host-configs.d.ts.map +1 -0
- package/dist/execution/testing/host-configs.js +154 -0
- package/dist/execution/testing/host-configs.js.map +1 -0
- package/dist/execution/testing/vitest-assertions.d.ts +102 -0
- package/dist/execution/testing/vitest-assertions.d.ts.map +1 -0
- package/dist/execution/testing/vitest-assertions.js +142 -0
- package/dist/execution/testing/vitest-assertions.js.map +1 -0
- package/dist/execution/types.d.ts +432 -0
- package/dist/execution/types.d.ts.map +1 -0
- package/dist/execution/types.js +2 -0
- package/dist/execution/types.js.map +1 -0
- package/dist/execution/utils.d.ts +68 -0
- package/dist/execution/utils.d.ts.map +1 -0
- package/dist/execution/utils.js +93 -0
- package/dist/execution/utils.js.map +1 -0
- package/dist/index.d.ts +10 -1506
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -2979
- package/dist/index.js.map +1 -1
- package/dist/observability/index.d.ts +4 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +2 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/logger.d.ts +161 -0
- package/dist/observability/logger.d.ts.map +1 -0
- package/dist/observability/logger.js +31 -0
- package/dist/observability/logger.js.map +1 -0
- package/dist/observability/types.d.ts +46 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +2 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/patterns/index.d.ts +2 -0
- package/dist/patterns/index.d.ts.map +1 -0
- package/dist/patterns/index.js +2 -0
- package/dist/patterns/index.js.map +1 -0
- package/dist/patterns/progressive/index.d.ts +2 -0
- package/dist/patterns/progressive/index.d.ts.map +1 -0
- package/dist/patterns/progressive/index.js +2 -0
- package/dist/patterns/progressive/index.js.map +1 -0
- package/dist/patterns/progressive/progressive-pattern.d.ts +174 -0
- package/dist/patterns/progressive/progressive-pattern.d.ts.map +1 -0
- package/dist/patterns/progressive/progressive-pattern.js +260 -0
- package/dist/patterns/progressive/progressive-pattern.js.map +1 -0
- package/dist/pricing/calculator.d.ts +71 -0
- package/dist/pricing/calculator.d.ts.map +1 -0
- package/dist/pricing/calculator.js +127 -0
- package/dist/pricing/calculator.js.map +1 -0
- package/dist/pricing/config.d.ts +61 -0
- package/dist/pricing/config.d.ts.map +1 -0
- package/dist/pricing/config.js +87 -0
- package/dist/pricing/config.js.map +1 -0
- package/dist/pricing/defaults.d.ts +29 -0
- package/dist/pricing/defaults.d.ts.map +1 -0
- package/dist/pricing/defaults.js +139 -0
- package/dist/pricing/defaults.js.map +1 -0
- package/dist/pricing/index.d.ts +40 -0
- package/dist/pricing/index.d.ts.map +1 -0
- package/dist/pricing/index.js +43 -0
- package/dist/pricing/index.js.map +1 -0
- package/dist/pricing/types.d.ts +96 -0
- package/dist/pricing/types.d.ts.map +1 -0
- package/dist/pricing/types.js +7 -0
- package/dist/pricing/types.js.map +1 -0
- package/dist/pricing/validator.d.ts +55 -0
- package/dist/pricing/validator.d.ts.map +1 -0
- package/dist/pricing/validator.js +84 -0
- package/dist/pricing/validator.js.map +1 -0
- package/dist/prompt/errors.d.ts +112 -0
- package/dist/prompt/errors.d.ts.map +1 -0
- package/dist/prompt/errors.js +174 -0
- package/dist/prompt/errors.js.map +1 -0
- package/dist/prompt/file-prompt-repository.d.ts +80 -0
- package/dist/prompt/file-prompt-repository.d.ts.map +1 -0
- package/dist/prompt/file-prompt-repository.js +287 -0
- package/dist/prompt/file-prompt-repository.js.map +1 -0
- package/dist/prompt/index.d.ts +34 -0
- package/dist/prompt/index.d.ts.map +1 -0
- package/dist/prompt/index.js +37 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/prompt/prompt-template.d.ts +64 -0
- package/dist/prompt/prompt-template.d.ts.map +1 -0
- package/dist/prompt/prompt-template.js +90 -0
- package/dist/prompt/prompt-template.js.map +1 -0
- package/dist/prompt/template.d.ts +23 -0
- package/dist/prompt/template.d.ts.map +1 -0
- package/dist/prompt/template.js +70 -0
- package/dist/prompt/template.js.map +1 -0
- package/dist/prompt/types.d.ts +148 -0
- package/dist/prompt/types.d.ts.map +1 -0
- package/dist/prompt/types.js +7 -0
- package/dist/prompt/types.js.map +1 -0
- package/dist/provider/base-file-manager.d.ts +14 -0
- package/dist/provider/base-file-manager.d.ts.map +1 -0
- package/dist/provider/base-file-manager.js +91 -0
- package/dist/provider/base-file-manager.js.map +1 -0
- package/dist/provider/base-provider.d.ts +41 -0
- package/dist/provider/base-provider.d.ts.map +1 -0
- package/dist/provider/base-provider.js +21 -0
- package/dist/provider/base-provider.js.map +1 -0
- package/dist/provider/file-cache.d.ts +14 -0
- package/dist/provider/file-cache.d.ts.map +1 -0
- package/dist/provider/file-cache.js +29 -0
- package/dist/provider/file-cache.js.map +1 -0
- package/dist/provider/file-source.d.ts +32 -0
- package/dist/provider/file-source.d.ts.map +1 -0
- package/dist/provider/file-source.js +180 -0
- package/dist/provider/file-source.js.map +1 -0
- package/dist/provider/file-utils.d.ts +5 -0
- package/dist/provider/file-utils.d.ts.map +1 -0
- package/dist/provider/file-utils.js +15 -0
- package/dist/provider/file-utils.js.map +1 -0
- package/dist/provider/google/factory.d.ts +107 -0
- package/dist/provider/google/factory.d.ts.map +1 -0
- package/dist/provider/google/factory.js +143 -0
- package/dist/provider/google/factory.js.map +1 -0
- package/dist/provider/google/file-manager.d.ts +10 -0
- package/dist/provider/google/file-manager.d.ts.map +1 -0
- package/dist/provider/google/file-manager.js +93 -0
- package/dist/provider/google/file-manager.js.map +1 -0
- package/dist/provider/google/index.d.ts +8 -0
- package/dist/provider/google/index.d.ts.map +1 -0
- package/dist/provider/google/index.js +10 -0
- package/dist/provider/google/index.js.map +1 -0
- package/dist/provider/hash.d.ts +3 -0
- package/dist/provider/hash.d.ts.map +1 -0
- package/dist/provider/hash.js +34 -0
- package/dist/provider/hash.js.map +1 -0
- package/dist/provider/index.d.ts +10 -0
- package/dist/provider/index.d.ts.map +1 -0
- package/dist/provider/index.js +12 -0
- package/dist/provider/index.js.map +1 -0
- package/dist/provider/noop-file-manager.d.ts +9 -0
- package/dist/provider/noop-file-manager.d.ts.map +1 -0
- package/dist/provider/noop-file-manager.js +28 -0
- package/dist/provider/noop-file-manager.js.map +1 -0
- package/dist/provider/openai/factory.d.ts +67 -0
- package/dist/provider/openai/factory.d.ts.map +1 -0
- package/dist/provider/openai/factory.js +100 -0
- package/dist/provider/openai/factory.js.map +1 -0
- package/dist/provider/openai/file-manager.d.ts +17 -0
- package/dist/provider/openai/file-manager.d.ts.map +1 -0
- package/dist/provider/openai/file-manager.js +108 -0
- package/dist/provider/openai/file-manager.js.map +1 -0
- package/dist/provider/openai/index.d.ts +8 -0
- package/dist/provider/openai/index.d.ts.map +1 -0
- package/dist/provider/openai/index.js +8 -0
- package/dist/provider/openai/index.js.map +1 -0
- package/dist/provider/types.d.ts +105 -0
- package/dist/provider/types.d.ts.map +1 -0
- package/dist/provider/types.js +19 -0
- package/dist/provider/types.js.map +1 -0
- package/dist/session/index.d.ts +7 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +5 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/simple-session.d.ts +98 -0
- package/dist/session/simple-session.d.ts.map +1 -0
- package/dist/session/simple-session.js +299 -0
- package/dist/session/simple-session.js.map +1 -0
- package/dist/session/streaming-session.d.ts +90 -0
- package/dist/session/streaming-session.d.ts.map +1 -0
- package/dist/session/streaming-session.js +151 -0
- package/dist/session/streaming-session.js.map +1 -0
- package/dist/session/test-utils.d.ts +19 -0
- package/dist/session/test-utils.d.ts.map +1 -0
- package/dist/session/test-utils.js +65 -0
- package/dist/session/test-utils.js.map +1 -0
- package/dist/session/types.d.ts +219 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +181 -0
- package/dist/session/types.js.map +1 -0
- package/dist/session/usage-extractors.d.ts +7 -0
- package/dist/session/usage-extractors.d.ts.map +1 -0
- package/dist/session/usage-extractors.js +71 -0
- package/dist/session/usage-extractors.js.map +1 -0
- package/dist/testing/fixtures.d.ts +34 -0
- package/dist/testing/fixtures.d.ts.map +1 -0
- package/dist/testing/fixtures.js +65 -0
- package/dist/testing/fixtures.js.map +1 -0
- package/dist/testing/helpers.d.ts +20 -0
- package/dist/testing/helpers.d.ts.map +1 -0
- package/dist/testing/helpers.js +32 -0
- package/dist/testing/helpers.js.map +1 -0
- package/dist/testing/index.d.ts +7 -519
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +21 -2123
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/mock-provider.d.ts +79 -0
- package/dist/testing/mock-provider.d.ts.map +1 -0
- package/dist/testing/mock-provider.js +152 -0
- package/dist/testing/mock-provider.js.map +1 -0
- package/dist/testing/mock.d.ts +29 -0
- package/dist/testing/mock.d.ts.map +1 -0
- package/dist/testing/mock.js +154 -0
- package/dist/testing/mock.js.map +1 -0
- package/dist/testing/test-execution.d.ts +14 -0
- package/dist/testing/test-execution.d.ts.map +1 -0
- package/dist/testing/test-execution.js +108 -0
- package/dist/testing/test-execution.js.map +1 -0
- package/dist/utils/deep-merge.d.ts +6 -0
- package/dist/utils/deep-merge.d.ts.map +1 -0
- package/dist/utils/deep-merge.js +24 -0
- package/dist/utils/deep-merge.js.map +1 -0
- package/dist/validation/errors.d.ts +28 -0
- package/dist/validation/errors.d.ts.map +1 -0
- package/dist/validation/errors.js +38 -0
- package/dist/validation/errors.js.map +1 -0
- package/dist/validation/index.d.ts +5 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +4 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/types.d.ts +49 -0
- package/dist/validation/types.d.ts.map +1 -0
- package/dist/validation/types.js +2 -0
- package/dist/validation/types.js.map +1 -0
- package/dist/validation/validation-history.d.ts +12 -0
- package/dist/validation/validation-history.d.ts.map +1 -0
- package/dist/validation/validation-history.js +29 -0
- package/dist/validation/validation-history.js.map +1 -0
- package/dist/validation/with-validation.d.ts +38 -0
- package/dist/validation/with-validation.d.ts.map +1 -0
- package/dist/validation/with-validation.js +58 -0
- package/dist/validation/with-validation.js.map +1 -0
- package/package.json +71 -75
- package/dist/base-provider-2TTw5HAa.d.cts +0 -1254
- package/dist/base-provider-2TTw5HAa.d.ts +0 -1254
- package/dist/index.cjs +0 -3085
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -1506
- package/dist/testing/index.cjs +0 -2167
- package/dist/testing/index.cjs.map +0 -1
- package/dist/testing/index.d.cts +0 -520
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration objects for ExecutionHost contract tests.
|
|
3
|
+
* Abstracts the differences between SimpleHost and StreamingHost
|
|
4
|
+
* to enable shared contract testing.
|
|
5
|
+
*/
|
|
6
|
+
import { vi } from 'vitest';
|
|
7
|
+
import { SimpleExecutionHost } from '../simple-host.js';
|
|
8
|
+
import { StreamingExecutionHost } from '../streaming-host.js';
|
|
9
|
+
import { SimpleSession } from '../../session/simple-session.js';
|
|
10
|
+
import { StreamingSession } from '../../session/streaming-session.js';
|
|
11
|
+
import { TEST_PROVIDER_TYPE, createMockModel, createMockFileManager, } from './fixtures.js';
|
|
12
|
+
// ============================================================================
|
|
13
|
+
// SimpleHost Configuration
|
|
14
|
+
// ============================================================================
|
|
15
|
+
export const simpleHostConfig = {
|
|
16
|
+
name: 'SimpleExecutionHost',
|
|
17
|
+
createHost(factory, workload, signal) {
|
|
18
|
+
return new SimpleExecutionHost(factory, workload, signal);
|
|
19
|
+
},
|
|
20
|
+
createSessionFactory(logger) {
|
|
21
|
+
return (signal) => new SimpleSession({
|
|
22
|
+
defaultLanguageModel: createMockModel(),
|
|
23
|
+
providerType: TEST_PROVIDER_TYPE,
|
|
24
|
+
fileManager: createMockFileManager(),
|
|
25
|
+
signal,
|
|
26
|
+
logger,
|
|
27
|
+
});
|
|
28
|
+
},
|
|
29
|
+
createSessionFactorySpy() {
|
|
30
|
+
let passedSignal;
|
|
31
|
+
const factory = vi.fn().mockImplementation((signal) => {
|
|
32
|
+
passedSignal = signal;
|
|
33
|
+
return new SimpleSession({
|
|
34
|
+
defaultLanguageModel: createMockModel(),
|
|
35
|
+
providerType: TEST_PROVIDER_TYPE,
|
|
36
|
+
fileManager: createMockFileManager(),
|
|
37
|
+
signal,
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
factory,
|
|
42
|
+
getPassedSignal: () => passedSignal,
|
|
43
|
+
};
|
|
44
|
+
},
|
|
45
|
+
createSuccessWorkload(result) {
|
|
46
|
+
return vi.fn().mockResolvedValue(result);
|
|
47
|
+
},
|
|
48
|
+
createErrorWorkload(error) {
|
|
49
|
+
return vi.fn().mockRejectedValue(error);
|
|
50
|
+
},
|
|
51
|
+
createCancelableWorkload(abortScenario, onCancel) {
|
|
52
|
+
return async () => {
|
|
53
|
+
await new Promise((_, reject) => {
|
|
54
|
+
const signal = abortScenario.signal;
|
|
55
|
+
if (signal.aborted) {
|
|
56
|
+
onCancel?.();
|
|
57
|
+
reject(new DOMException('Aborted', 'AbortError'));
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
signal.addEventListener('abort', () => {
|
|
61
|
+
onCancel?.();
|
|
62
|
+
reject(new DOMException('Aborted', 'AbortError'));
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
return 'should-not-reach';
|
|
66
|
+
};
|
|
67
|
+
},
|
|
68
|
+
createHookWorkload(hook, options) {
|
|
69
|
+
return async (session) => {
|
|
70
|
+
session.onDone(hook);
|
|
71
|
+
if (options?.shouldFail) {
|
|
72
|
+
throw new Error('Intentional failure');
|
|
73
|
+
}
|
|
74
|
+
return 'result';
|
|
75
|
+
};
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
// ============================================================================
|
|
79
|
+
// StreamingHost Configuration
|
|
80
|
+
// ============================================================================
|
|
81
|
+
export const streamingHostConfig = {
|
|
82
|
+
name: 'StreamingExecutionHost',
|
|
83
|
+
createHost(factory, workload, signal) {
|
|
84
|
+
return new StreamingExecutionHost(factory, workload, signal);
|
|
85
|
+
},
|
|
86
|
+
createSessionFactory(logger) {
|
|
87
|
+
return (signal) => new StreamingSession({
|
|
88
|
+
defaultLanguageModel: createMockModel(),
|
|
89
|
+
providerType: TEST_PROVIDER_TYPE,
|
|
90
|
+
fileManager: createMockFileManager(),
|
|
91
|
+
signal,
|
|
92
|
+
logger,
|
|
93
|
+
});
|
|
94
|
+
},
|
|
95
|
+
createSessionFactorySpy() {
|
|
96
|
+
let passedSignal;
|
|
97
|
+
const factory = vi.fn().mockImplementation((signal) => {
|
|
98
|
+
passedSignal = signal;
|
|
99
|
+
return new StreamingSession({
|
|
100
|
+
defaultLanguageModel: createMockModel(),
|
|
101
|
+
providerType: TEST_PROVIDER_TYPE,
|
|
102
|
+
fileManager: createMockFileManager(),
|
|
103
|
+
signal,
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
return {
|
|
107
|
+
factory,
|
|
108
|
+
getPassedSignal: () => passedSignal,
|
|
109
|
+
};
|
|
110
|
+
},
|
|
111
|
+
createSuccessWorkload(result) {
|
|
112
|
+
return async function* (session) {
|
|
113
|
+
return session.done(result);
|
|
114
|
+
};
|
|
115
|
+
},
|
|
116
|
+
createErrorWorkload(error) {
|
|
117
|
+
return async function* () {
|
|
118
|
+
throw error;
|
|
119
|
+
};
|
|
120
|
+
},
|
|
121
|
+
createCancelableWorkload(abortScenario, onCancel) {
|
|
122
|
+
return async function* (session) {
|
|
123
|
+
yield session.emit({ type: 'start' });
|
|
124
|
+
await new Promise((_, reject) => {
|
|
125
|
+
const signal = abortScenario.signal;
|
|
126
|
+
if (signal.aborted) {
|
|
127
|
+
onCancel?.();
|
|
128
|
+
reject(new DOMException('Aborted', 'AbortError'));
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
signal.addEventListener('abort', () => {
|
|
132
|
+
onCancel?.();
|
|
133
|
+
reject(new DOMException('Aborted', 'AbortError'));
|
|
134
|
+
});
|
|
135
|
+
});
|
|
136
|
+
return session.done('should-not-reach');
|
|
137
|
+
};
|
|
138
|
+
},
|
|
139
|
+
createHookWorkload(hook, options) {
|
|
140
|
+
return async function* (session) {
|
|
141
|
+
session.onDone(hook);
|
|
142
|
+
if (options?.shouldFail) {
|
|
143
|
+
throw new Error('Intentional failure');
|
|
144
|
+
}
|
|
145
|
+
return session.done('result');
|
|
146
|
+
};
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
// ============================================================================
|
|
150
|
+
// Exports
|
|
151
|
+
// ============================================================================
|
|
152
|
+
/** All host configurations for parameterized testing */
|
|
153
|
+
export const allHostConfigs = [simpleHostConfig, streamingHostConfig];
|
|
154
|
+
//# sourceMappingURL=host-configs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-configs.js","sourceRoot":"","sources":["../../../src/execution/testing/host-configs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vitest-specific assertion helpers for execution module tests.
|
|
3
|
+
* These helpers depend on vitest and should only be used in internal tests.
|
|
4
|
+
*/
|
|
5
|
+
import { vi } from 'vitest';
|
|
6
|
+
import type { ExecutionResult, StreamingResult } from '../types.js';
|
|
7
|
+
import type { Logger } from '../../observability/logger.js';
|
|
8
|
+
export type MockLogger = Logger & {
|
|
9
|
+
onLLMCallStart: ReturnType<typeof vi.fn>;
|
|
10
|
+
onLLMCallEnd: ReturnType<typeof vi.fn>;
|
|
11
|
+
onExecutionStart: ReturnType<typeof vi.fn>;
|
|
12
|
+
onExecutionEmit: ReturnType<typeof vi.fn>;
|
|
13
|
+
onExecutionDone: ReturnType<typeof vi.fn>;
|
|
14
|
+
onExecutionError: ReturnType<typeof vi.fn>;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Assert that an execution result is successful and optionally check the value.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const result = await execution.result();
|
|
22
|
+
* expectSuccessResult(result, 'expected-value');
|
|
23
|
+
* // result is now narrowed to succeeded type
|
|
24
|
+
* console.log(result.value);
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function expectSuccessResult<T>(result: ExecutionResult<T>, expectedValue?: T): asserts result is Extract<ExecutionResult<T>, {
|
|
28
|
+
status: 'succeeded';
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* Assert that an execution result is failed and optionally check the error.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* const result = await execution.result();
|
|
36
|
+
* expectFailedResult(result, 'Expected error message');
|
|
37
|
+
* // or with regex
|
|
38
|
+
* expectFailedResult(result, /timeout/i);
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function expectFailedResult<T>(result: ExecutionResult<T>, errorMatcher?: string | RegExp | Error): asserts result is Extract<ExecutionResult<T>, {
|
|
42
|
+
status: 'failed';
|
|
43
|
+
}>;
|
|
44
|
+
/**
|
|
45
|
+
* Assert that an execution result is canceled.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```typescript
|
|
49
|
+
* const result = await execution.result();
|
|
50
|
+
* expectCanceledResult(result);
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export declare function expectCanceledResult<T>(result: ExecutionResult<T>): asserts result is Extract<ExecutionResult<T>, {
|
|
54
|
+
status: 'canceled';
|
|
55
|
+
}>;
|
|
56
|
+
/**
|
|
57
|
+
* Assert streaming result status and optionally check events count.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const result = await execution.result();
|
|
62
|
+
* expectStreamingSuccessResult(result, 'value', 3);
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare function expectStreamingSuccessResult<TEvent, T>(result: StreamingResult<TEvent, T>, expectedValue?: T, expectedEventCount?: number): asserts result is Extract<StreamingResult<TEvent, T>, {
|
|
66
|
+
status: 'succeeded';
|
|
67
|
+
}>;
|
|
68
|
+
type LoggerEventType = 'start' | 'emit' | 'done' | 'error';
|
|
69
|
+
/**
|
|
70
|
+
* Verify that logger was called in the expected sequence.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const logger = createMockLogger();
|
|
75
|
+
* // ... run execution ...
|
|
76
|
+
*
|
|
77
|
+
* verifyLoggerSequence(logger, ['start', 'emit', 'emit', 'done']);
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export declare function verifyLoggerSequence(logger: MockLogger, expectedSequence: LoggerEventType[]): void;
|
|
81
|
+
/**
|
|
82
|
+
* Create a vitest mock logger.
|
|
83
|
+
*/
|
|
84
|
+
export declare function createVitestMockLogger(): MockLogger;
|
|
85
|
+
/**
|
|
86
|
+
* @deprecated Use createVitestMockLogger instead
|
|
87
|
+
*/
|
|
88
|
+
export declare const createMockLogger: typeof createVitestMockLogger;
|
|
89
|
+
/**
|
|
90
|
+
* Get vitest's vi.fn for use with framework-agnostic fixtures.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```typescript
|
|
94
|
+
* import { vitestMockFn } from './vitest-assertions';
|
|
95
|
+
* import { createStreamingSessionFactory } from './fixtures';
|
|
96
|
+
*
|
|
97
|
+
* const factory = createStreamingSessionFactory({ mockFn: vitestMockFn });
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
export declare const vitestMockFn: () => (...args: unknown[]) => unknown;
|
|
101
|
+
export {};
|
|
102
|
+
//# sourceMappingURL=vitest-assertions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vitest-assertions.d.ts","sourceRoot":"","sources":["../../../src/execution/testing/vitest-assertions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,EAAE,EAAU,MAAM,QAAQ,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAM5D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG;IAChC,cAAc,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACzC,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACvC,gBAAgB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3C,eAAe,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1C,eAAe,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1C,gBAAgB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CAC5C,CAAC;AAMF;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,EAC1B,aAAa,CAAC,EAAE,CAAC,GAChB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC,CAQxE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,EAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GACrC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAC,CAcrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,CAAC,CAEvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,CAAC,EACpD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAClC,aAAa,CAAC,EAAE,CAAC,EACjB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC,CAKhF;AAMD,KAAK,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,EAClB,gBAAgB,EAAE,eAAe,EAAE,GAClC,IAAI,CAsBN;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,UAAU,CASnD;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,+BAAyB,CAAC;AAEvD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAuB,CAAC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vitest-specific assertion helpers for execution module tests.
|
|
3
|
+
* These helpers depend on vitest and should only be used in internal tests.
|
|
4
|
+
*/
|
|
5
|
+
import { vi, expect } from 'vitest';
|
|
6
|
+
// ============================================================================
|
|
7
|
+
// Result Assertion Helpers
|
|
8
|
+
// ============================================================================
|
|
9
|
+
/**
|
|
10
|
+
* Assert that an execution result is successful and optionally check the value.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const result = await execution.result();
|
|
15
|
+
* expectSuccessResult(result, 'expected-value');
|
|
16
|
+
* // result is now narrowed to succeeded type
|
|
17
|
+
* console.log(result.value);
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export function expectSuccessResult(result, expectedValue) {
|
|
21
|
+
expect(result.status).toBe('succeeded');
|
|
22
|
+
if (result.status !== 'succeeded') {
|
|
23
|
+
throw new Error('Result is not succeeded');
|
|
24
|
+
}
|
|
25
|
+
if (expectedValue !== undefined) {
|
|
26
|
+
expect(result.value).toBe(expectedValue);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Assert that an execution result is failed and optionally check the error.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const result = await execution.result();
|
|
35
|
+
* expectFailedResult(result, 'Expected error message');
|
|
36
|
+
* // or with regex
|
|
37
|
+
* expectFailedResult(result, /timeout/i);
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export function expectFailedResult(result, errorMatcher) {
|
|
41
|
+
expect(result.status).toBe('failed');
|
|
42
|
+
if (result.status !== 'failed') {
|
|
43
|
+
throw new Error('Result is not failed');
|
|
44
|
+
}
|
|
45
|
+
if (errorMatcher !== undefined) {
|
|
46
|
+
if (typeof errorMatcher === 'string') {
|
|
47
|
+
expect(result.error.message).toBe(errorMatcher);
|
|
48
|
+
}
|
|
49
|
+
else if (errorMatcher instanceof RegExp) {
|
|
50
|
+
expect(result.error.message).toMatch(errorMatcher);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
expect(result.error).toBe(errorMatcher);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Assert that an execution result is canceled.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* const result = await execution.result();
|
|
63
|
+
* expectCanceledResult(result);
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export function expectCanceledResult(result) {
|
|
67
|
+
expect(result.status).toBe('canceled');
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Assert streaming result status and optionally check events count.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const result = await execution.result();
|
|
75
|
+
* expectStreamingSuccessResult(result, 'value', 3);
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
export function expectStreamingSuccessResult(result, expectedValue, expectedEventCount) {
|
|
79
|
+
expectSuccessResult(result, expectedValue);
|
|
80
|
+
if (expectedEventCount !== undefined) {
|
|
81
|
+
expect(result.events).toHaveLength(expectedEventCount);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Verify that logger was called in the expected sequence.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* const logger = createMockLogger();
|
|
90
|
+
* // ... run execution ...
|
|
91
|
+
*
|
|
92
|
+
* verifyLoggerSequence(logger, ['start', 'emit', 'emit', 'done']);
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
export function verifyLoggerSequence(logger, expectedSequence) {
|
|
96
|
+
const eventMap = {
|
|
97
|
+
start: 'onExecutionStart',
|
|
98
|
+
emit: 'onExecutionEmit',
|
|
99
|
+
done: 'onExecutionDone',
|
|
100
|
+
error: 'onExecutionError',
|
|
101
|
+
};
|
|
102
|
+
// Count expected occurrences
|
|
103
|
+
const expectedCounts = expectedSequence.reduce((acc, event) => {
|
|
104
|
+
acc[event] = (acc[event] || 0) + 1;
|
|
105
|
+
return acc;
|
|
106
|
+
}, {});
|
|
107
|
+
// Verify each event type was called the expected number of times
|
|
108
|
+
for (const [event, count] of Object.entries(expectedCounts)) {
|
|
109
|
+
const methodName = eventMap[event];
|
|
110
|
+
expect(logger[methodName]).toHaveBeenCalledTimes(count);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Create a vitest mock logger.
|
|
115
|
+
*/
|
|
116
|
+
export function createVitestMockLogger() {
|
|
117
|
+
return {
|
|
118
|
+
onLLMCallStart: vi.fn(),
|
|
119
|
+
onLLMCallEnd: vi.fn(),
|
|
120
|
+
onExecutionStart: vi.fn(),
|
|
121
|
+
onExecutionEmit: vi.fn(),
|
|
122
|
+
onExecutionDone: vi.fn(),
|
|
123
|
+
onExecutionError: vi.fn(),
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* @deprecated Use createVitestMockLogger instead
|
|
128
|
+
*/
|
|
129
|
+
export const createMockLogger = createVitestMockLogger;
|
|
130
|
+
/**
|
|
131
|
+
* Get vitest's vi.fn for use with framework-agnostic fixtures.
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```typescript
|
|
135
|
+
* import { vitestMockFn } from './vitest-assertions';
|
|
136
|
+
* import { createStreamingSessionFactory } from './fixtures';
|
|
137
|
+
*
|
|
138
|
+
* const factory = createStreamingSessionFactory({ mockFn: vitestMockFn });
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
export const vitestMockFn = () => vi.fn();
|
|
142
|
+
//# sourceMappingURL=vitest-assertions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vitest-assertions.js","sourceRoot":"","sources":["../../../src/execution/testing/vitest-assertions.ts"],"names":[],"mappings":"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"}
|