@jaypie/testkit 1.1.9 → 1.1.10

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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -1,4 +1,6 @@
1
1
  import { uuid as originalUuid, BadGatewayError as BadGatewayErrorOriginal, BadRequestError as BadRequestErrorOriginal, ConfigurationError as ConfigurationErrorOriginal, ForbiddenError as ForbiddenErrorOriginal, GatewayTimeoutError as GatewayTimeoutErrorOriginal, GoneError as GoneErrorOriginal, IllogicalError as IllogicalErrorOriginal, InternalError as InternalErrorOriginal, MethodNotAllowedError as MethodNotAllowedErrorOriginal, MultiError as MultiErrorOriginal, NotFoundError as NotFoundErrorOriginal, NotImplementedError as NotImplementedErrorOriginal, ProjectError as ProjectErrorOriginal, ProjectMultiError as ProjectMultiErrorOriginal, RejectedError as RejectedErrorOriginal, TeapotError as TeapotErrorOriginal, UnauthorizedError as UnauthorizedErrorOriginal, UnavailableError as UnavailableErrorOriginal, UnhandledError as UnhandledErrorOriginal, UnreachableCodeError as UnreachableCodeErrorOriginal } from "@jaypie/core";
2
+ import type { TextractPageAdaptable } from "@jaypie/textract";
3
+ import type { JsonReturn } from "@jaypie/types";
2
4
  import { ExpressHandlerParameter, GenericArgs, JaypieHandlerFunction, JaypieHandlerOptions, JaypieHandlerParameter } from "./types/jaypie-testkit";
3
5
  import type { SQSMessageResponse } from "@jaypie/aws";
4
6
  export * from "@jaypie/aws";
@@ -8,6 +10,7 @@ export * from "@jaypie/datadog";
8
10
  export * from "@jaypie/lambda";
9
11
  export * from "@jaypie/llm";
10
12
  export * from "@jaypie/mongoose";
13
+ export * from "@jaypie/textract";
11
14
  export declare const getEnvSecret: import("vitest").Mock<() => string>;
