@memberjunction/unit-testing 6.2.0-edge.4 → 6.2.0-edge.5

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.
@@ -60,17 +60,6 @@ export interface LLMConformanceSuiteConfig {
60
60
  * - 'failedResult': the driver catches and resolves ChatResult{success:false} (Ollama, Azure).
61
61
  */
62
62
  NonStreamingFailureMode: 'throws' | 'failedResult';
63
- /**
64
- * What happens when a STREAMING request is made with an already-aborted token. Required when
65
- * `SupportsStreaming` is true.
66
- * - 'resolvesCancelled': the driver detects the pre-abort itself (empty stream + cancelled
67
- * finalize) and the promise resolves with the documented cancelled shape (Groq, Cerebras).
68
- * - 'rejectsErrorResult': createStreamingRequest throws (driver pre-check or SDK abort
69
- * error), and BaseLLM's outer catch — which does NOT special-case cancellation — rejects
70
- * with a generic statusText:'error' ChatResult instead of the cancelled shape (OpenAI
71
- * family, Mistral, Ollama, Azure). Pinned under a `[KNOWN DEVIATION]` test name.
72
- */
73
- PreAbortedStreamingBehavior?: 'resolvesCancelled' | 'rejectsErrorResult';
74
63
  /** Program the vendor mock: the next non-streaming call succeeds with this content + usage. */
75
64
  ScriptNonStreamingSuccess: (content: string, usage: ExpectedUsageCounts) => void;
76
65
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"llm-conformance.d.ts","sourceRoot":"","sources":["../../src/ai/llm-conformance.ts"],"names":[],"mappings":"AA+DA,OAAO,EAAE,OAAO,EAA+E,MAAM,oBAAoB,CAAC;AAE1H;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,+CAA+C;AAC/C,MAAM,MAAM,WAAW;AACnB,+CAA+C;AAC7C,cAAc;AAChB,uEAAuE;GACrE,aAAa;AACf,4EAA4E;GAC1E,WAAW,CAAC;AAElB;;;GAGG;AACH,MAAM,MAAM,2BAA2B;AACnC;;;GAGG;AACD,qBAAqB;AACvB;;;GAGG;GACD,4BAA4B,CAAC;AAEnC,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,2BAA2B,CAAC;IAClC,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACtC,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,EAAE,MAAM,OAAO,CAAC;IAEzB,4FAA4F;IAC5F,iBAAiB,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,uBAAuB,EAAE,QAAQ,GAAG,cAAc,CAAC;IAEnD;;;;;;;;;OASG;IACH,2BAA2B,CAAC,EAAE,mBAAmB,GAAG,oBAAoB,CAAC;IAEzE,+FAA+F;IAC/F,yBAAyB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEjF;;;;OAIG;IACH,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAE/E;;;;OAIG;IACH,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAEhG;;;;OAIG;IACH,2BAA2B,EAAE,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IAEhG,2FAA2F;IAC3F,eAAe,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAC/C;AA8ED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAsX9E"}
1
+ {"version":3,"file":"llm-conformance.d.ts","sourceRoot":"","sources":["../../src/ai/llm-conformance.ts"],"names":[],"mappings":"AA+DA,OAAO,EAAE,OAAO,EAA+E,MAAM,oBAAoB,CAAC;AAE1H;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,+CAA+C;AAC/C,MAAM,MAAM,WAAW;AACnB,+CAA+C;AAC7C,cAAc;AAChB,uEAAuE;GACrE,aAAa;AACf,4EAA4E;GAC1E,WAAW,CAAC;AAElB;;;GAGG;AACH,MAAM,MAAM,2BAA2B;AACnC;;;GAGG;AACD,qBAAqB;AACvB;;;GAGG;GACD,4BAA4B,CAAC;AAEnC,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,2BAA2B,CAAC;IAClC,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACtC,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,EAAE,MAAM,OAAO,CAAC;IAEzB,4FAA4F;IAC5F,iBAAiB,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,uBAAuB,EAAE,QAAQ,GAAG,cAAc,CAAC;IAEnD,+FAA+F;IAC/F,yBAAyB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEjF;;;;OAIG;IACH,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAE/E;;;;OAIG;IACH,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAEhG;;;;OAIG;IACH,2BAA2B,EAAE,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IAEhG,2FAA2F;IAC3F,eAAe,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAC/C;AA8ED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI,CA2V9E"}
@@ -122,9 +122,6 @@ function expectChatResultRejection(settled) {
122
122
  * Registers a full `describe` block — call it at the top level of a provider test file.
123
123
  */
124
124
  export function RunLLMConformanceSuite(config) {
125
- if (config.SupportsStreaming && !config.PreAbortedStreamingBehavior) {
126
- throw new Error(`LLM conformance suite for ${config.ProviderName}: PreAbortedStreamingBehavior is required when SupportsStreaming is true`);
127
- }
128
125
  const declaredDeviations = config.KnownDeviations ?? [];
129
126
  const queriedKinds = new Set();
130
127
  const hasDeviation = (kind) => {
@@ -337,8 +334,8 @@ export function RunLLMConformanceSuite(config) {
337
334
  config.ScriptNonStreamingSuccess(NON_STREAMING_CONTENT, NON_STREAMING_USAGE);
338
335
  const result = await llm.ChatCompletion(buildChatParams(controller.signal));
339
336
  expect(result.success).toBe(false);
340
- expect(result.statusText.toLowerCase()).toBe('cancelled');
341
- expect(result.errorInfo).toBeDefined();
337
+ expect(result.statusText).toBe('cancelled');
338
+ expect(result.errorInfo).toMatchObject({ errorType: 'Cancelled', severity: 'Fatal', canFailover: false });
342
339
  expect(result.data.choices).toHaveLength(0);
343
340
  });
344
341
  if (config.SupportsStreaming) {
@@ -352,8 +349,8 @@ export function RunLLMConformanceSuite(config) {
352
349
  const result = await llm.ChatCompletion(params);
353
350
  expect(result).toBeInstanceOf(ChatResult);
354
351
  expect(result.success).toBe(false);
355
- expect(result.statusText.toLowerCase()).toBe('cancelled');
356
- expect(result.errorInfo).toBeDefined();
352
+ expect(result.statusText).toBe('cancelled');
353
+ expect(result.errorInfo).toMatchObject({ errorType: 'Cancelled', severity: 'Fatal', canFailover: false });
357
354
  expect(result.data.choices).toHaveLength(0);
358
355
  // Prove the abort really happened mid-stream: the pre-abort chunk flowed.
359
356
  expect(recorder.ContentCalls.some((c) => c.Chunk === CANCEL_CHUNK && !c.IsComplete)).toBe(true);
@@ -362,40 +359,20 @@ export function RunLLMConformanceSuite(config) {
362
359
  expect(recorder.CompleteCalls[0]).toBe(result);
363
360
  expect(recorder.ErrorCalls).toHaveLength(0);
364
361
  });
365
- if (config.PreAbortedStreamingBehavior === 'resolvesCancelled') {
366
- it('resolves a cancelled ChatResult when the token is aborted before the stream starts', async () => {
367
- const controller = new AbortController();
368
- controller.abort();
369
- config.ScriptStreamingSuccess(STREAMING_CHUNKS, STREAMING_USAGE);
370
- const recorder = createStreamingRecorder();
371
- const params = buildChatParams(controller.signal);
372
- params.streaming = true;
373
- params.streamingCallbacks = recorder.Callbacks;
374
- const result = await llm.ChatCompletion(params);
375
- expect(result.success).toBe(false);
376
- expect(result.statusText.toLowerCase()).toBe('cancelled');
377
- expect(result.data.choices).toHaveLength(0);
378
- });
379
- }
380
- else {
381
- it("[KNOWN DEVIATION] a pre-aborted streaming request rejects with a generic statusText='error' ChatResult instead of resolving the cancelled shape", async () => {
382
- // BaseLLM's outer streaming catch does not special-case cancellation, so a
383
- // createStreamingRequest that throws on a pre-aborted token surfaces as a
384
- // generic 'error' rejection rather than the documented cancelled result.
385
- const controller = new AbortController();
386
- controller.abort();
387
- config.ScriptStreamingSuccess(STREAMING_CHUNKS, STREAMING_USAGE);
388
- const recorder = createStreamingRecorder();
389
- const params = buildChatParams(controller.signal);
390
- params.streaming = true;
391
- params.streamingCallbacks = recorder.Callbacks;
392
- const settled = await settle(llm.ChatCompletion(params));
393
- const rejection = expectChatResultRejection(settled);
394
- expect(rejection.success).toBe(false);
395
- expect(rejection.statusText).toBe('error');
396
- expect(recorder.CompleteCalls).toHaveLength(0);
397
- });
398
- }
362
+ it('resolves a cancelled ChatResult when the token is aborted before the stream starts', async () => {
363
+ const controller = new AbortController();
364
+ controller.abort();
365
+ config.ScriptStreamingSuccess(STREAMING_CHUNKS, STREAMING_USAGE);
366
+ const recorder = createStreamingRecorder();
367
+ const params = buildChatParams(controller.signal);
368
+ params.streaming = true;
369
+ params.streamingCallbacks = recorder.Callbacks;
370
+ const result = await llm.ChatCompletion(params);
371
+ expect(result.success).toBe(false);
372
+ expect(result.statusText).toBe('cancelled');
373
+ expect(result.errorInfo?.errorType).toBe('Cancelled');
374
+ expect(result.data.choices).toHaveLength(0);
375
+ });
399
376
  }
400
377
  });