12
15
  export declare const getMessages: import("vitest").Mock<(event?: {
13
16
  Records?: Array<{
@@ -24,19 +27,6 @@ export declare const sendTextractJob: import("vitest").Mock<({ key, bucket }: an
24
27
  export declare const BadGatewayError: import("vitest").Mock<(...params: ConstructorParameters<typeof BadGatewayErrorOriginal>) => InstanceType<typeof BadGatewayErrorOriginal>>;
25
28
  export declare const BadRequestError: import("vitest").Mock<(...params: ConstructorParameters<typeof BadRequestErrorOriginal>) => InstanceType<typeof BadRequestErrorOriginal>>;
26
29
  export declare const ConfigurationError: import("vitest").Mock<(...params: ConstructorParameters<typeof ConfigurationErrorOriginal>) => InstanceType<typeof ConfigurationErrorOriginal>>;
27
- export declare const envBoolean: import("vitest").Mock<() => boolean>;
28
- export declare const jaypieHandler: import("vitest").Mock<(handler: JaypieHandlerFunction, { setup, teardown, unavailable, validate, }?: JaypieHandlerOptions) => (...args: GenericArgs) => Promise<unknown>>;
29
- export declare const sleep: import("vitest").Mock<() => boolean>;
30
- export declare const uuid: import("vitest").Mock<typeof originalUuid>;
31
- export declare const submitMetric: import("vitest").Mock<() => boolean>;
32
- export declare const submitMetricSet: import("vitest").Mock<() => boolean>;
33
- export declare const expressHandler: import("vitest").Mock<(handlerOrProps: ExpressHandlerParameter, propsOrHandler?: ExpressHandlerParameter) => (req?: {}, res?: {}, ...extra: unknown[]) => Promise<unknown>>;
34
- export declare const Llm: import("vitest").Mock<(...args: any[]) => any> & {
35
- send: import("vitest").Mock<(...args: any[]) => any>;
36
- };
37
- export declare const connect: import("vitest").Mock<() => boolean>;
38
- export declare const connectFromSecretEnv: import("vitest").Mock<() => boolean>;
39
- export declare const disconnect: import("vitest").Mock<() => boolean>;
40
30
  export declare const ForbiddenError: import("vitest").Mock<(...params: ConstructorParameters<typeof ForbiddenErrorOriginal>) => InstanceType<typeof ForbiddenErrorOriginal>>;
41
31
  export declare const GatewayTimeoutError: import("vitest").Mock<(...params: ConstructorParameters<typeof GatewayTimeoutErrorOriginal>) => InstanceType<typeof GatewayTimeoutErrorOriginal>>;
42
32
  export declare const GoneError: import("vitest").Mock<(...params: ConstructorParameters<typeof GoneErrorOriginal>) => InstanceType<typeof GoneErrorOriginal>>;
@@ -54,7 +44,22 @@ export declare const UnauthorizedError: import("vitest").Mock<(...params: Constr
54
44
  export declare const UnavailableError: import("vitest").Mock<(...params: ConstructorParameters<typeof UnavailableErrorOriginal>) => InstanceType<typeof UnavailableErrorOriginal>>;
55
45
  export declare const UnhandledError: import("vitest").Mock<(...params: ConstructorParameters<typeof UnhandledErrorOriginal>) => InstanceType<typeof UnhandledErrorOriginal>>;
56
46
  export declare const UnreachableCodeError: import("vitest").Mock<(...params: ConstructorParameters<typeof UnreachableCodeErrorOriginal>) => InstanceType<typeof UnreachableCodeErrorOriginal>>;
47
+ export declare const envBoolean: import("vitest").Mock<() => boolean>;
48
+ export declare const jaypieHandler: import("vitest").Mock<(handler: JaypieHandlerFunction, { setup, teardown, unavailable, validate, }?: JaypieHandlerOptions) => (...args: GenericArgs) => Promise<unknown>>;
49
+ export declare const sleep: import("vitest").Mock<() => boolean>;
50
+ export declare const uuid: import("vitest").Mock<typeof originalUuid>;
51
+ export declare const submitMetric: import("vitest").Mock<() => boolean>;
52
+ export declare const submitMetricSet: import("vitest").Mock<() => boolean>;
53
+ export declare const expressHandler: import("vitest").Mock<(handlerOrProps: ExpressHandlerParameter, propsOrHandler?: ExpressHandlerParameter) => (req?: {}, res?: {}, ...extra: unknown[]) => Promise<unknown>>;
57
54
  export declare const lambdaHandler: import("vitest").Mock<(handler: JaypieHandlerParameter, props?: JaypieHandlerParameter) => (event: unknown, context: unknown, ...extra: unknown[]) => Promise<unknown>>;
55
+ export declare const Llm: import("vitest").Mock<(...args: any[]) => any> & {
56
+ send: import("vitest").Mock<(...args: any[]) => any>;
57
+ };
58
+ export declare const connect: import("vitest").Mock<() => boolean>;
59
+ export declare const connectFromSecretEnv: import("vitest").Mock<() => boolean>;
60
+ export declare const disconnect: import("vitest").Mock<() => boolean>;
61
+ export declare const MarkdownPage: import("vitest").Mock<(page: TextractPageAdaptable) => string>;
62
+ export declare const textractJsonToMarkdown: import("vitest").Mock<(textractResults: JsonReturn) => string>;
58
63
  declare const _default: {
59
64
  getMessages: import("vitest").Mock<(event?: {
60
65
  Records?: Array<{
@@ -105,11 +110,13 @@ declare const _default: {
105
110
  submitMetricSet: import("vitest").Mock<() => boolean>;
106
111
  expressHandler: import("vitest").Mock<(handlerOrProps: ExpressHandlerParameter, propsOrHandler?: ExpressHandlerParameter) => (req?: {}, res?: {}, ...extra: unknown[]) => Promise<unknown>>;
107
112
  lambdaHandler: import("vitest").Mock<(handler: JaypieHandlerParameter, props?: JaypieHandlerParameter) => (event: unknown, context: unknown, ...extra: unknown[]) => Promise<unknown>>;
108
- connect: import("vitest").Mock<() => boolean>;
109
- connectFromSecretEnv: import("vitest").Mock<() => boolean>;
110
- disconnect: import("vitest").Mock<() => boolean>;
111
113
  Llm: import("vitest").Mock<(...args: any[]) => any> & {
112
114
  send: import("vitest").Mock<(...args: any[]) => any>;
113
115
  };
116
+ connect: import("vitest").Mock<() => boolean>;
117
+ connectFromSecretEnv: import("vitest").Mock<() => boolean>;
118
+ disconnect: import("vitest").Mock<() => boolean>;
119
+ MarkdownPage: import("vitest").Mock<(page: TextractPageAdaptable) => string>;
120
+ textractJsonToMarkdown: import("vitest").Mock<(textractResults: JsonReturn) => string>;
114
121
  };
115
122
  export default _default;
@@ -1,7 +1,9 @@
1
1
  import { getMessages as getMessages$1 } from '@jaypie/aws';
2
2
  export * from '@jaypie/aws';
3
- import { JAYPIE, BadGatewayError as BadGatewayError$1, BadRequestError as BadRequestError$1, ConfigurationError as ConfigurationError$1, force, uuid as uuid$1, HTTP, ForbiddenError as ForbiddenError$1, GatewayTimeoutError as GatewayTimeoutError$1, GoneError as GoneError$1, IllogicalError as IllogicalError$1, InternalError as InternalError$1, MethodNotAllowedError as MethodNotAllowedError$1, MultiError as MultiError$1, NotFoundError as NotFoundError$1, NotImplementedError as NotImplementedError$1, ProjectError as ProjectError$1, ProjectMultiError as ProjectMultiError$1, RejectedError as RejectedError$1, TeapotError as TeapotError$1, UnauthorizedError as UnauthorizedError$1, UnavailableError as UnavailableError$1, UnhandledError as UnhandledError$1, UnreachableCodeError as UnreachableCodeError$1, log } from '@jaypie/core';
3
+ import { JAYPIE, BadGatewayError as BadGatewayError$1, BadRequestError as BadRequestError$1, ConfigurationError as ConfigurationError$1, ForbiddenError as ForbiddenError$1, GatewayTimeoutError as GatewayTimeoutError$1, GoneError as GoneError$1, IllogicalError as IllogicalError$1, InternalError as InternalError$1, MethodNotAllowedError as MethodNotAllowedError$1, MultiError as MultiError$1, NotFoundError as NotFoundError$1, NotImplementedError as NotImplementedError$1, ProjectError as ProjectError$1, ProjectMultiError as ProjectMultiError$1, RejectedError as RejectedError$1, TeapotError as TeapotError$1, UnauthorizedError as UnauthorizedError$1, UnavailableError as UnavailableError$1, UnhandledError as UnhandledError$1, UnreachableCodeError as UnreachableCodeError$1, force, uuid as uuid$1, HTTP, log } from '@jaypie/core';
4
4
  export * from '@jaypie/core';
5
+ import { MarkdownPage as MarkdownPage$1, textractJsonToMarkdown as textractJsonToMarkdown$1 } from '@jaypie/textract';
6
+ export * from '@jaypie/textract';
5
7
  import { vi, beforeAll } from 'vitest';
6
8
  export * from '@jaypie/express';
7
9
  export * from '@jaypie/datadog';
@@ -127,6 +129,58 @@ const BadRequestError = vi.fn((...params) => {
127
129
  const ConfigurationError = vi.fn((...params) => {
128
130
  return new ConfigurationError$1(...params);
129
131
  });
132
+ // Complete the error mocks
133
+ const ForbiddenError = vi.fn((...params) => {
134
+ return new ForbiddenError$1(...params);
135
+ });
136
+ const GatewayTimeoutError = vi.fn((...params) => {
137
+ return new GatewayTimeoutError$1(...params);
138
+ });
139
+ const GoneError = vi.fn((...params) => {
140
+ return new GoneError$1(...params);
141
+ });
142
+ const IllogicalError = vi.fn((...params) => {
143
+ return new IllogicalError$1(...params);
144
+ });
145
+ const InternalError = vi.fn((...params) => {
146
+ return new InternalError$1(...params);
147
+ });
148
+ const MethodNotAllowedError = vi.fn((...params) => {
149
+ return new MethodNotAllowedError$1(...params);
150
+ });
151
+ const MultiError = vi.fn((...params) => {
152
+ return new MultiError$1(...params);
153
+ });
154
+ const NotFoundError = vi.fn((...params) => {
155
+ return new NotFoundError$1(...params);
156
+ });
157
+ const NotImplementedError = vi.fn((...params) => {
158
+ return new NotImplementedError$1(...params);
159
+ });
160
+ const ProjectError = vi.fn((...params) => {
161
+ return new ProjectError$1(...params);
162
+ });
163
+ const ProjectMultiError = vi.fn((...params) => {
164
+ return new ProjectMultiError$1(...params);
165
+ });
166
+ const RejectedError = vi.fn((...params) => {
167
+ return new RejectedError$1(...params);
168
+ });
169
+ const TeapotError = vi.fn((...params) => {
170
+ return new TeapotError$1(...params);
171
+ });
172
+ const UnauthorizedError = vi.fn((...params) => {
173
+ return new UnauthorizedError$1(...params);
174
+ });
175
+ const UnavailableError = vi.fn((...params) => {
176
+ return new UnavailableError$1(...params);
177
+ });
178
+ const UnhandledError = vi.fn((...params) => {
179
+ return new UnhandledError$1(...params);
180
+ });
181
+ const UnreachableCodeError = vi.fn((...params) => {
182
+ return new UnreachableCodeError$1(...params);
183
+ });
130
184
  // @jaypie/core Functions
131
185
  const envBoolean = vi.fn(() => {
132
186
  return true;
@@ -325,6 +379,18 @@ const expressHandler = vi.fn((handlerOrProps, propsOrHandler) => {
325
379
  }
326
380
  };
327
381
  });
382
+ // @jaypie/lambda
383
+ const lambdaHandler = vi.fn((handler, props = {}) => {
384
+ // If handler is an object and options is a function, swap them
385
+ if (typeof handler === "object" && typeof props === "function") {
386
+ const temp = handler;
387
+ handler = props;
388
+ props = temp;
389
+ }
390
+ return async (event, context, ...extra) => {
391
+ return jaypieHandler(handler, props)(event, context, ...extra);
392
+ };
393
+ });
328
394
  // @jaypie/llm
329
395
  const mockSend = vi.fn().mockResolvedValue("_MOCK_LLM_RESPONSE");
330
396
  const Llm = Object.assign(vi.fn().mockImplementation((providerName = "_MOCK_LLM_PROVIDER") => ({
@@ -344,69 +410,30 @@ const connectFromSecretEnv = vi.fn(() => {
344
410
  const disconnect = vi.fn(() => {
345
411
  return true;
346
412
  });
347
- // Complete the error mocks
348
- const ForbiddenError = vi.fn((...params) => {
349
- return new ForbiddenError$1(...params);
350
- });
351
- const GatewayTimeoutError = vi.fn((...params) => {
352
- return new GatewayTimeoutError$1(...params);
353
- });
354
- const GoneError = vi.fn((...params) => {
355
- return new GoneError$1(...params);
356
- });
357
- const IllogicalError = vi.fn((...params) => {
358
- return new IllogicalError$1(...params);
359
- });
360
- const InternalError = vi.fn((...params) => {
361
- return new InternalError$1(...params);
362
- });
363
- const MethodNotAllowedError = vi.fn((...params) => {
364
- return new MethodNotAllowedError$1(...params);
365
- });
366
- const MultiError = vi.fn((...params) => {
367
- return new MultiError$1(...params);
368
- });
369
- const NotFoundError = vi.fn((...params) => {
370
- return new NotFoundError$1(...params);
371
- });
372
- const NotImplementedError = vi.fn((...params) => {
373
- return new NotImplementedError$1(...params);
374
- });
375
- const ProjectError = vi.fn((...params) => {
376
- return new ProjectError$1(...params);
377
- });
378
- const ProjectMultiError = vi.fn((...params) => {
379
- return new ProjectMultiError$1(...params);
380
- });
381
- const RejectedError = vi.fn((...params) => {
382
- return new RejectedError$1(...params);
383
- });
384
- const TeapotError = vi.fn((...params) => {
385
- return new TeapotError$1(...params);
386
- });
387
- const UnauthorizedError = vi.fn((...params) => {
388
- return new UnauthorizedError$1(...params);
389
- });
390
- const UnavailableError = vi.fn((...params) => {
391
- return new UnavailableError$1(...params);
392
- });
393
- const UnhandledError = vi.fn((...params) => {
394
- return new UnhandledError$1(...params);
395
- });
396
- const UnreachableCodeError = vi.fn((...params) => {
397
- return new UnreachableCodeError$1(...params);
413
+ // @jaypie/textract
414
+ const MarkdownPage = vi.fn((page) => {
415
+ try {
416
+ const result = new MarkdownPage$1(page).text;
417
+ return result;
418
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
419
+ }
420
+ catch (error) {
421
+ // eslint-disable-next-line no-console
422
+ console.warn("[MarkdownPage] Actual implementation failed. To suppress this warning, manually mock the response with mockReturnValue");
423
+ return `_MOCK_MARKDOWN_PAGE_{{${page}}}`;
424
+ }
398
425
  });
399
- // @jaypie/lambda
400
- const lambdaHandler = vi.fn((handler, props = {}) => {
401
- // If handler is an object and options is a function, swap them
402
- if (typeof handler === "object" && typeof props === "function") {
403
- const temp = handler;
404
- handler = props;
405
- props = temp;
426
+ const textractJsonToMarkdown = vi.fn((textractResults) => {
427
+ try {
428
+ const result = textractJsonToMarkdown$1(textractResults);
429
+ return result;
430
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
431
+ }
432
+ catch (error) {
433
+ // eslint-disable-next-line no-console
434
+ console.warn("[textractJsonToMarkdown] Actual implementation failed. To suppress this warning, manually mock the response with mockReturnValue");
435
+ return `_MOCK_TEXTRACT_JSON_TO_MARKDOWN_{{${textractResults}}}`;
406
436
  }
407
- return async (event, context, ...extra) => {
408
- return jaypieHandler(handler, props)(event, context, ...extra);
409
- };
410
437
  });
411
438
  // Export default for convenience
412
439
  var jaypie_mock = {
@@ -450,13 +477,16 @@ var jaypie_mock = {
450
477
  expressHandler,
451
478
  // Lambda
452
479
  lambdaHandler,
480
+ // LLM
481
+ Llm,
453
482
  // Mongoose
454
483
  connect,
455
484
  connectFromSecretEnv,
456
485
  disconnect,
457
- // LLM
458
- Llm,
486
+ // Textract
487
+ MarkdownPage,
488
+ textractJsonToMarkdown,
459
489
  };
460
490
 
461
- export { BadGatewayError, BadRequestError, ConfigurationError, ForbiddenError, GatewayTimeoutError, GoneError, IllogicalError, InternalError, Llm, MethodNotAllowedError, MultiError, NotFoundError, NotImplementedError, ProjectError, ProjectMultiError, RejectedError, TeapotError, UnauthorizedError, UnavailableError, UnhandledError, UnreachableCodeError, connect, connectFromSecretEnv, jaypie_mock as default, disconnect, envBoolean, expressHandler, getEnvSecret, getMessages, getSecret, getTextractJob, jaypieHandler, lambdaHandler, sendBatchMessages, sendMessage, sendTextractJob, sleep, submitMetric, submitMetricSet, uuid };
491
+ export { BadGatewayError, BadRequestError, ConfigurationError, ForbiddenError, GatewayTimeoutError, GoneError, IllogicalError, InternalError, Llm, MarkdownPage, MethodNotAllowedError, MultiError, NotFoundError, NotImplementedError, ProjectError, ProjectMultiError, RejectedError, TeapotError, UnauthorizedError, UnavailableError, UnhandledError, UnreachableCodeError, connect, connectFromSecretEnv, jaypie_mock as default, disconnect, envBoolean, expressHandler, getEnvSecret, getMessages, getSecret, getTextractJob, jaypieHandler, lambdaHandler, sendBatchMessages, sendMessage, sendTextractJob, sleep, submitMetric, submitMetricSet, textractJsonToMarkdown, uuid };
462
492
  //# sourceMappingURL=jaypie.mock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jaypie.mock.js","sources":["../src/mockLog.module.ts","../src/jaypie.mock.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Log } from \"@jaypie/core\";\nimport { vi } from \"vitest\";\nimport { LogMock } from \"./types/jaypie-testkit\";\n\nexport function mockLogFactory(): LogMock {\n // Create skeleton of mock objects\n const mock = {\n debug: vi.fn(),\n error: vi.fn(),\n fatal: vi.fn(),\n info: vi.fn(),\n init: vi.fn(),\n lib: vi.fn(),\n tag: vi.fn(),\n trace: vi.fn(),\n untag: vi.fn(),\n var: vi.fn(),\n warn: vi.fn(),\n with: vi.fn(),\n } as LogMock;\n\n // Fill out nested mocks\n mock.debug.var = mock.var;\n mock.error.var = mock.var;\n mock.fatal.var = mock.var;\n mock.info.var = mock.var;\n mock.trace.var = mock.var;\n mock.warn.var = mock.var;\n\n // Have modules return correct objects\n mock.init.mockReturnValue(null);\n mock.lib.mockReturnValue(mock);\n mock.with.mockReturnValue(mock);\n\n // Pin mocks to the module\n mock.mock = {\n debug: mock.debug,\n error: mock.error,\n fatal: mock.fatal,\n info: mock.info,\n init: mock.init,\n lib: mock.lib,\n tag: mock.tag,\n trace: mock.trace,\n untag: mock.untag,\n var: mock.var,\n warn: mock.warn,\n with: mock.with,\n };\n\n return mock;\n}\n\nconst LOG_METHOD_NAMES = [\n \"debug\",\n \"error\",\n \"fatal\",\n \"info\",\n \"init\",\n \"lib\",\n \"tag\",\n \"trace\",\n \"untag\",\n \"var\",\n \"warn\",\n \"with\",\n] as const;\n\nconst originalLogMethods = new WeakMap<Log, Partial<Log>>();\n\nexport function spyLog(log: Log): void {\n if (!originalLogMethods.has(log)) {\n const mockLog = mockLogFactory();\n const originalMethods: Partial<Log> = {};\n\n LOG_METHOD_NAMES.forEach((method) => {\n originalMethods[method] = log[method] as any;\n log[method] = mockLog[method] as any;\n });\n\n originalLogMethods.set(log, originalMethods);\n }\n}\n\nexport function restoreLog(log: Log): void {\n const originalMethods = originalLogMethods.get(log);\n if (originalMethods) {\n LOG_METHOD_NAMES.forEach((method) => {\n if (originalMethods[method]) {\n log[method] = originalMethods[method] as any;\n }\n });\n originalLogMethods.delete(log);\n }\n}\n","/* eslint-disable import-x/export */\nimport { getMessages as originalGetMessages } from \"@jaypie/aws\";\nimport {\n force,\n Log,\n uuid as originalUuid,\n // Core utilities\n HTTP,\n JAYPIE,\n log,\n // Errors\n BadGatewayError as BadGatewayErrorOriginal,\n BadRequestError as BadRequestErrorOriginal,\n ConfigurationError as ConfigurationErrorOriginal,\n ForbiddenError as ForbiddenErrorOriginal,\n GatewayTimeoutError as GatewayTimeoutErrorOriginal,\n GoneError as GoneErrorOriginal,\n IllogicalError as IllogicalErrorOriginal,\n InternalError as InternalErrorOriginal,\n MethodNotAllowedError as MethodNotAllowedErrorOriginal,\n MultiError as MultiErrorOriginal,\n NotFoundError as NotFoundErrorOriginal,\n NotImplementedError as NotImplementedErrorOriginal,\n ProjectError as ProjectErrorOriginal,\n ProjectMultiError as ProjectMultiErrorOriginal,\n RejectedError as RejectedErrorOriginal,\n TeapotError as TeapotErrorOriginal,\n UnauthorizedError as UnauthorizedErrorOriginal,\n UnavailableError as UnavailableErrorOriginal,\n UnhandledError as UnhandledErrorOriginal,\n UnreachableCodeError as UnreachableCodeErrorOriginal,\n} from \"@jaypie/core\";\nimport { beforeAll, vi } from \"vitest\";\n\nimport {\n ExpressHandlerFunction,\n ExpressHandlerOptions,\n ExpressHandlerParameter,\n GenericArgs,\n JaypieHandlerFunction,\n JaypieHandlerOptions,\n JaypieHandlerParameter,\n JaypieLifecycleOption,\n WithJsonFunction,\n} from \"./types/jaypie-testkit\";\nimport type { SQSMessageResponse } from \"@jaypie/aws\";\nimport { spyLog } from \"./mockLog.module.js\";\nimport type { Response as ExpressResponse } from \"express\";\n\n//\n//\n// Setup\n//\n\nconst TAG = JAYPIE.LIB.TESTKIT;\n\n// Export all the modules from Jaypie packages:\nexport * from \"@jaypie/aws\";\nexport * from \"@jaypie/core\";\nexport * from \"@jaypie/express\";\nexport * from \"@jaypie/datadog\";\nexport * from \"@jaypie/lambda\";\nexport * from \"@jaypie/llm\";\nexport * from \"@jaypie/mongoose\";\n\n// Spy on log:\nbeforeAll(() => {\n spyLog(log as Log);\n});\n\n//\n//\n// Mock Functions\n//\n\n// @jaypie/aws\nexport const getEnvSecret = vi.fn((): string => {\n return `_MOCK_ENV_SECRET_[${TAG}]`;\n});\n\nexport const getMessages = vi.fn(\n (...params: Parameters<typeof originalGetMessages>) =>\n originalGetMessages(...params),\n);\n\nexport const getSecret = vi.fn((): string => {\n return `_MOCK_SECRET_[${TAG}]`;\n});\n\nexport const getTextractJob = vi.fn((job: string): SQSMessageResponse => {\n return { value: `_MOCK_TEXTRACT_JOB_[${job}]` };\n});\n\nexport const sendBatchMessages = vi.fn((): SQSMessageResponse => {\n return { value: `_MOCK_BATCH_MESSAGES_[${TAG}]` };\n});\n\nexport const sendMessage = vi.fn((): SQSMessageResponse => {\n return { value: `_MOCK_MESSAGE_[${TAG}]` };\n});\n\nexport const sendTextractJob = vi.fn(({ key, bucket }): Array<unknown> => {\n if (!key || !bucket) {\n throw new ConfigurationError(\"[sendTextractJob] Missing key or bucket\");\n }\n return [`_MOCK_TEXTRACT_JOB_[${bucket}/${key}]`];\n});\n\n// @jaypie/core Errors\nexport const BadGatewayError = vi.fn(\n (\n ...params: ConstructorParameters<typeof BadGatewayErrorOriginal>\n ): InstanceType<typeof BadGatewayErrorOriginal> => {\n return new BadGatewayErrorOriginal(...params);\n },\n);\n\nexport const BadRequestError = vi.fn(\n (\n ...params: ConstructorParameters<typeof BadRequestErrorOriginal>\n ): InstanceType<typeof BadRequestErrorOriginal> => {\n return new BadRequestErrorOriginal(...params);\n },\n);\n\nexport const ConfigurationError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ConfigurationErrorOriginal>\n ): InstanceType<typeof ConfigurationErrorOriginal> => {\n return new ConfigurationErrorOriginal(...params);\n },\n);\n\n// @jaypie/core Functions\nexport const envBoolean = vi.fn((): boolean => {\n return true;\n});\n\nexport const jaypieHandler = vi.fn(\n (\n handler: JaypieHandlerFunction,\n {\n setup = [] as JaypieLifecycleOption,\n teardown = [] as JaypieLifecycleOption,\n unavailable = force.boolean(process.env.PROJECT_UNAVAILABLE),\n validate = [] as JaypieLifecycleOption,\n }: JaypieHandlerOptions = {},\n ) => {\n return async (...args: GenericArgs) => {\n let result;\n let thrownError;\n if (unavailable) throw UnavailableError();\n validate = force.array(validate);\n for (const validator of validate) {\n if (typeof validator === \"function\") {\n const valid = await validator(...args);\n if (valid === false) {\n throw new BadRequestError();\n }\n }\n }\n try {\n setup = force.array(setup);\n for (const setupFunction of setup) {\n if (typeof setupFunction === \"function\") {\n await setupFunction(...args);\n }\n }\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n result = handler(...args);\n } catch (error) {\n thrownError = error;\n }\n teardown = force.array(teardown);\n for (const teardownFunction of teardown) {\n if (typeof teardownFunction === \"function\") {\n try {\n await teardownFunction(...args);\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n }\n }\n }\n if (thrownError) {\n throw thrownError;\n }\n return result;\n };\n },\n);\n\nexport const sleep = vi.fn((): boolean => {\n return true;\n});\n\nexport const uuid = vi.fn(originalUuid);\n\n// @jaypie/datadog\nexport const submitMetric = vi.fn((): boolean => {\n return true;\n});\n\nexport const submitMetricSet = vi.fn((): boolean => {\n return true;\n});\n\n// @jaypie/express\nexport const expressHandler = vi.fn(\n (\n handlerOrProps: ExpressHandlerParameter,\n propsOrHandler?: ExpressHandlerParameter,\n ) => {\n let handler: ExpressHandlerFunction;\n let props: ExpressHandlerOptions;\n\n if (\n typeof handlerOrProps === \"object\" &&\n typeof propsOrHandler === \"function\"\n ) {\n handler = propsOrHandler;\n props = handlerOrProps;\n } else if (typeof handlerOrProps === \"function\") {\n handler = handlerOrProps;\n props = (propsOrHandler || {}) as ExpressHandlerOptions;\n } else {\n throw BadRequestError(\"handler must be a function\");\n }\n\n // Add locals setup if needed\n if (\n props.locals &&\n typeof props.locals === \"object\" &&\n !Array.isArray(props.locals)\n ) {\n const keys = Object.keys(props.locals);\n if (!props.setup) props.setup = [];\n props.setup = force.array(props.setup);\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n props.setup.unshift((req: { locals?: Record<string, unknown> }) => {\n if (!req || typeof req !== \"object\") {\n throw new BadRequestError(\"req must be an object\");\n }\n // Set req.locals if it doesn't exist\n if (!req.locals) req.locals = {};\n if (typeof req.locals !== \"object\" || Array.isArray(req.locals)) {\n throw new BadRequestError(\"req.locals must be an object\");\n }\n if (!req.locals._jaypie) req.locals._jaypie = {};\n });\n const localsSetup = async (\n localsReq: { locals: Record<string, unknown> },\n localsRes: unknown,\n ) => {\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n if (typeof props.locals![key] === \"function\") {\n localsReq.locals[key] = await props.locals![key](\n localsReq,\n localsRes,\n );\n } else {\n localsReq.locals[key] = props.locals![key];\n }\n }\n };\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n props.setup.push(localsSetup);\n }\n if (props.locals && typeof props.locals !== \"object\") {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n if (props.locals && Array.isArray(props.locals)) {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n if (props.locals === null) {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n\n const jaypieFunction = jaypieHandler(handler, props);\n return async (req = {}, res = {}, ...extra: unknown[]) => {\n const status = HTTP.CODE.OK;\n let response;\n let supertestMode = false;\n\n if (\n res &&\n typeof res === \"object\" &&\n \"socket\" in res &&\n res.constructor.name === \"ServerResponse\"\n ) {\n // Use the response object in supertest mode\n supertestMode = true;\n }\n\n try {\n response = await jaypieFunction(req, res, ...extra);\n } catch (error) {\n // In the mock context, if status is a function we are in a \"supertest\"\n if (\n supertestMode &&\n typeof (res as ExpressResponse).status === \"function\"\n ) {\n // In theory jaypieFunction has handled all errors\n const errorStatus =\n (error as ProjectErrorOriginal).status ||\n HTTP.CODE.INTERNAL_SERVER_ERROR;\n let errorResponse;\n if (typeof (error as ProjectErrorOriginal).json === \"function\") {\n errorResponse = (error as ProjectErrorOriginal).json();\n } else {\n // This should never happen\n errorResponse = UnhandledError().json();\n }\n (res as ExpressResponse).status(errorStatus).json(errorResponse);\n return;\n } else {\n // else, res.status is not a function, throw the error\n throw error;\n }\n }\n\n if (\n supertestMode &&\n typeof (res as ExpressResponse).status === \"function\"\n ) {\n if (response) {\n if (typeof response === \"object\") {\n if (typeof (response as WithJsonFunction).json === \"function\") {\n (res as ExpressResponse).json(\n (response as WithJsonFunction).json(),\n );\n } else {\n (res as ExpressResponse).status(status).json(response);\n }\n } else if (typeof response === \"string\") {\n try {\n (res as ExpressResponse)\n .status(status)\n .json(JSON.parse(response));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (error) {\n (res as ExpressResponse).status(status).send(response);\n }\n } else if (response === true) {\n (res as ExpressResponse).status(HTTP.CODE.CREATED).send();\n } else {\n (res as ExpressResponse).status(status).send(response);\n }\n } else {\n (res as ExpressResponse).status(HTTP.CODE.NO_CONTENT).send();\n }\n } else {\n return response;\n }\n };\n },\n);\n\n// @jaypie/llm\nconst mockSend = vi.fn().mockResolvedValue(\"_MOCK_LLM_RESPONSE\");\nexport const Llm = Object.assign(\n vi.fn().mockImplementation((providerName = \"_MOCK_LLM_PROVIDER\") => ({\n _provider: providerName,\n _llm: {\n send: mockSend,\n },\n send: mockSend,\n })),\n { send: mockSend },\n);\n\n// @jaypie/mongoose\nexport const connect = vi.fn((): boolean => {\n return true;\n});\n\nexport const connectFromSecretEnv = vi.fn((): boolean => {\n return true;\n});\n\nexport const disconnect = vi.fn((): boolean => {\n return true;\n});\n\n// Complete the error mocks\nexport const ForbiddenError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ForbiddenErrorOriginal>\n ): InstanceType<typeof ForbiddenErrorOriginal> => {\n return new ForbiddenErrorOriginal(...params);\n },\n);\n\nexport const GatewayTimeoutError = vi.fn(\n (\n ...params: ConstructorParameters<typeof GatewayTimeoutErrorOriginal>\n ): InstanceType<typeof GatewayTimeoutErrorOriginal> => {\n return new GatewayTimeoutErrorOriginal(...params);\n },\n);\n\nexport const GoneError = vi.fn(\n (\n ...params: ConstructorParameters<typeof GoneErrorOriginal>\n ): InstanceType<typeof GoneErrorOriginal> => {\n return new GoneErrorOriginal(...params);\n },\n);\n\nexport const IllogicalError = vi.fn(\n (\n ...params: ConstructorParameters<typeof IllogicalErrorOriginal>\n ): InstanceType<typeof IllogicalErrorOriginal> => {\n return new IllogicalErrorOriginal(...params);\n },\n);\n\nexport const InternalError = vi.fn(\n (\n ...params: ConstructorParameters<typeof InternalErrorOriginal>\n ): InstanceType<typeof InternalErrorOriginal> => {\n return new InternalErrorOriginal(...params);\n },\n);\n\nexport const MethodNotAllowedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof MethodNotAllowedErrorOriginal>\n ): InstanceType<typeof MethodNotAllowedErrorOriginal> => {\n return new MethodNotAllowedErrorOriginal(...params);\n },\n);\n\nexport const MultiError = vi.fn(\n (\n ...params: ConstructorParameters<typeof MultiErrorOriginal>\n ): InstanceType<typeof MultiErrorOriginal> => {\n return new MultiErrorOriginal(...params);\n },\n);\n\nexport const NotFoundError = vi.fn(\n (\n ...params: ConstructorParameters<typeof NotFoundErrorOriginal>\n ): InstanceType<typeof NotFoundErrorOriginal> => {\n return new NotFoundErrorOriginal(...params);\n },\n);\n\nexport const NotImplementedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof NotImplementedErrorOriginal>\n ): InstanceType<typeof NotImplementedErrorOriginal> => {\n return new NotImplementedErrorOriginal(...params);\n },\n);\n\nexport const ProjectError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ProjectErrorOriginal>\n ): InstanceType<typeof ProjectErrorOriginal> => {\n return new ProjectErrorOriginal(...params);\n },\n);\n\nexport const ProjectMultiError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ProjectMultiErrorOriginal>\n ): InstanceType<typeof ProjectMultiErrorOriginal> => {\n return new ProjectMultiErrorOriginal(...params);\n },\n);\n\nexport const RejectedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof RejectedErrorOriginal>\n ): InstanceType<typeof RejectedErrorOriginal> => {\n return new RejectedErrorOriginal(...params);\n },\n);\n\nexport const TeapotError = vi.fn(\n (\n ...params: ConstructorParameters<typeof TeapotErrorOriginal>\n ): InstanceType<typeof TeapotErrorOriginal> => {\n return new TeapotErrorOriginal(...params);\n },\n);\n\nexport const UnauthorizedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnauthorizedErrorOriginal>\n ): InstanceType<typeof UnauthorizedErrorOriginal> => {\n return new UnauthorizedErrorOriginal(...params);\n },\n);\n\nexport const UnavailableError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnavailableErrorOriginal>\n ): InstanceType<typeof UnavailableErrorOriginal> => {\n return new UnavailableErrorOriginal(...params);\n },\n);\n\nexport const UnhandledError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnhandledErrorOriginal>\n ): InstanceType<typeof UnhandledErrorOriginal> => {\n return new UnhandledErrorOriginal(...params);\n },\n);\n\nexport const UnreachableCodeError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnreachableCodeErrorOriginal>\n ): InstanceType<typeof UnreachableCodeErrorOriginal> => {\n return new UnreachableCodeErrorOriginal(...params);\n },\n);\n\n// @jaypie/lambda\nexport const lambdaHandler = vi.fn(\n (handler: JaypieHandlerParameter, props: JaypieHandlerParameter = {}) => {\n // If handler is an object and options is a function, swap them\n if (typeof handler === \"object\" && typeof props === \"function\") {\n const temp = handler;\n handler = props;\n props = temp;\n }\n return async (event: unknown, context: unknown, ...extra: unknown[]) => {\n return jaypieHandler(\n handler as JaypieHandlerFunction,\n props as JaypieHandlerOptions,\n )(event, context, ...extra);\n };\n },\n);\n\n// Export default for convenience\nexport default {\n // AWS\n getMessages,\n getSecret,\n getTextractJob,\n sendBatchMessages,\n sendMessage,\n sendTextractJob,\n // Core\n BadGatewayError,\n BadRequestError,\n ConfigurationError,\n envBoolean,\n ForbiddenError,\n GatewayTimeoutError,\n GoneError,\n HTTP,\n IllogicalError,\n InternalError,\n jaypieHandler,\n MethodNotAllowedError,\n MultiError,\n NotFoundError,\n NotImplementedError,\n ProjectError,\n ProjectMultiError,\n RejectedError,\n sleep,\n TeapotError,\n UnauthorizedError,\n UnavailableError,\n UnhandledError,\n UnreachableCodeError,\n uuid,\n // Datadog\n submitMetric,\n submitMetricSet,\n // Express\n expressHandler,\n // Lambda\n lambdaHandler,\n // Mongoose\n connect,\n connectFromSecretEnv,\n disconnect,\n // LLM\n Llm,\n};\n"],"names":["originalGetMessages","BadGatewayErrorOriginal","BadRequestErrorOriginal","ConfigurationErrorOriginal","originalUuid","ForbiddenErrorOriginal","GatewayTimeoutErrorOriginal","GoneErrorOriginal","IllogicalErrorOriginal","InternalErrorOriginal","MethodNotAllowedErrorOriginal","MultiErrorOriginal","NotFoundErrorOriginal","NotImplementedErrorOriginal","ProjectErrorOriginal","ProjectMultiErrorOriginal","RejectedErrorOriginal","TeapotErrorOriginal","UnauthorizedErrorOriginal","UnavailableErrorOriginal","UnhandledErrorOriginal","UnreachableCodeErrorOriginal"],"mappings":"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"}
1
+ {"version":3,"file":"jaypie.mock.js","sources":["../src/mockLog.module.ts","../src/jaypie.mock.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Log } from \"@jaypie/core\";\nimport { vi } from \"vitest\";\nimport { LogMock } from \"./types/jaypie-testkit\";\n\nexport function mockLogFactory(): LogMock {\n // Create skeleton of mock objects\n const mock = {\n debug: vi.fn(),\n error: vi.fn(),\n fatal: vi.fn(),\n info: vi.fn(),\n init: vi.fn(),\n lib: vi.fn(),\n tag: vi.fn(),\n trace: vi.fn(),\n untag: vi.fn(),\n var: vi.fn(),\n warn: vi.fn(),\n with: vi.fn(),\n } as LogMock;\n\n // Fill out nested mocks\n mock.debug.var = mock.var;\n mock.error.var = mock.var;\n mock.fatal.var = mock.var;\n mock.info.var = mock.var;\n mock.trace.var = mock.var;\n mock.warn.var = mock.var;\n\n // Have modules return correct objects\n mock.init.mockReturnValue(null);\n mock.lib.mockReturnValue(mock);\n mock.with.mockReturnValue(mock);\n\n // Pin mocks to the module\n mock.mock = {\n debug: mock.debug,\n error: mock.error,\n fatal: mock.fatal,\n info: mock.info,\n init: mock.init,\n lib: mock.lib,\n tag: mock.tag,\n trace: mock.trace,\n untag: mock.untag,\n var: mock.var,\n warn: mock.warn,\n with: mock.with,\n };\n\n return mock;\n}\n\nconst LOG_METHOD_NAMES = [\n \"debug\",\n \"error\",\n \"fatal\",\n \"info\",\n \"init\",\n \"lib\",\n \"tag\",\n \"trace\",\n \"untag\",\n \"var\",\n \"warn\",\n \"with\",\n] as const;\n\nconst originalLogMethods = new WeakMap<Log, Partial<Log>>();\n\nexport function spyLog(log: Log): void {\n if (!originalLogMethods.has(log)) {\n const mockLog = mockLogFactory();\n const originalMethods: Partial<Log> = {};\n\n LOG_METHOD_NAMES.forEach((method) => {\n originalMethods[method] = log[method] as any;\n log[method] = mockLog[method] as any;\n });\n\n originalLogMethods.set(log, originalMethods);\n }\n}\n\nexport function restoreLog(log: Log): void {\n const originalMethods = originalLogMethods.get(log);\n if (originalMethods) {\n LOG_METHOD_NAMES.forEach((method) => {\n if (originalMethods[method]) {\n log[method] = originalMethods[method] as any;\n }\n });\n originalLogMethods.delete(log);\n }\n}\n","/* eslint-disable import-x/export */\nimport { getMessages as originalGetMessages } from \"@jaypie/aws\";\nimport {\n force,\n Log,\n uuid as originalUuid,\n // Core utilities\n HTTP,\n JAYPIE,\n log,\n // Errors\n BadGatewayError as BadGatewayErrorOriginal,\n BadRequestError as BadRequestErrorOriginal,\n ConfigurationError as ConfigurationErrorOriginal,\n ForbiddenError as ForbiddenErrorOriginal,\n GatewayTimeoutError as GatewayTimeoutErrorOriginal,\n GoneError as GoneErrorOriginal,\n IllogicalError as IllogicalErrorOriginal,\n InternalError as InternalErrorOriginal,\n MethodNotAllowedError as MethodNotAllowedErrorOriginal,\n MultiError as MultiErrorOriginal,\n NotFoundError as NotFoundErrorOriginal,\n NotImplementedError as NotImplementedErrorOriginal,\n ProjectError as ProjectErrorOriginal,\n ProjectMultiError as ProjectMultiErrorOriginal,\n RejectedError as RejectedErrorOriginal,\n TeapotError as TeapotErrorOriginal,\n UnauthorizedError as UnauthorizedErrorOriginal,\n UnavailableError as UnavailableErrorOriginal,\n UnhandledError as UnhandledErrorOriginal,\n UnreachableCodeError as UnreachableCodeErrorOriginal,\n} from \"@jaypie/core\";\nimport {\n MarkdownPage as MarkdownPageOriginal,\n textractJsonToMarkdown as textractJsonToMarkdownOriginal,\n} from \"@jaypie/textract\";\nimport type { TextractPageAdaptable } from \"@jaypie/textract\";\nimport type { JsonReturn } from \"@jaypie/types\";\nimport { beforeAll, vi } from \"vitest\";\n\nimport {\n ExpressHandlerFunction,\n ExpressHandlerOptions,\n ExpressHandlerParameter,\n GenericArgs,\n JaypieHandlerFunction,\n JaypieHandlerOptions,\n JaypieHandlerParameter,\n JaypieLifecycleOption,\n WithJsonFunction,\n} from \"./types/jaypie-testkit\";\nimport type { SQSMessageResponse } from \"@jaypie/aws\";\nimport { spyLog } from \"./mockLog.module.js\";\nimport type { Response as ExpressResponse } from \"express\";\n\n//\n//\n// Setup\n//\n\nconst TAG = JAYPIE.LIB.TESTKIT;\n\n// Export all the modules from Jaypie packages:\nexport * from \"@jaypie/aws\";\nexport * from \"@jaypie/core\";\nexport * from \"@jaypie/express\";\nexport * from \"@jaypie/datadog\";\nexport * from \"@jaypie/lambda\";\nexport * from \"@jaypie/llm\";\nexport * from \"@jaypie/mongoose\";\nexport * from \"@jaypie/textract\";\n\n// Spy on log:\nbeforeAll(() => {\n spyLog(log as Log);\n});\n\n//\n//\n// Mock Functions\n//\n\n// @jaypie/aws\nexport const getEnvSecret = vi.fn((): string => {\n return `_MOCK_ENV_SECRET_[${TAG}]`;\n});\n\nexport const getMessages = vi.fn(\n (...params: Parameters<typeof originalGetMessages>) =>\n originalGetMessages(...params),\n);\n\nexport const getSecret = vi.fn((): string => {\n return `_MOCK_SECRET_[${TAG}]`;\n});\n\nexport const getTextractJob = vi.fn((job: string): SQSMessageResponse => {\n return { value: `_MOCK_TEXTRACT_JOB_[${job}]` };\n});\n\nexport const sendBatchMessages = vi.fn((): SQSMessageResponse => {\n return { value: `_MOCK_BATCH_MESSAGES_[${TAG}]` };\n});\n\nexport const sendMessage = vi.fn((): SQSMessageResponse => {\n return { value: `_MOCK_MESSAGE_[${TAG}]` };\n});\n\nexport const sendTextractJob = vi.fn(({ key, bucket }): Array<unknown> => {\n if (!key || !bucket) {\n throw new ConfigurationError(\"[sendTextractJob] Missing key or bucket\");\n }\n return [`_MOCK_TEXTRACT_JOB_[${bucket}/${key}]`];\n});\n\n// @jaypie/core Errors\nexport const BadGatewayError = vi.fn(\n (\n ...params: ConstructorParameters<typeof BadGatewayErrorOriginal>\n ): InstanceType<typeof BadGatewayErrorOriginal> => {\n return new BadGatewayErrorOriginal(...params);\n },\n);\n\nexport const BadRequestError = vi.fn(\n (\n ...params: ConstructorParameters<typeof BadRequestErrorOriginal>\n ): InstanceType<typeof BadRequestErrorOriginal> => {\n return new BadRequestErrorOriginal(...params);\n },\n);\n\nexport const ConfigurationError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ConfigurationErrorOriginal>\n ): InstanceType<typeof ConfigurationErrorOriginal> => {\n return new ConfigurationErrorOriginal(...params);\n },\n);\n\n// Complete the error mocks\nexport const ForbiddenError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ForbiddenErrorOriginal>\n ): InstanceType<typeof ForbiddenErrorOriginal> => {\n return new ForbiddenErrorOriginal(...params);\n },\n);\n\nexport const GatewayTimeoutError = vi.fn(\n (\n ...params: ConstructorParameters<typeof GatewayTimeoutErrorOriginal>\n ): InstanceType<typeof GatewayTimeoutErrorOriginal> => {\n return new GatewayTimeoutErrorOriginal(...params);\n },\n);\n\nexport const GoneError = vi.fn(\n (\n ...params: ConstructorParameters<typeof GoneErrorOriginal>\n ): InstanceType<typeof GoneErrorOriginal> => {\n return new GoneErrorOriginal(...params);\n },\n);\n\nexport const IllogicalError = vi.fn(\n (\n ...params: ConstructorParameters<typeof IllogicalErrorOriginal>\n ): InstanceType<typeof IllogicalErrorOriginal> => {\n return new IllogicalErrorOriginal(...params);\n },\n);\n\nexport const InternalError = vi.fn(\n (\n ...params: ConstructorParameters<typeof InternalErrorOriginal>\n ): InstanceType<typeof InternalErrorOriginal> => {\n return new InternalErrorOriginal(...params);\n },\n);\n\nexport const MethodNotAllowedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof MethodNotAllowedErrorOriginal>\n ): InstanceType<typeof MethodNotAllowedErrorOriginal> => {\n return new MethodNotAllowedErrorOriginal(...params);\n },\n);\n\nexport const MultiError = vi.fn(\n (\n ...params: ConstructorParameters<typeof MultiErrorOriginal>\n ): InstanceType<typeof MultiErrorOriginal> => {\n return new MultiErrorOriginal(...params);\n },\n);\n\nexport const NotFoundError = vi.fn(\n (\n ...params: ConstructorParameters<typeof NotFoundErrorOriginal>\n ): InstanceType<typeof NotFoundErrorOriginal> => {\n return new NotFoundErrorOriginal(...params);\n },\n);\n\nexport const NotImplementedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof NotImplementedErrorOriginal>\n ): InstanceType<typeof NotImplementedErrorOriginal> => {\n return new NotImplementedErrorOriginal(...params);\n },\n);\n\nexport const ProjectError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ProjectErrorOriginal>\n ): InstanceType<typeof ProjectErrorOriginal> => {\n return new ProjectErrorOriginal(...params);\n },\n);\n\nexport const ProjectMultiError = vi.fn(\n (\n ...params: ConstructorParameters<typeof ProjectMultiErrorOriginal>\n ): InstanceType<typeof ProjectMultiErrorOriginal> => {\n return new ProjectMultiErrorOriginal(...params);\n },\n);\n\nexport const RejectedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof RejectedErrorOriginal>\n ): InstanceType<typeof RejectedErrorOriginal> => {\n return new RejectedErrorOriginal(...params);\n },\n);\n\nexport const TeapotError = vi.fn(\n (\n ...params: ConstructorParameters<typeof TeapotErrorOriginal>\n ): InstanceType<typeof TeapotErrorOriginal> => {\n return new TeapotErrorOriginal(...params);\n },\n);\n\nexport const UnauthorizedError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnauthorizedErrorOriginal>\n ): InstanceType<typeof UnauthorizedErrorOriginal> => {\n return new UnauthorizedErrorOriginal(...params);\n },\n);\n\nexport const UnavailableError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnavailableErrorOriginal>\n ): InstanceType<typeof UnavailableErrorOriginal> => {\n return new UnavailableErrorOriginal(...params);\n },\n);\n\nexport const UnhandledError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnhandledErrorOriginal>\n ): InstanceType<typeof UnhandledErrorOriginal> => {\n return new UnhandledErrorOriginal(...params);\n },\n);\n\nexport const UnreachableCodeError = vi.fn(\n (\n ...params: ConstructorParameters<typeof UnreachableCodeErrorOriginal>\n ): InstanceType<typeof UnreachableCodeErrorOriginal> => {\n return new UnreachableCodeErrorOriginal(...params);\n },\n);\n\n// @jaypie/core Functions\nexport const envBoolean = vi.fn((): boolean => {\n return true;\n});\n\nexport const jaypieHandler = vi.fn(\n (\n handler: JaypieHandlerFunction,\n {\n setup = [] as JaypieLifecycleOption,\n teardown = [] as JaypieLifecycleOption,\n unavailable = force.boolean(process.env.PROJECT_UNAVAILABLE),\n validate = [] as JaypieLifecycleOption,\n }: JaypieHandlerOptions = {},\n ) => {\n return async (...args: GenericArgs) => {\n let result;\n let thrownError;\n if (unavailable) throw UnavailableError();\n validate = force.array(validate);\n for (const validator of validate) {\n if (typeof validator === \"function\") {\n const valid = await validator(...args);\n if (valid === false) {\n throw new BadRequestError();\n }\n }\n }\n try {\n setup = force.array(setup);\n for (const setupFunction of setup) {\n if (typeof setupFunction === \"function\") {\n await setupFunction(...args);\n }\n }\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n result = handler(...args);\n } catch (error) {\n thrownError = error;\n }\n teardown = force.array(teardown);\n for (const teardownFunction of teardown) {\n if (typeof teardownFunction === \"function\") {\n try {\n await teardownFunction(...args);\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n }\n }\n }\n if (thrownError) {\n throw thrownError;\n }\n return result;\n };\n },\n);\n\nexport const sleep = vi.fn((): boolean => {\n return true;\n});\n\nexport const uuid = vi.fn(originalUuid);\n\n// @jaypie/datadog\nexport const submitMetric = vi.fn((): boolean => {\n return true;\n});\n\nexport const submitMetricSet = vi.fn((): boolean => {\n return true;\n});\n\n// @jaypie/express\nexport const expressHandler = vi.fn(\n (\n handlerOrProps: ExpressHandlerParameter,\n propsOrHandler?: ExpressHandlerParameter,\n ) => {\n let handler: ExpressHandlerFunction;\n let props: ExpressHandlerOptions;\n\n if (\n typeof handlerOrProps === \"object\" &&\n typeof propsOrHandler === \"function\"\n ) {\n handler = propsOrHandler;\n props = handlerOrProps;\n } else if (typeof handlerOrProps === \"function\") {\n handler = handlerOrProps;\n props = (propsOrHandler || {}) as ExpressHandlerOptions;\n } else {\n throw BadRequestError(\"handler must be a function\");\n }\n\n // Add locals setup if needed\n if (\n props.locals &&\n typeof props.locals === \"object\" &&\n !Array.isArray(props.locals)\n ) {\n const keys = Object.keys(props.locals);\n if (!props.setup) props.setup = [];\n props.setup = force.array(props.setup);\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n props.setup.unshift((req: { locals?: Record<string, unknown> }) => {\n if (!req || typeof req !== \"object\") {\n throw new BadRequestError(\"req must be an object\");\n }\n // Set req.locals if it doesn't exist\n if (!req.locals) req.locals = {};\n if (typeof req.locals !== \"object\" || Array.isArray(req.locals)) {\n throw new BadRequestError(\"req.locals must be an object\");\n }\n if (!req.locals._jaypie) req.locals._jaypie = {};\n });\n const localsSetup = async (\n localsReq: { locals: Record<string, unknown> },\n localsRes: unknown,\n ) => {\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n if (typeof props.locals![key] === \"function\") {\n localsReq.locals[key] = await props.locals![key](\n localsReq,\n localsRes,\n );\n } else {\n localsReq.locals[key] = props.locals![key];\n }\n }\n };\n // @ts-expect-error TODO: cannot resolve; fix when JaypieHandler moves to TypeScript\n props.setup.push(localsSetup);\n }\n if (props.locals && typeof props.locals !== \"object\") {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n if (props.locals && Array.isArray(props.locals)) {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n if (props.locals === null) {\n throw new BadRequestError(\"props.locals must be an object\");\n }\n\n const jaypieFunction = jaypieHandler(handler, props);\n return async (req = {}, res = {}, ...extra: unknown[]) => {\n const status = HTTP.CODE.OK;\n let response;\n let supertestMode = false;\n\n if (\n res &&\n typeof res === \"object\" &&\n \"socket\" in res &&\n res.constructor.name === \"ServerResponse\"\n ) {\n // Use the response object in supertest mode\n supertestMode = true;\n }\n\n try {\n response = await jaypieFunction(req, res, ...extra);\n } catch (error) {\n // In the mock context, if status is a function we are in a \"supertest\"\n if (\n supertestMode &&\n typeof (res as ExpressResponse).status === \"function\"\n ) {\n // In theory jaypieFunction has handled all errors\n const errorStatus =\n (error as ProjectErrorOriginal).status ||\n HTTP.CODE.INTERNAL_SERVER_ERROR;\n let errorResponse;\n if (typeof (error as ProjectErrorOriginal).json === \"function\") {\n errorResponse = (error as ProjectErrorOriginal).json();\n } else {\n // This should never happen\n errorResponse = UnhandledError().json();\n }\n (res as ExpressResponse).status(errorStatus).json(errorResponse);\n return;\n } else {\n // else, res.status is not a function, throw the error\n throw error;\n }\n }\n\n if (\n supertestMode &&\n typeof (res as ExpressResponse).status === \"function\"\n ) {\n if (response) {\n if (typeof response === \"object\") {\n if (typeof (response as WithJsonFunction).json === \"function\") {\n (res as ExpressResponse).json(\n (response as WithJsonFunction).json(),\n );\n } else {\n (res as ExpressResponse).status(status).json(response);\n }\n } else if (typeof response === \"string\") {\n try {\n (res as ExpressResponse)\n .status(status)\n .json(JSON.parse(response));\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (error) {\n (res as ExpressResponse).status(status).send(response);\n }\n } else if (response === true) {\n (res as ExpressResponse).status(HTTP.CODE.CREATED).send();\n } else {\n (res as ExpressResponse).status(status).send(response);\n }\n } else {\n (res as ExpressResponse).status(HTTP.CODE.NO_CONTENT).send();\n }\n } else {\n return response;\n }\n };\n },\n);\n\n// @jaypie/lambda\nexport const lambdaHandler = vi.fn(\n (handler: JaypieHandlerParameter, props: JaypieHandlerParameter = {}) => {\n // If handler is an object and options is a function, swap them\n if (typeof handler === \"object\" && typeof props === \"function\") {\n const temp = handler;\n handler = props;\n props = temp;\n }\n return async (event: unknown, context: unknown, ...extra: unknown[]) => {\n return jaypieHandler(\n handler as JaypieHandlerFunction,\n props as JaypieHandlerOptions,\n )(event, context, ...extra);\n };\n },\n);\n\n// @jaypie/llm\nconst mockSend = vi.fn().mockResolvedValue(\"_MOCK_LLM_RESPONSE\");\nexport const Llm = Object.assign(\n vi.fn().mockImplementation((providerName = \"_MOCK_LLM_PROVIDER\") => ({\n _provider: providerName,\n _llm: {\n send: mockSend,\n },\n send: mockSend,\n })),\n { send: mockSend },\n);\n\n// @jaypie/mongoose\nexport const connect = vi.fn((): boolean => {\n return true;\n});\n\nexport const connectFromSecretEnv = vi.fn((): boolean => {\n return true;\n});\n\nexport const disconnect = vi.fn((): boolean => {\n return true;\n});\n\n// @jaypie/textract\nexport const MarkdownPage = vi.fn((page: TextractPageAdaptable): string => {\n try {\n const result = new MarkdownPageOriginal(page).text;\n return result;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\n \"[MarkdownPage] Actual implementation failed. To suppress this warning, manually mock the response with mockReturnValue\",\n );\n return `_MOCK_MARKDOWN_PAGE_{{${page}}}`;\n }\n});\n\nexport const textractJsonToMarkdown = vi.fn(\n (textractResults: JsonReturn): string => {\n try {\n const result = textractJsonToMarkdownOriginal(textractResults);\n return result;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\n \"[textractJsonToMarkdown] Actual implementation failed. To suppress this warning, manually mock the response with mockReturnValue\",\n );\n return `_MOCK_TEXTRACT_JSON_TO_MARKDOWN_{{${textractResults}}}`;\n }\n },\n);\n\n// Export default for convenience\nexport default {\n // AWS\n getMessages,\n getSecret,\n getTextractJob,\n sendBatchMessages,\n sendMessage,\n sendTextractJob,\n // Core\n BadGatewayError,\n BadRequestError,\n ConfigurationError,\n envBoolean,\n ForbiddenError,\n GatewayTimeoutError,\n GoneError,\n HTTP,\n IllogicalError,\n InternalError,\n jaypieHandler,\n MethodNotAllowedError,\n MultiError,\n NotFoundError,\n NotImplementedError,\n ProjectError,\n ProjectMultiError,\n RejectedError,\n sleep,\n TeapotError,\n UnauthorizedError,\n UnavailableError,\n UnhandledError,\n UnreachableCodeError,\n uuid,\n // Datadog\n submitMetric,\n submitMetricSet,\n // Express\n expressHandler,\n // Lambda\n lambdaHandler,\n // LLM\n Llm,\n // Mongoose\n connect,\n connectFromSecretEnv,\n disconnect,\n // Textract\n MarkdownPage,\n textractJsonToMarkdown,\n};\n"],"names":["originalGetMessages","BadGatewayErrorOriginal","BadRequestErrorOriginal","ConfigurationErrorOriginal","ForbiddenErrorOriginal","GatewayTimeoutErrorOriginal","GoneErrorOriginal","IllogicalErrorOriginal","InternalErrorOriginal","MethodNotAllowedErrorOriginal","MultiErrorOriginal","NotFoundErrorOriginal","NotImplementedErrorOriginal","ProjectErrorOriginal","ProjectMultiErrorOriginal","RejectedErrorOriginal","TeapotErrorOriginal","UnauthorizedErrorOriginal","UnavailableErrorOriginal","UnhandledErrorOriginal","UnreachableCodeErrorOriginal","originalUuid","MarkdownPageOriginal","textractJsonToMarkdownOriginal"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jaypie/testkit",
3
- "version": "1.1.9",
3
+ "version": "1.1.10",
4
4
  "license": "MIT",
5
5
  "author": "Finlayson Studio",
6
6
  "type": "module",
@@ -35,17 +35,20 @@
35
35
  "uuid": "^11.0.5"
36
36
  },
37
37
  "devDependencies": {
38
+ "@jaypie/textract": "^0.2.1",
38
39
  "@types/express": "^5.0.0",
39
40
  "@types/lodash.isequal": "^4.5.8",
40
41
  "@types/node": "^22.13.1",
41
42
  "@types/supertest": "^6.0.2",
42
43
  "express": "^4.21.1",
44
+ "jest-extended": "^4.0.2",
43
45
  "rollup": "^4.29.1",
46
+ "rollup-plugin-dts": "^6.1.1",
44
47
  "typescript": "^5.0.0",
45
48
  "vitest": "^3.0.5"
46
49
  },
47
50
  "publishConfig": {
48
51
  "access": "public"
49
52
  },
50
- "gitHead": "144a31b2107d2a2a7a9784b943ae137583aefaeb"
53
+ "gitHead": "4f43341ad7eca6e646d00750f085a65305869920"
51
54
  }