401
378
  describe('streaming fallback', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-conformance.js","sourceRoot":"","sources":["../../src/ai/llm-conformance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-conformance.js","sourceRoot":"","sources":["../../src/ai/llm-conformance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAW,eAAe,EAAE,UAAU,EAAE,UAAU,EAA0B,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAmG1H,gGAAgG;AAChG,iGAAiG;AACjG,gGAAgG;AAEhG,MAAM,qBAAqB,GAAG,8CAA8C,CAAC;AAC7E,MAAM,mBAAmB,GAAwB,EAAE,YAAY,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;AAC3F,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACjE,MAAM,eAAe,GAAwB,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;AACtF,MAAM,eAAe,GAAG,+BAA+B,CAAC;AACxD,MAAM,gBAAgB,GAAG,UAAU,CAAC;AACpC,MAAM,YAAY,GAAG,QAAQ,CAAC;AAkB9B,SAAS,uBAAuB;IAC5B,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,MAAM,aAAa,GAAiB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAc,EAAE,CAAC;IACjC,OAAO;QACH,YAAY,EAAE,YAAY;QAC1B,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,UAAU;QACtB,SAAS,EAAE;YACP,SAAS,EAAE,CAAC,KAAa,EAAE,UAAmB,EAAE,EAAE;gBAC9C,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,UAAU,EAAE,CAAC,aAAyB,EAAE,EAAE;gBACtC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtC,CAAC;YACD,OAAO,EAAE,CAAC,KAAc,EAAE,EAAE;gBACxB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;SACJ;KACJ,CAAC;AACN,CAAC;AAED,SAAS,eAAe,CAAC,iBAA+B;IACpD,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,MAAM,CAAC,KAAK,GAAG,wBAAwB,CAAC;IACxC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IACnG,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,OAA4B;IAC9C,IAAI,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,OAAO,EAAE,CAAC;IACxD,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,SAAS,yBAAyB,CAAC,OAAoB;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,MAAM,GAAI,OAAmD,CAAC,MAAM,CAAC;IAC3E,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1C,OAAO,MAAoB,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAiC;IACpE,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;IACxD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC5D,MAAM,YAAY,GAAG,CAAC,IAAiC,EAAW,EAAE;QAChE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC3D,CAAC,CAAC;IAEF,6FAA6F;IAC7F,0DAA0D;IAC1D,MAAM,mBAAmB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACnG,MAAM,0BAA0B,GAC5B,MAAM,CAAC,uBAAuB,KAAK,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAE3G,QAAQ,CAAC,GAAG,MAAM,CAAC,YAAY,6CAA6C,EAAE,GAAG,EAAE;QAC/E,IAAI,GAAY,CAAC;QAEjB,UAAU,CAAC,GAAG,EAAE;YACZ,GAAG,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,gCAAgC,MAAM,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE;gBAChE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;YAC7D,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;gBAC1E,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;gBAE7E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;gBAE3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;gBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAC3D,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;gBAChF,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;gBAE7E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;gBAE3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBACrD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAmB,CAAC;gBAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBAClE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YAC9E,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC5D,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;gBAE7E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;gBAE3D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;YAC7D,IAAI,MAAM,CAAC,uBAAuB,KAAK,QAAQ,EAAE,CAAC;gBAC9C,EAAE,CAAC,8HAA8H,EAAE,KAAK,IAAI,EAAE;oBAC1I,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;oBAEjE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;oBAEpE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACxC,MAAM,MAAM,GAAI,OAAmD,CAAC,MAAM,CAAC;oBAC3E,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBACrC,MAAM,CAAE,MAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;oBACpG,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;oBAEjE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;oBAE3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;oBACvD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;oBACtC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,CAAC;gBAEH,IAAI,0BAA0B,EAAE,CAAC;oBAC7B,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;wBAC/E,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;wBAEjE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;wBAE3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACnC,wEAAwE;wBACxE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;oBAC7C,CAAC,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;wBAC1D,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;wBAEjE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC;wBAE3D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACnC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC3C,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAED,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;gBAC/F,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;gBAEjE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBAE/D,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBAC3D,IAAI,MAAM,CAAC,uBAAuB,KAAK,QAAQ,EAAE,CAAC;oBAC9C,uEAAuE;oBACvE,yCAAyC;oBACzC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC/C,CAAC;qBAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;oBACrC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC/C,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC3B,QAAQ,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACzD,IAAI,QAA2B,CAAC;gBAChC,IAAI,MAAkB,CAAC;gBAEvB,UAAU,CAAC,KAAK,IAAI,EAAE;oBAClB,MAAM,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;oBACjE,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;oBACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAC/C,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;oBAChE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnF,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,2FAA2F,EAAE,GAAG,EAAE;oBACjG,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBACpE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;oBAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACrE,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBACtD,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC5E,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;oBAC3F,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;oBACtD,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;oBACtE,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;oBAC1C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC9C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC;gBAEH,IAAI,mBAAmB,EAAE,CAAC;oBACtB,EAAE,CAAC,uFAAuF,EAAE,GAAG,EAAE;wBAC7F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAmB,CAAC;wBAC9C,qDAAqD;wBACrD,qDAAqD;wBACrD,oCAAoC;wBACpC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACnC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC3C,CAAC,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;wBACvE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAmB,CAAC;wBAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;wBAC9D,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC;gBACP,CAAC;gBAED,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;oBAC/D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC9C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxF,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACzD,EAAE,CAAC,sGAAsG,EAAE,KAAK,IAAI,EAAE;oBAClH,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;oBAC/C,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;oBACjD,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;oBACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAE/C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;oBAEzD,MAAM,SAAS,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;oBACrD,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACtC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC3C,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;oBAC1D,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC1C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC5C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACjD,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;oBAC9G,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;oBAC/C,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC;oBACvF,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;oBACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAE/C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;oBAEzD,6EAA6E;oBAC7E,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,gBAAgB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpG,8DAA8D;oBAC9D,MAAM,SAAS,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;oBACrD,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACtC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC3C,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;oBAC1D,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC1C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC5C,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACnC,EAAE,CAAC,sGAAsG,EAAE,KAAK,IAAI,EAAE;gBAClH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;gBACzC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,6EAA6E;gBAC7E,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;gBAE7E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE5E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC5C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC1G,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,EAAE,CAAC,mIAAmI,EAAE,KAAK,IAAI,EAAE;oBAC/I,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;oBACzC,MAAM,CAAC,2BAA2B,CAAC,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;oBAC/D,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAClD,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAE/C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;oBAC1C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC5C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC1G,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC5C,0EAA0E;oBAC1E,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChG,6EAA6E;oBAC7E,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;oBAChG,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;oBACzC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;oBACjE,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAClD,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAE/C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC5C,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAChC,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;oBAChG,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;oBAC7E,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;oBACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,wDAAwD;oBAEjF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAC/E,CAAC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,EAAE,CAAC,uHAAuH,EAAE,KAAK,IAAI,EAAE;oBACnI,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;oBAC7E,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;oBACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAE/C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;oBAC3E,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC9C,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;gBAClF,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;oBACzC,MAAM,CACF,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAC9B,oBAAoB,SAAS,CAAC,IAAI,0CAA0C,CAC/E,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;oBACrB,MAAM,CACF,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAChC,oBAAoB,SAAS,CAAC,IAAI,4EAA4E,CACjH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -37,6 +37,10 @@ import { BaseLLM, ChatParams, ChatResult, ModelUsage, type ClassifyParams, type
37
37
  * for cases where the test controls `errorInfo` (including leaving it absent).
38
38
  * - `throw` — SDK-style failure: the returned promise rejects with `error`.
39
39
  * - `hang` — never settles; models a hung provider socket (timeout tests).
40
+ * - `hangUntilAborted` — waits like a real SDK call until the request's
41
+ * `cancellationToken` aborts, then rejects with an `AbortError`, which
42
+ * BaseLLM reports as a cancelled result. `onStart` runs when the call begins,
43
+ * so a test can abort at a known moment.
40
44
  * - `stream` — streams `chunks` through the real BaseLLM streaming template
41
45
  * method when the caller requested streaming; in a non-streaming call the
42
46
  * chunks resolve joined as one successful result.
@@ -61,6 +65,9 @@ export type TestLLMOutcome = {
61
65
  delayMS?: number;
62
66
  } | {
63
67
  kind: 'hang';
68
+ } | {
69
+ kind: 'hangUntilAborted';
70
+ onStart?: () => void;
64
71
  } | {
65
72
  kind: 'stream';
66
73
  chunks: string[];
@@ -117,10 +124,10 @@ export declare class TestLLM extends BaseLLM {
117
124
  /** Sets the native file-input capabilities this driver reports (`null` = none). */
118
125
  SetFileCapabilities(capabilities: FileCapabilities | null): this;
119
126
  ChatCompletion(params: ChatParams): Promise<ChatResult>;
120
- protected nonStreamingChatCompletion(_params: ChatParams): Promise<ChatResult>;
127
+ protected nonStreamingChatCompletion(params: ChatParams): Promise<ChatResult>;
121
128
  ClassifyText(_params: ClassifyParams): Promise<ClassifyResult>;
122
129
  SummarizeText(_params: SummarizeParams): Promise<SummarizeResult>;
123
- protected createStreamingRequest(_params: ChatParams): Promise<AsyncGenerator<string>>;
130
+ protected createStreamingRequest(params: ChatParams): Promise<AsyncGenerator<string>>;
124
131
  protected processStreamingChunk(chunk: string): {
125
132
  content: string;
126
133
  finishReason?: string | undefined;
@@ -129,6 +136,8 @@ export declare class TestLLM extends BaseLLM {
129
136
  protected finalizeStreamingResponse(accumulatedContent: string | null | undefined, _lastChunk: string | null | undefined, _usage: ModelUsage | null | undefined): ChatResult;
130
137
  private nextOutcome;
131
138
  private executeOutcome;
139
+ /** Settles only when the signal aborts, rejecting the way an SDK does: with an `AbortError`. */
140
+ private untilAborted;
132
141
  private wait;
133
142
  private chunkGenerator;
134
143
  private neverGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"test-llm.d.ts","sourceRoot":"","sources":["../../src/ai/test-llm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAC;AAI5B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7G;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAI7E;;;;;;;GAOG;AACH,qBAAa,OAAQ,SAAQ,OAAO;IAClC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,gBAAgB,CAAqB;IAE7C;;;;OAIG;IACI,iBAAiB,UAAS;gBAErB,MAAM,SAAiB;IAQnC,oFAAoF;IAC7E,MAAM,CAAC,GAAG,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI;IAKlD,+CAA+C;IACxC,OAAO,CAAC,GAAG,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI;IAKnD,wGAAwG;IACjG,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAKvD,sFAAsF;IAC/E,KAAK,IAAI,IAAI;IAapB,oDAAoD;IACpD,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAMD,sEAAsE;IACtE,IAAW,KAAK,IAAI,SAAS,UAAU,EAAE,CAExC;IAED,iDAAiD;IACjD,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,sFAAsF;IACtF,IAAW,YAAY,IAAI,MAAM,EAAE,CAElC;IAMD,IAAoB,iBAAiB,IAAI,OAAO,CAE/C;IAED,wEAAwE;IACjE,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAKjD,IAAoB,eAAe,IAAI,OAAO,CAE7C;IAED,+DAA+D;IACxD,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAK/B,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IAI9D,mFAAmF;IAC5E,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI;IASjD,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;cAKpD,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAIhF,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAI9D,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;cAQrD,sBAAsB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;cAuBlF,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,KAAK,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;KAAE;cAIvH,yBAAyB,CAC1C,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GACpC,UAAU;IAWb,OAAO,CAAC,WAAW;YAOL,cAAc;YA2Bd,IAAI;YAMH,cAAc;YAMd,cAAc;CAK9B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,SAAM,GAAG,MAAM,IAAI,CA8BxG;AAOD,+CAA+C;AAC/C,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,SAAM,GAAG,MAAM,IAAI,CAExG"}
1
+ {"version":3,"file":"test-llm.d.ts","sourceRoot":"","sources":["../../src/ai/test-llm.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@
23
23
  * expect(llm.CalledModels).toEqual(['api-claude', 'api-gpt']);
24
24
  * ```
25
25
  */
26
- import { BaseLLM, } from '@memberjunction/ai';
26
+ import { BaseLLM, CreateCancellationError, } from '@memberjunction/ai';
27
27
  import { MJGlobal } from '@memberjunction/global';
28
28
  import { MakeDriverFailureChatResult, MakeModelUsage, MakeSuccessChatResult } from './chat-result-factories.js';
29
29
  const DEFAULT_OUTCOME = { kind: 'succeed', content: 'test response' };
@@ -135,8 +135,8 @@ export class TestLLM extends BaseLLM {
135
135
  this.recordedCalls.push(params);
136
136
  return super.ChatCompletion(params);
137
137
  }
138
- async nonStreamingChatCompletion(_params) {
139
- return this.executeOutcome(this.nextOutcome());
138
+ async nonStreamingChatCompletion(params) {
139
+ return this.executeOutcome(this.nextOutcome(), params.cancellationToken);
140
140
  }
141
141
  async ClassifyText(_params) {
142
142
  throw new Error('TestLLM.ClassifyText is not supported — this harness scripts ChatCompletion outcomes only');
@@ -147,7 +147,7 @@ export class TestLLM extends BaseLLM {
147
147
  // ------------------------------------------------------------------
148
148
  // Streaming implementation (drives the REAL BaseLLM streaming template method)
149
149
  // ------------------------------------------------------------------
150
- async createStreamingRequest(_params) {
150
+ async createStreamingRequest(params) {
151
151
  const outcome = this.nextOutcome();
152
152
  switch (outcome.kind) {
153
153
  case 'stream':
@@ -167,6 +167,10 @@ export class TestLLM extends BaseLLM {
167
167
  throw new Error(outcome.result.errorMessage ?? 'TestLLM: scripted failResult during streaming');
168
168
  case 'hang':
169
169
  return this.neverGenerator();
170
+ case 'hangUntilAborted':
171
+ outcome.onStart?.();
172
+ await this.untilAborted(params.cancellationToken);
173
+ return this.neverGenerator();
170
174
  }
171
175
  }
172
176
  processStreamingChunk(chunk) {
@@ -187,7 +191,7 @@ export class TestLLM extends BaseLLM {
187
191
  }
188
192
  return this.script.shift() ?? this.defaultOutcome;
189
193
  }
190
- async executeOutcome(outcome) {
194
+ async executeOutcome(outcome, signal) {
191
195
  switch (outcome.kind) {
192
196
  case 'succeed':
193
197
  await this.wait(outcome.delayMS);
@@ -208,11 +212,26 @@ export class TestLLM extends BaseLLM {
208
212
  return new Promise(() => {
209
213
  /* never settles — models a hung provider socket */
210
214
  });
215
+ case 'hangUntilAborted':
216
+ outcome.onStart?.();
217
+ return this.untilAborted(signal);
211
218
  case 'stream':
212
219
  // Non-streaming call against a stream outcome: resolve the joined chunks.
213
220
  return MakeSuccessChatResult(outcome.chunks.join(''), { usage: outcome.usage, model: outcome.model });
214
221
  }
215
222
  }
223
+ /** Settles only when the signal aborts, rejecting the way an SDK does: with an `AbortError`. */
224
+ untilAborted(signal) {
225
+ return new Promise((_, reject) => {
226
+ const abort = () => reject(CreateCancellationError({ signal, message: 'TestLLM request was aborted' }));
227
+ if (signal?.aborted) {
228
+ abort();
229
+ }
230
+ else {
231
+ signal?.addEventListener('abort', abort, { once: true });
232
+ }
233
+ });
234
+ }
216
235
  async wait(delayMS) {
217
236
  if (delayMS !== undefined && delayMS > 0) {
218
237
  await new Promise((resolve) => setTimeout(resolve, delayMS));
@@ -1 +1 @@
1
- {"version":3,"file":"test-llm.js","sourceRoot":"","sources":["../../src/ai/test-llm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-llm.js","sourceRoot":"","sources":["../../src/ai/test-llm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import { DatabaseProviderBase, UserInfo, type DatasetResultType, type DatasetStatusResultType, type DeleteSQLResult, type EntityRecordNameResult, type ILocalStorageProvider, type IMetadataProvider, type PostCommitToken, type PotentialDuplicateResponse, type ProviderType, type RecordDependency, type RecordMergeResult, type RunQueryResult, type RunViewResult, type SaveSQLResult, type ScoredCandidate, type TransactionGroupBase } from '@memberjunction/core';
2
+ /**
3
+ * A real `DatabaseProviderBase` for code that checks `instanceof DatabaseProviderBase`, with no cast. It models the
4
+ * transaction a caller opens on it: `BeginTransaction`/`CommitTransaction`/`RollbackTransaction` count `Depth`, and
5
+ * the caller belongs to that transaction unless `CallerIsMember` is false (another scope's transaction on a shared
6
+ * provider). Every data operation throws; subclass it and override what the code under test calls.
7
+ */
8
+ export declare class DatabaseProviderStub extends DatabaseProviderBase {
9
+ /** Nesting depth of the transaction open on this instance; 0 = none. */
10
+ protected Depth: number;
11
+ /** Whether the calling scope is part of the open transaction. */
12
+ CallerIsMember: boolean;
13
+ protected get CurrentTransactionDepth(): number;
14
+ CapturePostCommitToken(): PostCommitToken;
15
+ BeginTransaction(): Promise<void>;
16
+ CommitTransaction(): Promise<void>;
17
+ RollbackTransaction(): Promise<void>;
18
+ get ProviderType(): ProviderType;
19
+ get DatabaseConnection(): null;
20
+ get InstanceConnectionString(): string;
21
+ get LocalStorageProvider(): ILocalStorageProvider;
22
+ protected get AllowRefresh(): boolean;
23
+ protected get Metadata(): IMetadataProvider;
24
+ protected InternalGetEntityRecordName(): Promise<string>;
25
+ protected InternalGetEntityRecordNames(): Promise<EntityRecordNameResult[]>;
26
+ GetRecordFavoriteStatus(): Promise<boolean>;
27
+ SetRecordFavoriteStatus(): Promise<void>;
28
+ protected InternalRunView<T>(): Promise<RunViewResult<T>>;
29
+ protected InternalRunViews<T>(): Promise<RunViewResult<T>[]>;
30
+ protected InternalRunQuery(): Promise<RunQueryResult>;
31
+ protected InternalRunQueries(): Promise<RunQueryResult[]>;
32
+ protected searchEntitiesSemanticPass(): Promise<ScoredCandidate[]>;
33
+ protected GetCurrentUser(): Promise<UserInfo>;
34
+ GetRecordDependencies(): Promise<RecordDependency[]>;
35
+ GetRecordDuplicates(): Promise<PotentialDuplicateResponse>;
36
+ MergeRecords(): Promise<RecordMergeResult>;
37
+ GetDatasetByName(): Promise<DatasetResultType>;
38
+ GetDatasetStatusByName(): Promise<DatasetStatusResultType>;
39
+ CreateTransactionGroup(): Promise<TransactionGroupBase>;
40
+ ExecuteSQL<T>(_query: string): Promise<Array<T>>;
41
+ QuoteIdentifier(name: string): string;
42
+ QuoteSchemaAndView(schema: string, name: string): string;
43
+ protected InternalExecuteQueryFromSpec(): Promise<RunQueryResult>;
44
+ protected BuildChildDiscoverySQL(): string;
45
+ protected BuildHardLinkDependencySQL(): string;
46
+ protected BuildSoftLinkDependencySQL(): string;
47
+ protected GenerateSaveSQL(): Promise<SaveSQLResult>;
48
+ protected GenerateDeleteSQL(): DeleteSQLResult;
49
+ protected get UUIDFunctionPattern(): RegExp;
50
+ protected get DBDefaultFunctionPattern(): RegExp;
51
+ protected CheckRecordRLS(): Promise<boolean>;
52
+ protected CheckCreateRLS(): Promise<boolean>;
53
+ protected CheckUpdateRLSPostImage(): Promise<boolean>;
54
+ protected BuildRecordChangeSQL(): {
55
+ sql: string;
56
+ parameters?: unknown[];
57
+ } | null;
58
+ protected BuildSiblingRecordChangeSQL(): string;
59
+ }
60
+ //# sourceMappingURL=database-provider-stub.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-provider-stub.d.ts","sourceRoot":"","sources":["../src/database-provider-stub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { DatabaseProviderBase, } from '@memberjunction/core';
2
+ /** The error every member a test does not exercise throws, so a test that reaches one fails loudly. */
3
+ function notUsed() {
4
+ return new Error('DatabaseProviderStub: not used by these tests');
5
+ }
6
+ /**
7
+ * A real `DatabaseProviderBase` for code that checks `instanceof DatabaseProviderBase`, with no cast. It models the
8
+ * transaction a caller opens on it: `BeginTransaction`/`CommitTransaction`/`RollbackTransaction` count `Depth`, and
9
+ * the caller belongs to that transaction unless `CallerIsMember` is false (another scope's transaction on a shared
10
+ * provider). Every data operation throws; subclass it and override what the code under test calls.
11
+ */
12
+ export class DatabaseProviderStub extends DatabaseProviderBase {
13
+ constructor() {
14
+ super(...arguments);
15
+ /** Nesting depth of the transaction open on this instance; 0 = none. */
16
+ this.Depth = 0;
17
+ /** Whether the calling scope is part of the open transaction. */
18
+ this.CallerIsMember = true;
19
+ }
20
+ get CurrentTransactionDepth() { return this.Depth; }
21
+ CapturePostCommitToken() {
22
+ return this.Depth > 0 && this.CallerIsMember ? { Epoch: 1, FrameIds: [this.Depth] } : { Epoch: null, FrameIds: [] };
23
+ }
24
+ async BeginTransaction() { this.Depth++; }
25
+ async CommitTransaction() { this.Depth--; }
26
+ async RollbackTransaction() { this.Depth--; }
27
+ get ProviderType() { return 'Database'; }
28
+ get DatabaseConnection() { return null; }
29
+ get InstanceConnectionString() { return ''; }
30
+ get LocalStorageProvider() { throw notUsed(); }
31
+ get AllowRefresh() { return false; }
32
+ get Metadata() { return this; }
33
+ async InternalGetEntityRecordName() { throw notUsed(); }
34
+ async InternalGetEntityRecordNames() { throw notUsed(); }
35
+ async GetRecordFavoriteStatus() { throw notUsed(); }
36
+ async SetRecordFavoriteStatus() { throw notUsed(); }
37
+ async InternalRunView() { throw notUsed(); }
38
+ async InternalRunViews() { throw notUsed(); }
39
+ async InternalRunQuery() { throw notUsed(); }
40
+ async InternalRunQueries() { throw notUsed(); }
41
+ async searchEntitiesSemanticPass() { throw notUsed(); }
42
+ async GetCurrentUser() { throw notUsed(); }
43
+ async GetRecordDependencies() { throw notUsed(); }
44
+ async GetRecordDuplicates() { throw notUsed(); }
45
+ async MergeRecords() { throw notUsed(); }
46
+ async GetDatasetByName() { throw notUsed(); }
47
+ async GetDatasetStatusByName() { throw notUsed(); }
48
+ async CreateTransactionGroup() { throw notUsed(); }
49
+ async ExecuteSQL(_query) { throw notUsed(); }
50
+ QuoteIdentifier(name) { return `[${name}]`; }
51
+ QuoteSchemaAndView(schema, name) { return `[${schema}].[${name}]`; }
52
+ async InternalExecuteQueryFromSpec() { throw notUsed(); }
53
+ BuildChildDiscoverySQL() { throw notUsed(); }
54
+ BuildHardLinkDependencySQL() { throw notUsed(); }
55
+ BuildSoftLinkDependencySQL() { throw notUsed(); }
56
+ async GenerateSaveSQL() { throw notUsed(); }
57
+ GenerateDeleteSQL() { throw notUsed(); }
58
+ get UUIDFunctionPattern() { return /^newid\(\)$/i; }
59
+ get DBDefaultFunctionPattern() { return /^getdate\(\)$/i; }
60
+ async CheckRecordRLS() { throw notUsed(); }
61
+ async CheckCreateRLS() { throw notUsed(); }
62
+ async CheckUpdateRLSPostImage() { throw notUsed(); }
63
+ BuildRecordChangeSQL() { throw notUsed(); }
64
+ BuildSiblingRecordChangeSQL() { throw notUsed(); }
65
+ }
66
+ //# sourceMappingURL=database-provider-stub.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-provider-stub.js","sourceRoot":"","sources":["../src/database-provider-stub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { EntityInfo, ProviderBase, UserInfo, type DatasetResultType, type DatasetStatusResultType, type EntityRecordNameResult, type ILocalStorageProvider, type IMetadataProvider, type PotentialDuplicateResponse, type ProviderType, type RecordDependency, type RecordMergeResult, type RunQueryResult, type RunViewResult, type ScoredCandidate, type TransactionGroupBase } from '@memberjunction/core';
2
+ /**
3
+ * A real `ProviderBase` that knows only the entities it is given: a typed metadata-provider double for unit tests, so a
4
+ * test hands code an `IMetadataProvider` without a cast. Entity lookups (`Entities`, `EntityByID`) and `CurrentUser`
5
+ * work; every data operation throws. Spy on `RunView`/`RunViews` (`vi.spyOn(provider, 'RunView')`) to serve rows.
6
+ */
7
+ export declare class EntitiesOnlyProvider extends ProviderBase {
8
+ private readonly entityList;
9
+ private readonly currentUser;
10
+ /**
11
+ * @param entityList the entities the provider knows
12
+ * @param currentUser the user `CurrentUser` returns
13
+ */
14
+ constructor(entityList: EntityInfo[], currentUser?: UserInfo);
15
+ get Entities(): EntityInfo[];
16
+ EntityByID(entityID: string): EntityInfo | undefined;
17
+ get CurrentUser(): UserInfo;
18
+ get ProviderType(): ProviderType;
19
+ get DatabaseConnection(): null;
20
+ get InstanceConnectionString(): string;
21
+ get LocalStorageProvider(): ILocalStorageProvider;
22
+ protected get AllowRefresh(): boolean;
23
+ protected get Metadata(): IMetadataProvider;
24
+ protected InternalGetEntityRecordName(): Promise<string>;
25
+ protected InternalGetEntityRecordNames(): Promise<EntityRecordNameResult[]>;
26
+ GetRecordFavoriteStatus(): Promise<boolean>;
27
+ SetRecordFavoriteStatus(): Promise<void>;
28
+ protected InternalRunView<T>(): Promise<RunViewResult<T>>;
29
+ protected InternalRunViews<T>(): Promise<RunViewResult<T>[]>;
30
+ protected InternalRunQuery(): Promise<RunQueryResult>;
31
+ protected InternalRunQueries(): Promise<RunQueryResult[]>;
32
+ protected searchEntitiesSemanticPass(): Promise<ScoredCandidate[]>;
33
+ protected InternalExecuteQueryFromSpec(): Promise<RunQueryResult>;
34
+ protected GetCurrentUser(): Promise<UserInfo>;
35
+ GetRecordDependencies(): Promise<RecordDependency[]>;
36
+ GetRecordDuplicates(): Promise<PotentialDuplicateResponse>;
37
+ MergeRecords(): Promise<RecordMergeResult>;
38
+ GetDatasetByName(): Promise<DatasetResultType>;
39
+ GetDatasetStatusByName(): Promise<DatasetStatusResultType>;
40
+ CreateTransactionGroup(): Promise<TransactionGroupBase>;
41
+ }
42
+ //# sourceMappingURL=entities-only-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities-only-provider.d.ts","sourceRoot":"","sources":["../src/entities-only-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC5B,MAAM,sBAAsB,CAAC;AAQ9B;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;IAKtC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAAgB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAJnF;;;OAGG;gBAC0B,UAAU,EAAE,UAAU,EAAE,EAAmB,WAAW,GAAE,QAAyB;IAG9G,IAAoB,QAAQ,IAAI,UAAU,EAAE,CAE3C;IACe,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAGpE,IAAoB,WAAW,IAAI,QAAQ,CAE1C;IACD,IAAW,YAAY,IAAI,YAAY,CAEtC;IACD,IAAW,kBAAkB,IAAI,IAAI,CAEpC;IACD,IAAW,wBAAwB,IAAI,MAAM,CAE5C;IACD,IAAW,oBAAoB,IAAI,qBAAqB,CAEvD;IACD,SAAS,KAAK,YAAY,IAAI,OAAO,CAEpC;IACD,SAAS,KAAK,QAAQ,IAAI,iBAAiB,CAE1C;IACD,SAAS,CAAC,2BAA2B,IAAI,OAAO,CAAC,MAAM,CAAC;IAGxD,SAAS,CAAC,4BAA4B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAGpE,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;IAG3C,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAG/C,SAAS,CAAC,eAAe,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAGzD,SAAS,CAAC,gBAAgB,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAG5D,SAAS,CAAC,gBAAgB,IAAI,OAAO,CAAC,cAAc,CAAC;IAGrD,SAAS,CAAC,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAGzD,SAAS,CAAC,0BAA0B,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAGlE,SAAS,CAAC,4BAA4B,IAAI,OAAO,CAAC,cAAc,CAAC;IAGjE,SAAS,CAAC,cAAc,IAAI,OAAO,CAAC,QAAQ,CAAC;IAGtC,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAGpD,mBAAmB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAG1D,YAAY,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAG1C,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAG9C,sBAAsB,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAG1D,sBAAsB,IAAI,OAAO,CAAC,oBAAoB,CAAC;CAGjE"}
@@ -0,0 +1,101 @@
1
+ import { ProviderBase, UserInfo, } from '@memberjunction/core';
2
+ import { UUIDsEqual } from '@memberjunction/global';
3
+ /** The error every member a test does not exercise throws, so a test that reaches one fails loudly. */
4
+ function notUsed() {
5
+ return new Error('EntitiesOnlyProvider: not used by these tests');
6
+ }
7
+ /**
8
+ * A real `ProviderBase` that knows only the entities it is given: a typed metadata-provider double for unit tests, so a
9
+ * test hands code an `IMetadataProvider` without a cast. Entity lookups (`Entities`, `EntityByID`) and `CurrentUser`
10
+ * work; every data operation throws. Spy on `RunView`/`RunViews` (`vi.spyOn(provider, 'RunView')`) to serve rows.
11
+ */
12
+ export class EntitiesOnlyProvider extends ProviderBase {
13
+ /**
14
+ * @param entityList the entities the provider knows
15
+ * @param currentUser the user `CurrentUser` returns
16
+ */
17
+ constructor(entityList, currentUser = new UserInfo()) {
18
+ super();
19
+ this.entityList = entityList;
20
+ this.currentUser = currentUser;
21
+ }
22
+ get Entities() {
23
+ return this.entityList;
24
+ }
25
+ EntityByID(entityID) {
26
+ return this.entityList.find((entity) => UUIDsEqual(entity.ID, entityID));
27
+ }
28
+ get CurrentUser() {
29
+ return this.currentUser;
30
+ }
31
+ get ProviderType() {
32
+ return 'Database';
33
+ }
34
+ get DatabaseConnection() {
35
+ return null;
36
+ }
37
+ get InstanceConnectionString() {
38
+ return '';
39
+ }
40
+ get LocalStorageProvider() {
41
+ throw notUsed();
42
+ }
43
+ get AllowRefresh() {
44
+ return false;
45
+ }
46
+ get Metadata() {
47
+ return this;
48
+ }
49
+ InternalGetEntityRecordName() {
50
+ throw notUsed();
51
+ }
52
+ InternalGetEntityRecordNames() {
53
+ throw notUsed();
54
+ }
55
+ GetRecordFavoriteStatus() {
56
+ throw notUsed();
57
+ }
58
+ SetRecordFavoriteStatus() {
59
+ throw notUsed();
60
+ }
61
+ InternalRunView() {
62
+ throw notUsed();
63
+ }
64
+ InternalRunViews() {
65
+ throw notUsed();
66
+ }
67
+ InternalRunQuery() {
68
+ throw notUsed();
69
+ }
70
+ InternalRunQueries() {
71
+ throw notUsed();
72
+ }
73
+ searchEntitiesSemanticPass() {
74
+ throw notUsed();
75
+ }
76
+ InternalExecuteQueryFromSpec() {
77
+ throw notUsed();
78
+ }
79
+ GetCurrentUser() {
80
+ throw notUsed();
81
+ }
82
+ GetRecordDependencies() {
83
+ throw notUsed();
84
+ }
85
+ GetRecordDuplicates() {
86
+ throw notUsed();
87
+ }
88
+ MergeRecords() {
89
+ throw notUsed();
90
+ }
91
+ GetDatasetByName() {
92
+ throw notUsed();
93
+ }
94
+ GetDatasetStatusByName() {
95
+ throw notUsed();
96
+ }
97
+ CreateTransactionGroup() {
98
+ throw notUsed();
99
+ }
100
+ }
101
+ //# sourceMappingURL=entities-only-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities-only-provider.js","sourceRoot":"","sources":["../src/entities-only-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,YAAY,EACZ,QAAQ,GAcX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,uGAAuG;AACvG,SAAS,OAAO;IACZ,OAAO,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AACtE,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,YAAY;IAClD;;;OAGG;IACH,YAA6B,UAAwB,EAAmB,cAAwB,IAAI,QAAQ,EAAE;QAC1G,KAAK,EAAE,CAAC;QADiB,eAAU,GAAV,UAAU,CAAc;QAAmB,gBAAW,GAAX,WAAW,CAA2B;IAE9G,CAAC;IACD,IAAoB,QAAQ;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IACe,UAAU,CAAC,QAAgB;QACvC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7E,CAAC;IACD,IAAoB,WAAW;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAW,YAAY;QACnB,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAW,wBAAwB;QAC/B,OAAO,EAAE,CAAC;IACd,CAAC;IACD,IAAW,oBAAoB;QAC3B,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACD,IAAc,YAAY;QACtB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAc,QAAQ;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IACS,2BAA2B;QACjC,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,4BAA4B;QAClC,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,uBAAuB;QAC1B,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,uBAAuB;QAC1B,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,eAAe;QACrB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,gBAAgB;QACtB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,gBAAgB;QACtB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,kBAAkB;QACxB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,0BAA0B;QAChC,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,4BAA4B;QAClC,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACS,cAAc;QACpB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,qBAAqB;QACxB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,mBAAmB;QACtB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,YAAY;QACf,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,gBAAgB;QACnB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,sBAAsB;QACzB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;IACM,sBAAsB;QACzB,MAAM,OAAO,EAAE,CAAC;IACpB,CAAC;CACJ"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,8 @@ export { ResetMJSingletons, resetMJSingletons, ResetClassFactory, resetClassFact
2
2
  export { CreateMockEntity, createMockEntity, type MockEntityOptions } from './mock-entity.js';
3
3
  export { MockRunView, mockRunView, MockRunViews, mockRunViews, ResetRunViewMocks, resetRunViewMocks } from './mock-run-view.js';
4
4
  export { InstallCustomMatchers, installCustomMatchers } from './custom-matchers.js';
5
+ export { EntitiesOnlyProvider } from './entities-only-provider.js';
6
+ export { DatabaseProviderStub } from './database-provider-stub.js';
5
7
  export type {} from './vitest.d';
6
8
  export { TestLLM, RegisterTestLLM, registerTestLLM, type TestLLMOutcome } from './ai/test-llm.js';
7
9
  export { MakeModelUsage, makeModelUsage, MakeSuccessChatResult, makeSuccessChatResult, MakeFailedChatResult, makeFailedChatResult, MakeDriverFailureChatResult, makeDriverFailureChatResult, MakeErrorInfo, makeErrorInfo, MakeChatParams, makeChatParams, type ModelUsageOverrides, type SuccessChatResultOptions, type FailedChatResultOptions, } from './ai/chat-result-factories.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnJ,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACjF,YAAY,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EACL,cAAc,EAAE,cAAc,EAC9B,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,EAAE,oBAAoB,EAC1C,2BAA2B,EAAE,2BAA2B,EACxD,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,MAAM,EACN,KAAK,EACL,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,0BAA0B,EAC1B,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,GAC/B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,iCAAiC,EACjC,KAAK,gBAAgB,EACrB,KAAK,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,GACpC,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnJ,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EACL,cAAc,EAAE,cAAc,EAC9B,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,EAAE,oBAAoB,EAC1C,2BAA2B,EAAE,2BAA2B,EACxD,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,MAAM,EACN,KAAK,EACL,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,0BAA0B,EAC1B,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,GAC/B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,iCAAiC,EACjC,KAAK,gBAAgB,EACrB,KAAK,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,GACpC,MAAM,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -2,6 +2,8 @@ export { ResetMJSingletons, resetMJSingletons, ResetClassFactory, resetClassFact
2
2
  export { CreateMockEntity, createMockEntity } from './mock-entity.js';
3
3
  export { MockRunView, mockRunView, MockRunViews, mockRunViews, ResetRunViewMocks, resetRunViewMocks } from './mock-run-view.js';
4
4
  export { InstallCustomMatchers, installCustomMatchers } from './custom-matchers.js';
5
+ export { EntitiesOnlyProvider } from './entities-only-provider.js';
6
+ export { DatabaseProviderStub } from './database-provider-stub.js';
5
7
  // ---- Shared AI test harness (real @memberjunction/ai contracts, no structural fakes) ----
6
8
  export { TestLLM, RegisterTestLLM, registerTestLLM } from './ai/test-llm.js';
7
9
  export { MakeModelUsage, makeModelUsage, MakeSuccessChatResult, makeSuccessChatResult, MakeFailedChatResult, makeFailedChatResult, MakeDriverFailureChatResult, makeDriverFailureChatResult, MakeErrorInfo, makeErrorInfo, MakeChatParams, makeChatParams, } from './ai/chat-result-factories.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnJ,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAA0B,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGjF,4FAA4F;AAC5F,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AAC/F,OAAO,EACL,cAAc,EAAE,cAAc,EAC9B,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,EAAE,oBAAoB,EAC1C,2BAA2B,EAAE,2BAA2B,EACxD,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,GAI/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,MAAM,EACN,KAAK,EACL,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,0BAA0B,GAS3B,MAAM,uBAAuB,CAAC;AAE/B,iGAAiG;AACjG,OAAO,EACL,sBAAsB,GAMvB,MAAM,sBAAsB,CAAC;AAE9B,wFAAwF;AACxF,OAAO,EACL,iCAAiC,GAGlC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,GAQ/B,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnJ,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAA0B,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGhE,4FAA4F;AAC5F,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AAC/F,OAAO,EACL,cAAc,EAAE,cAAc,EAC9B,qBAAqB,EAAE,qBAAqB,EAC5C,oBAAoB,EAAE,oBAAoB,EAC1C,2BAA2B,EAAE,2BAA2B,EACxD,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,GAI/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,MAAM,EACN,KAAK,EACL,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,0BAA0B,GAS3B,MAAM,uBAAuB,CAAC;AAE/B,iGAAiG;AACjG,OAAO,EACL,sBAAsB,GAMvB,MAAM,sBAAsB,CAAC;AAE9B,wFAAwF;AACxF,OAAO,EACL,iCAAiC,GAGlC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8BAA8B,GAQ/B,MAAM,6BAA6B,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/unit-testing",
3
3
  "type": "module",
4
- "version": "6.2.0-edge.4",
4
+ "version": "6.2.0-edge.5",
5
5
  "description": "MemberJunction: Unit testing utilities and mock infrastructure for Vitest",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -16,8 +16,9 @@
16
16
  "vitest": "^4.0.18"
17
17
  },
18
18
  "dependencies": {
19
- "@memberjunction/ai": "6.2.0-edge.4",
20
- "@memberjunction/global": "6.2.0-edge.4"
19
+ "@memberjunction/ai": "6.2.0-edge.5",
20
+ "@memberjunction/core": "6.2.0-edge.5",
21
+ "@memberjunction/global": "6.2.0-edge.5"
21
22
  },
22
23
  "repository": {
23
24
  "type": "git",