@mbc-cqrs-serverless/core 1.1.0-beta.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/command.event.handler.d.ts +1 -1
- package/dist/commands/command.event.handler.js +1 -1
- package/dist/commands/command.event.handler.js.map +1 -1
- package/dist/constants/tenant.js.map +1 -1
- package/dist/helpers/index.d.ts +1 -1
- package/dist/helpers/index.js +2 -2
- package/dist/helpers/index.js.map +1 -1
- package/dist/integration/utilities/aws-error-factory.d.ts +141 -0
- package/dist/integration/utilities/aws-error-factory.js +392 -0
- package/dist/integration/utilities/aws-error-factory.js.map +1 -0
- package/dist/integration/utilities/aws-mock-manager.d.ts +136 -0
- package/dist/integration/utilities/aws-mock-manager.js +336 -0
- package/dist/integration/utilities/aws-mock-manager.js.map +1 -0
- package/dist/integration/utilities/index.d.ts +22 -0
- package/dist/integration/utilities/index.js +99 -0
- package/dist/integration/utilities/index.js.map +1 -0
- package/dist/integration/utilities/test-assertions.d.ts +112 -0
- package/dist/integration/utilities/test-assertions.js +345 -0
- package/dist/integration/utilities/test-assertions.js.map +1 -0
- package/dist/integration/utilities/test-data-builders.d.ts +202 -0
- package/dist/integration/utilities/test-data-builders.js +320 -0
- package/dist/integration/utilities/test-data-builders.js.map +1 -0
- package/dist/interfaces/notification.interface.d.ts +13 -0
- package/dist/notifications/email.service.js +16 -4
- package/dist/notifications/email.service.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AWS Mock Manager
|
|
3
|
+
*
|
|
4
|
+
* Provides standardized setup and teardown for AWS SDK mock clients
|
|
5
|
+
* in integration tests. This eliminates repetitive mock configuration
|
|
6
|
+
* across test files and ensures consistent mock behavior.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* import { AWSMockManager, createDynamoDBMock } from './utilities/aws-mock-manager'
|
|
10
|
+
*
|
|
11
|
+
* // Option 1: Use individual mock creators
|
|
12
|
+
* const { mock, client, reset, restore } = createDynamoDBMock()
|
|
13
|
+
*
|
|
14
|
+
* // Option 2: Use the manager for multiple services
|
|
15
|
+
* const manager = new AWSMockManager()
|
|
16
|
+
* const dynamoDB = manager.getDynamoDB()
|
|
17
|
+
* const s3 = manager.getS3()
|
|
18
|
+
*
|
|
19
|
+
* beforeEach(() => manager.resetAll())
|
|
20
|
+
* afterAll(() => manager.restoreAll())
|
|
21
|
+
*/
|
|
22
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
23
|
+
import { S3Client } from '@aws-sdk/client-s3';
|
|
24
|
+
import { SESv2Client } from '@aws-sdk/client-sesv2';
|
|
25
|
+
import { SFNClient } from '@aws-sdk/client-sfn';
|
|
26
|
+
import { SNSClient } from '@aws-sdk/client-sns';
|
|
27
|
+
import { SQSClient } from '@aws-sdk/client-sqs';
|
|
28
|
+
import { AwsClientStub } from 'aws-sdk-client-mock';
|
|
29
|
+
/**
|
|
30
|
+
* Configuration options for mock clients
|
|
31
|
+
*/
|
|
32
|
+
export interface MockClientOptions {
|
|
33
|
+
region?: string;
|
|
34
|
+
maxAttempts?: number;
|
|
35
|
+
retryMode?: 'standard' | 'adaptive';
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Result from creating a mock client
|
|
39
|
+
*/
|
|
40
|
+
export interface MockClientResult<TClient> {
|
|
41
|
+
/** The mock client stub for configuring responses */
|
|
42
|
+
mock: AwsClientStub<TClient>;
|
|
43
|
+
/** The actual client instance configured with the mock */
|
|
44
|
+
client: TClient;
|
|
45
|
+
/** Reset the mock to clear all configured behaviors */
|
|
46
|
+
reset: () => void;
|
|
47
|
+
/** Restore the mock and destroy the client */
|
|
48
|
+
restore: () => void;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Creates a mocked DynamoDB client
|
|
52
|
+
*/
|
|
53
|
+
export declare function createDynamoDBMock(options?: MockClientOptions): MockClientResult<DynamoDBClient>;
|
|
54
|
+
/**
|
|
55
|
+
* Creates a mocked S3 client
|
|
56
|
+
*/
|
|
57
|
+
export declare function createS3Mock(options?: MockClientOptions): MockClientResult<S3Client>;
|
|
58
|
+
/**
|
|
59
|
+
* Creates a mocked SQS client
|
|
60
|
+
*/
|
|
61
|
+
export declare function createSQSMock(options?: MockClientOptions): MockClientResult<SQSClient>;
|
|
62
|
+
/**
|
|
63
|
+
* Creates a mocked SNS client
|
|
64
|
+
*/
|
|
65
|
+
export declare function createSNSMock(options?: MockClientOptions): MockClientResult<SNSClient>;
|
|
66
|
+
/**
|
|
67
|
+
* Creates a mocked Step Functions client
|
|
68
|
+
*/
|
|
69
|
+
export declare function createSFNMock(options?: MockClientOptions): MockClientResult<SFNClient>;
|
|
70
|
+
/**
|
|
71
|
+
* Creates a mocked SES v2 client
|
|
72
|
+
*/
|
|
73
|
+
export declare function createSESMock(options?: MockClientOptions): MockClientResult<SESv2Client>;
|
|
74
|
+
/**
|
|
75
|
+
* Manages multiple AWS mock clients for test suites
|
|
76
|
+
*/
|
|
77
|
+
export declare class AWSMockManager {
|
|
78
|
+
private dynamoDB?;
|
|
79
|
+
private s3?;
|
|
80
|
+
private sqs?;
|
|
81
|
+
private sns?;
|
|
82
|
+
private sfn?;
|
|
83
|
+
private ses?;
|
|
84
|
+
private options;
|
|
85
|
+
constructor(options?: MockClientOptions);
|
|
86
|
+
/**
|
|
87
|
+
* Gets or creates the DynamoDB mock
|
|
88
|
+
*/
|
|
89
|
+
getDynamoDB(): MockClientResult<DynamoDBClient>;
|
|
90
|
+
/**
|
|
91
|
+
* Gets or creates the S3 mock
|
|
92
|
+
*/
|
|
93
|
+
getS3(): MockClientResult<S3Client>;
|
|
94
|
+
/**
|
|
95
|
+
* Gets or creates the SQS mock
|
|
96
|
+
*/
|
|
97
|
+
getSQS(): MockClientResult<SQSClient>;
|
|
98
|
+
/**
|
|
99
|
+
* Gets or creates the SNS mock
|
|
100
|
+
*/
|
|
101
|
+
getSNS(): MockClientResult<SNSClient>;
|
|
102
|
+
/**
|
|
103
|
+
* Gets or creates the Step Functions mock
|
|
104
|
+
*/
|
|
105
|
+
getSFN(): MockClientResult<SFNClient>;
|
|
106
|
+
/**
|
|
107
|
+
* Gets or creates the SES mock
|
|
108
|
+
*/
|
|
109
|
+
getSES(): MockClientResult<SESv2Client>;
|
|
110
|
+
/**
|
|
111
|
+
* Resets all active mocks
|
|
112
|
+
*/
|
|
113
|
+
resetAll(): void;
|
|
114
|
+
/**
|
|
115
|
+
* Restores all mocks and destroys clients
|
|
116
|
+
*/
|
|
117
|
+
restoreAll(): void;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Creates a standard test setup with beforeEach/afterAll hooks
|
|
121
|
+
* for use with Jest describe blocks
|
|
122
|
+
*/
|
|
123
|
+
export declare function setupAWSMocks(services: Array<'dynamodb' | 's3' | 'sqs' | 'sns' | 'sfn' | 'ses'>, options?: MockClientOptions): {
|
|
124
|
+
manager: AWSMockManager;
|
|
125
|
+
beforeEachHook: () => void;
|
|
126
|
+
afterAllHook: () => void;
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* Quick setup function that returns individual mocks for common patterns
|
|
130
|
+
*/
|
|
131
|
+
export declare function createTestMocks<T extends Array<'dynamodb' | 's3' | 'sqs' | 'sns' | 'sfn' | 'ses'>>(services: T, options?: MockClientOptions): {
|
|
132
|
+
[K in T[number]]: K extends 'dynamodb' ? MockClientResult<DynamoDBClient> : K extends 's3' ? MockClientResult<S3Client> : K extends 'sqs' ? MockClientResult<SQSClient> : K extends 'sns' ? MockClientResult<SNSClient> : K extends 'sfn' ? MockClientResult<SFNClient> : K extends 'ses' ? MockClientResult<SESv2Client> : never;
|
|
133
|
+
} & {
|
|
134
|
+
resetAll: () => void;
|
|
135
|
+
restoreAll: () => void;
|
|
136
|
+
};
|
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* AWS Mock Manager
|
|
4
|
+
*
|
|
5
|
+
* Provides standardized setup and teardown for AWS SDK mock clients
|
|
6
|
+
* in integration tests. This eliminates repetitive mock configuration
|
|
7
|
+
* across test files and ensures consistent mock behavior.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* import { AWSMockManager, createDynamoDBMock } from './utilities/aws-mock-manager'
|
|
11
|
+
*
|
|
12
|
+
* // Option 1: Use individual mock creators
|
|
13
|
+
* const { mock, client, reset, restore } = createDynamoDBMock()
|
|
14
|
+
*
|
|
15
|
+
* // Option 2: Use the manager for multiple services
|
|
16
|
+
* const manager = new AWSMockManager()
|
|
17
|
+
* const dynamoDB = manager.getDynamoDB()
|
|
18
|
+
* const s3 = manager.getS3()
|
|
19
|
+
*
|
|
20
|
+
* beforeEach(() => manager.resetAll())
|
|
21
|
+
* afterAll(() => manager.restoreAll())
|
|
22
|
+
*/
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.AWSMockManager = void 0;
|
|
25
|
+
exports.createDynamoDBMock = createDynamoDBMock;
|
|
26
|
+
exports.createS3Mock = createS3Mock;
|
|
27
|
+
exports.createSQSMock = createSQSMock;
|
|
28
|
+
exports.createSNSMock = createSNSMock;
|
|
29
|
+
exports.createSFNMock = createSFNMock;
|
|
30
|
+
exports.createSESMock = createSESMock;
|
|
31
|
+
exports.setupAWSMocks = setupAWSMocks;
|
|
32
|
+
exports.createTestMocks = createTestMocks;
|
|
33
|
+
const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
|
|
34
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
35
|
+
const client_sesv2_1 = require("@aws-sdk/client-sesv2");
|
|
36
|
+
const client_sfn_1 = require("@aws-sdk/client-sfn");
|
|
37
|
+
const client_sns_1 = require("@aws-sdk/client-sns");
|
|
38
|
+
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
39
|
+
const aws_sdk_client_mock_1 = require("aws-sdk-client-mock");
|
|
40
|
+
/**
|
|
41
|
+
* Default AWS region for test clients
|
|
42
|
+
*/
|
|
43
|
+
const DEFAULT_REGION = 'ap-northeast-1';
|
|
44
|
+
// ============================================================================
|
|
45
|
+
// Individual Mock Creators
|
|
46
|
+
// ============================================================================
|
|
47
|
+
/**
|
|
48
|
+
* Creates a mocked DynamoDB client
|
|
49
|
+
*/
|
|
50
|
+
function createDynamoDBMock(options = {}) {
|
|
51
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_dynamodb_1.DynamoDBClient);
|
|
52
|
+
const client = new client_dynamodb_1.DynamoDBClient({
|
|
53
|
+
region: options.region || DEFAULT_REGION,
|
|
54
|
+
maxAttempts: options.maxAttempts,
|
|
55
|
+
retryMode: options.retryMode,
|
|
56
|
+
});
|
|
57
|
+
return {
|
|
58
|
+
mock,
|
|
59
|
+
client,
|
|
60
|
+
reset: () => mock.reset(),
|
|
61
|
+
restore: () => {
|
|
62
|
+
mock.restore();
|
|
63
|
+
client.destroy();
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Creates a mocked S3 client
|
|
69
|
+
*/
|
|
70
|
+
function createS3Mock(options = {}) {
|
|
71
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_s3_1.S3Client);
|
|
72
|
+
const client = new client_s3_1.S3Client({
|
|
73
|
+
region: options.region || DEFAULT_REGION,
|
|
74
|
+
maxAttempts: options.maxAttempts,
|
|
75
|
+
retryMode: options.retryMode,
|
|
76
|
+
});
|
|
77
|
+
return {
|
|
78
|
+
mock,
|
|
79
|
+
client,
|
|
80
|
+
reset: () => mock.reset(),
|
|
81
|
+
restore: () => {
|
|
82
|
+
mock.restore();
|
|
83
|
+
client.destroy();
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Creates a mocked SQS client
|
|
89
|
+
*/
|
|
90
|
+
function createSQSMock(options = {}) {
|
|
91
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_sqs_1.SQSClient);
|
|
92
|
+
const client = new client_sqs_1.SQSClient({
|
|
93
|
+
region: options.region || DEFAULT_REGION,
|
|
94
|
+
maxAttempts: options.maxAttempts,
|
|
95
|
+
retryMode: options.retryMode,
|
|
96
|
+
});
|
|
97
|
+
return {
|
|
98
|
+
mock,
|
|
99
|
+
client,
|
|
100
|
+
reset: () => mock.reset(),
|
|
101
|
+
restore: () => {
|
|
102
|
+
mock.restore();
|
|
103
|
+
client.destroy();
|
|
104
|
+
},
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Creates a mocked SNS client
|
|
109
|
+
*/
|
|
110
|
+
function createSNSMock(options = {}) {
|
|
111
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_sns_1.SNSClient);
|
|
112
|
+
const client = new client_sns_1.SNSClient({
|
|
113
|
+
region: options.region || DEFAULT_REGION,
|
|
114
|
+
maxAttempts: options.maxAttempts,
|
|
115
|
+
retryMode: options.retryMode,
|
|
116
|
+
});
|
|
117
|
+
return {
|
|
118
|
+
mock,
|
|
119
|
+
client,
|
|
120
|
+
reset: () => mock.reset(),
|
|
121
|
+
restore: () => {
|
|
122
|
+
mock.restore();
|
|
123
|
+
client.destroy();
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Creates a mocked Step Functions client
|
|
129
|
+
*/
|
|
130
|
+
function createSFNMock(options = {}) {
|
|
131
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_sfn_1.SFNClient);
|
|
132
|
+
const client = new client_sfn_1.SFNClient({
|
|
133
|
+
region: options.region || DEFAULT_REGION,
|
|
134
|
+
maxAttempts: options.maxAttempts,
|
|
135
|
+
retryMode: options.retryMode,
|
|
136
|
+
});
|
|
137
|
+
return {
|
|
138
|
+
mock,
|
|
139
|
+
client,
|
|
140
|
+
reset: () => mock.reset(),
|
|
141
|
+
restore: () => {
|
|
142
|
+
mock.restore();
|
|
143
|
+
client.destroy();
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Creates a mocked SES v2 client
|
|
149
|
+
*/
|
|
150
|
+
function createSESMock(options = {}) {
|
|
151
|
+
const mock = (0, aws_sdk_client_mock_1.mockClient)(client_sesv2_1.SESv2Client);
|
|
152
|
+
const client = new client_sesv2_1.SESv2Client({
|
|
153
|
+
region: options.region || DEFAULT_REGION,
|
|
154
|
+
maxAttempts: options.maxAttempts,
|
|
155
|
+
retryMode: options.retryMode,
|
|
156
|
+
});
|
|
157
|
+
return {
|
|
158
|
+
mock,
|
|
159
|
+
client,
|
|
160
|
+
reset: () => mock.reset(),
|
|
161
|
+
restore: () => {
|
|
162
|
+
mock.restore();
|
|
163
|
+
client.destroy();
|
|
164
|
+
},
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
// ============================================================================
|
|
168
|
+
// AWS Mock Manager Class
|
|
169
|
+
// ============================================================================
|
|
170
|
+
/**
|
|
171
|
+
* Manages multiple AWS mock clients for test suites
|
|
172
|
+
*/
|
|
173
|
+
class AWSMockManager {
|
|
174
|
+
constructor(options = {}) {
|
|
175
|
+
this.options = options;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Gets or creates the DynamoDB mock
|
|
179
|
+
*/
|
|
180
|
+
getDynamoDB() {
|
|
181
|
+
if (!this.dynamoDB) {
|
|
182
|
+
this.dynamoDB = createDynamoDBMock(this.options);
|
|
183
|
+
}
|
|
184
|
+
return this.dynamoDB;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Gets or creates the S3 mock
|
|
188
|
+
*/
|
|
189
|
+
getS3() {
|
|
190
|
+
if (!this.s3) {
|
|
191
|
+
this.s3 = createS3Mock(this.options);
|
|
192
|
+
}
|
|
193
|
+
return this.s3;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Gets or creates the SQS mock
|
|
197
|
+
*/
|
|
198
|
+
getSQS() {
|
|
199
|
+
if (!this.sqs) {
|
|
200
|
+
this.sqs = createSQSMock(this.options);
|
|
201
|
+
}
|
|
202
|
+
return this.sqs;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Gets or creates the SNS mock
|
|
206
|
+
*/
|
|
207
|
+
getSNS() {
|
|
208
|
+
if (!this.sns) {
|
|
209
|
+
this.sns = createSNSMock(this.options);
|
|
210
|
+
}
|
|
211
|
+
return this.sns;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Gets or creates the Step Functions mock
|
|
215
|
+
*/
|
|
216
|
+
getSFN() {
|
|
217
|
+
if (!this.sfn) {
|
|
218
|
+
this.sfn = createSFNMock(this.options);
|
|
219
|
+
}
|
|
220
|
+
return this.sfn;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Gets or creates the SES mock
|
|
224
|
+
*/
|
|
225
|
+
getSES() {
|
|
226
|
+
if (!this.ses) {
|
|
227
|
+
this.ses = createSESMock(this.options);
|
|
228
|
+
}
|
|
229
|
+
return this.ses;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Resets all active mocks
|
|
233
|
+
*/
|
|
234
|
+
resetAll() {
|
|
235
|
+
this.dynamoDB?.reset();
|
|
236
|
+
this.s3?.reset();
|
|
237
|
+
this.sqs?.reset();
|
|
238
|
+
this.sns?.reset();
|
|
239
|
+
this.sfn?.reset();
|
|
240
|
+
this.ses?.reset();
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Restores all mocks and destroys clients
|
|
244
|
+
*/
|
|
245
|
+
restoreAll() {
|
|
246
|
+
this.dynamoDB?.restore();
|
|
247
|
+
this.s3?.restore();
|
|
248
|
+
this.sqs?.restore();
|
|
249
|
+
this.sns?.restore();
|
|
250
|
+
this.sfn?.restore();
|
|
251
|
+
this.ses?.restore();
|
|
252
|
+
this.dynamoDB = undefined;
|
|
253
|
+
this.s3 = undefined;
|
|
254
|
+
this.sqs = undefined;
|
|
255
|
+
this.sns = undefined;
|
|
256
|
+
this.sfn = undefined;
|
|
257
|
+
this.ses = undefined;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
exports.AWSMockManager = AWSMockManager;
|
|
261
|
+
// ============================================================================
|
|
262
|
+
// Test Setup Helpers
|
|
263
|
+
// ============================================================================
|
|
264
|
+
/**
|
|
265
|
+
* Creates a standard test setup with beforeEach/afterAll hooks
|
|
266
|
+
* for use with Jest describe blocks
|
|
267
|
+
*/
|
|
268
|
+
function setupAWSMocks(services, options = {}) {
|
|
269
|
+
const manager = new AWSMockManager(options);
|
|
270
|
+
// Initialize requested services
|
|
271
|
+
services.forEach((service) => {
|
|
272
|
+
switch (service) {
|
|
273
|
+
case 'dynamodb':
|
|
274
|
+
manager.getDynamoDB();
|
|
275
|
+
break;
|
|
276
|
+
case 's3':
|
|
277
|
+
manager.getS3();
|
|
278
|
+
break;
|
|
279
|
+
case 'sqs':
|
|
280
|
+
manager.getSQS();
|
|
281
|
+
break;
|
|
282
|
+
case 'sns':
|
|
283
|
+
manager.getSNS();
|
|
284
|
+
break;
|
|
285
|
+
case 'sfn':
|
|
286
|
+
manager.getSFN();
|
|
287
|
+
break;
|
|
288
|
+
case 'ses':
|
|
289
|
+
manager.getSES();
|
|
290
|
+
break;
|
|
291
|
+
}
|
|
292
|
+
});
|
|
293
|
+
return {
|
|
294
|
+
manager,
|
|
295
|
+
beforeEachHook: () => manager.resetAll(),
|
|
296
|
+
afterAllHook: () => manager.restoreAll(),
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Quick setup function that returns individual mocks for common patterns
|
|
301
|
+
*/
|
|
302
|
+
function createTestMocks(services, options = {}) {
|
|
303
|
+
const mocks = {};
|
|
304
|
+
services.forEach((service) => {
|
|
305
|
+
switch (service) {
|
|
306
|
+
case 'dynamodb':
|
|
307
|
+
mocks.dynamodb = createDynamoDBMock(options);
|
|
308
|
+
break;
|
|
309
|
+
case 's3':
|
|
310
|
+
mocks.s3 = createS3Mock(options);
|
|
311
|
+
break;
|
|
312
|
+
case 'sqs':
|
|
313
|
+
mocks.sqs = createSQSMock(options);
|
|
314
|
+
break;
|
|
315
|
+
case 'sns':
|
|
316
|
+
mocks.sns = createSNSMock(options);
|
|
317
|
+
break;
|
|
318
|
+
case 'sfn':
|
|
319
|
+
mocks.sfn = createSFNMock(options);
|
|
320
|
+
break;
|
|
321
|
+
case 'ses':
|
|
322
|
+
mocks.ses = createSESMock(options);
|
|
323
|
+
break;
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
return {
|
|
327
|
+
...mocks,
|
|
328
|
+
resetAll: () => {
|
|
329
|
+
Object.values(mocks).forEach((m) => m.reset());
|
|
330
|
+
},
|
|
331
|
+
restoreAll: () => {
|
|
332
|
+
Object.values(mocks).forEach((m) => m.restore());
|
|
333
|
+
},
|
|
334
|
+
};
|
|
335
|
+
}
|
|
336
|
+
//# sourceMappingURL=aws-mock-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-mock-manager.js","sourceRoot":"","sources":["../../../src/integration/utilities/aws-mock-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration Test Utilities
|
|
3
|
+
*
|
|
4
|
+
* This module provides shared utilities for integration tests:
|
|
5
|
+
*
|
|
6
|
+
* - aws-error-factory: Factory functions for creating AWS SDK errors
|
|
7
|
+
* - aws-mock-manager: Mock client setup and teardown helpers
|
|
8
|
+
* - test-assertions: Reusable assertion functions
|
|
9
|
+
* - test-data-builders: Test data generation utilities
|
|
10
|
+
*
|
|
11
|
+
* Usage:
|
|
12
|
+
* import {
|
|
13
|
+
* createDynamoDBError,
|
|
14
|
+
* createDynamoDBMock,
|
|
15
|
+
* assertIsRetriableError,
|
|
16
|
+
* createTestItem
|
|
17
|
+
* } from './utilities'
|
|
18
|
+
*/
|
|
19
|
+
export { type AWSError, type AWSErrorMetadata, type CreateAWSErrorOptions, createDynamoDBError, createHttpStatusError, createNetworkError, createS3Error, createSESError, createSFNError, createSNSError, createSQSError, createTimeoutError, type DynamoDBErrorName, isNetworkError, isRetriableAWSError, isThrottlingError, type NetworkErrorCode, type S3ErrorName, type SESErrorName, type SFNErrorName, type SNSErrorName, type SQSErrorName, } from './aws-error-factory';
|
|
20
|
+
export { AWSMockManager, createDynamoDBMock, createS3Mock, createSESMock, createSFNMock, createSNSMock, createSQSMock, createTestMocks, type MockClientOptions, type MockClientResult, setupAWSMocks, } from './aws-mock-manager';
|
|
21
|
+
export { assertAllMatch, assertArrayLength, assertCompletesWithin, assertDynamoDBResponseMetadata, assertErrorMetadata, assertHasRequestId, assertIsClientFault, assertIsNetworkError, assertIsNotRetriableError, assertIsRetriableError, assertIsServerFault, assertIsThrottlingError, assertIsTimeoutError, assertMemoryIncreaseLessThan, assertNoMemoryLeak, assertResponseStructure, assertTakesAtLeast, assertThrowsErrorMatching, assertThrowsErrorWithName, assertUniqueBy, forceGC, getHeapUsed, } from './test-assertions';
|
|
22
|
+
export { createBatchGetRequest, createBatchWriteRequest, createKey, createKeys, createLargeTestData, createMarshalledItem, createMarshalledItems, createMixedTypeTestData, createNestedTestData, createRandomString, createS3Content, createS3Metadata, createSFNExecutionName, createSFNInput, createSNSMessage, createSQSBatchEntries, createSQSMessageBody, createTestItem, type CreateTestItemOptions, createTestItems, DYNAMODB_BATCH_SIZE, marshall, splitIntoBatches, type TestItem, unmarshall, unmarshallItem, unmarshallItems, } from './test-data-builders';
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Integration Test Utilities
|
|
4
|
+
*
|
|
5
|
+
* This module provides shared utilities for integration tests:
|
|
6
|
+
*
|
|
7
|
+
* - aws-error-factory: Factory functions for creating AWS SDK errors
|
|
8
|
+
* - aws-mock-manager: Mock client setup and teardown helpers
|
|
9
|
+
* - test-assertions: Reusable assertion functions
|
|
10
|
+
* - test-data-builders: Test data generation utilities
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* import {
|
|
14
|
+
* createDynamoDBError,
|
|
15
|
+
* createDynamoDBMock,
|
|
16
|
+
* assertIsRetriableError,
|
|
17
|
+
* createTestItem
|
|
18
|
+
* } from './utilities'
|
|
19
|
+
*/
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.createMarshalledItems = exports.createMarshalledItem = exports.createLargeTestData = exports.createKeys = exports.createKey = exports.createBatchWriteRequest = exports.createBatchGetRequest = exports.getHeapUsed = exports.forceGC = exports.assertUniqueBy = exports.assertThrowsErrorWithName = exports.assertThrowsErrorMatching = exports.assertTakesAtLeast = exports.assertResponseStructure = exports.assertNoMemoryLeak = exports.assertMemoryIncreaseLessThan = exports.assertIsTimeoutError = exports.assertIsThrottlingError = exports.assertIsServerFault = exports.assertIsRetriableError = exports.assertIsNotRetriableError = exports.assertIsNetworkError = exports.assertIsClientFault = exports.assertHasRequestId = exports.assertErrorMetadata = exports.assertDynamoDBResponseMetadata = exports.assertCompletesWithin = exports.assertArrayLength = exports.assertAllMatch = exports.setupAWSMocks = exports.createTestMocks = exports.createSQSMock = exports.createSNSMock = exports.createSFNMock = exports.createSESMock = exports.createS3Mock = exports.createDynamoDBMock = exports.AWSMockManager = exports.isThrottlingError = exports.isRetriableAWSError = exports.isNetworkError = exports.createTimeoutError = exports.createSQSError = exports.createSNSError = exports.createSFNError = exports.createSESError = exports.createS3Error = exports.createNetworkError = exports.createHttpStatusError = exports.createDynamoDBError = void 0;
|
|
22
|
+
exports.unmarshallItems = exports.unmarshallItem = exports.unmarshall = exports.splitIntoBatches = exports.marshall = exports.DYNAMODB_BATCH_SIZE = exports.createTestItems = exports.createTestItem = exports.createSQSMessageBody = exports.createSQSBatchEntries = exports.createSNSMessage = exports.createSFNInput = exports.createSFNExecutionName = exports.createS3Metadata = exports.createS3Content = exports.createRandomString = exports.createNestedTestData = exports.createMixedTypeTestData = void 0;
|
|
23
|
+
// AWS Error Factory
|
|
24
|
+
var aws_error_factory_1 = require("./aws-error-factory");
|
|
25
|
+
Object.defineProperty(exports, "createDynamoDBError", { enumerable: true, get: function () { return aws_error_factory_1.createDynamoDBError; } });
|
|
26
|
+
Object.defineProperty(exports, "createHttpStatusError", { enumerable: true, get: function () { return aws_error_factory_1.createHttpStatusError; } });
|
|
27
|
+
Object.defineProperty(exports, "createNetworkError", { enumerable: true, get: function () { return aws_error_factory_1.createNetworkError; } });
|
|
28
|
+
Object.defineProperty(exports, "createS3Error", { enumerable: true, get: function () { return aws_error_factory_1.createS3Error; } });
|
|
29
|
+
Object.defineProperty(exports, "createSESError", { enumerable: true, get: function () { return aws_error_factory_1.createSESError; } });
|
|
30
|
+
Object.defineProperty(exports, "createSFNError", { enumerable: true, get: function () { return aws_error_factory_1.createSFNError; } });
|
|
31
|
+
Object.defineProperty(exports, "createSNSError", { enumerable: true, get: function () { return aws_error_factory_1.createSNSError; } });
|
|
32
|
+
Object.defineProperty(exports, "createSQSError", { enumerable: true, get: function () { return aws_error_factory_1.createSQSError; } });
|
|
33
|
+
Object.defineProperty(exports, "createTimeoutError", { enumerable: true, get: function () { return aws_error_factory_1.createTimeoutError; } });
|
|
34
|
+
Object.defineProperty(exports, "isNetworkError", { enumerable: true, get: function () { return aws_error_factory_1.isNetworkError; } });
|
|
35
|
+
Object.defineProperty(exports, "isRetriableAWSError", { enumerable: true, get: function () { return aws_error_factory_1.isRetriableAWSError; } });
|
|
36
|
+
Object.defineProperty(exports, "isThrottlingError", { enumerable: true, get: function () { return aws_error_factory_1.isThrottlingError; } });
|
|
37
|
+
// AWS Mock Manager
|
|
38
|
+
var aws_mock_manager_1 = require("./aws-mock-manager");
|
|
39
|
+
Object.defineProperty(exports, "AWSMockManager", { enumerable: true, get: function () { return aws_mock_manager_1.AWSMockManager; } });
|
|
40
|
+
Object.defineProperty(exports, "createDynamoDBMock", { enumerable: true, get: function () { return aws_mock_manager_1.createDynamoDBMock; } });
|
|
41
|
+
Object.defineProperty(exports, "createS3Mock", { enumerable: true, get: function () { return aws_mock_manager_1.createS3Mock; } });
|
|
42
|
+
Object.defineProperty(exports, "createSESMock", { enumerable: true, get: function () { return aws_mock_manager_1.createSESMock; } });
|
|
43
|
+
Object.defineProperty(exports, "createSFNMock", { enumerable: true, get: function () { return aws_mock_manager_1.createSFNMock; } });
|
|
44
|
+
Object.defineProperty(exports, "createSNSMock", { enumerable: true, get: function () { return aws_mock_manager_1.createSNSMock; } });
|
|
45
|
+
Object.defineProperty(exports, "createSQSMock", { enumerable: true, get: function () { return aws_mock_manager_1.createSQSMock; } });
|
|
46
|
+
Object.defineProperty(exports, "createTestMocks", { enumerable: true, get: function () { return aws_mock_manager_1.createTestMocks; } });
|
|
47
|
+
Object.defineProperty(exports, "setupAWSMocks", { enumerable: true, get: function () { return aws_mock_manager_1.setupAWSMocks; } });
|
|
48
|
+
// Test Assertions
|
|
49
|
+
var test_assertions_1 = require("./test-assertions");
|
|
50
|
+
Object.defineProperty(exports, "assertAllMatch", { enumerable: true, get: function () { return test_assertions_1.assertAllMatch; } });
|
|
51
|
+
Object.defineProperty(exports, "assertArrayLength", { enumerable: true, get: function () { return test_assertions_1.assertArrayLength; } });
|
|
52
|
+
Object.defineProperty(exports, "assertCompletesWithin", { enumerable: true, get: function () { return test_assertions_1.assertCompletesWithin; } });
|
|
53
|
+
Object.defineProperty(exports, "assertDynamoDBResponseMetadata", { enumerable: true, get: function () { return test_assertions_1.assertDynamoDBResponseMetadata; } });
|
|
54
|
+
Object.defineProperty(exports, "assertErrorMetadata", { enumerable: true, get: function () { return test_assertions_1.assertErrorMetadata; } });
|
|
55
|
+
Object.defineProperty(exports, "assertHasRequestId", { enumerable: true, get: function () { return test_assertions_1.assertHasRequestId; } });
|
|
56
|
+
Object.defineProperty(exports, "assertIsClientFault", { enumerable: true, get: function () { return test_assertions_1.assertIsClientFault; } });
|
|
57
|
+
Object.defineProperty(exports, "assertIsNetworkError", { enumerable: true, get: function () { return test_assertions_1.assertIsNetworkError; } });
|
|
58
|
+
Object.defineProperty(exports, "assertIsNotRetriableError", { enumerable: true, get: function () { return test_assertions_1.assertIsNotRetriableError; } });
|
|
59
|
+
Object.defineProperty(exports, "assertIsRetriableError", { enumerable: true, get: function () { return test_assertions_1.assertIsRetriableError; } });
|
|
60
|
+
Object.defineProperty(exports, "assertIsServerFault", { enumerable: true, get: function () { return test_assertions_1.assertIsServerFault; } });
|
|
61
|
+
Object.defineProperty(exports, "assertIsThrottlingError", { enumerable: true, get: function () { return test_assertions_1.assertIsThrottlingError; } });
|
|
62
|
+
Object.defineProperty(exports, "assertIsTimeoutError", { enumerable: true, get: function () { return test_assertions_1.assertIsTimeoutError; } });
|
|
63
|
+
Object.defineProperty(exports, "assertMemoryIncreaseLessThan", { enumerable: true, get: function () { return test_assertions_1.assertMemoryIncreaseLessThan; } });
|
|
64
|
+
Object.defineProperty(exports, "assertNoMemoryLeak", { enumerable: true, get: function () { return test_assertions_1.assertNoMemoryLeak; } });
|
|
65
|
+
Object.defineProperty(exports, "assertResponseStructure", { enumerable: true, get: function () { return test_assertions_1.assertResponseStructure; } });
|
|
66
|
+
Object.defineProperty(exports, "assertTakesAtLeast", { enumerable: true, get: function () { return test_assertions_1.assertTakesAtLeast; } });
|
|
67
|
+
Object.defineProperty(exports, "assertThrowsErrorMatching", { enumerable: true, get: function () { return test_assertions_1.assertThrowsErrorMatching; } });
|
|
68
|
+
Object.defineProperty(exports, "assertThrowsErrorWithName", { enumerable: true, get: function () { return test_assertions_1.assertThrowsErrorWithName; } });
|
|
69
|
+
Object.defineProperty(exports, "assertUniqueBy", { enumerable: true, get: function () { return test_assertions_1.assertUniqueBy; } });
|
|
70
|
+
Object.defineProperty(exports, "forceGC", { enumerable: true, get: function () { return test_assertions_1.forceGC; } });
|
|
71
|
+
Object.defineProperty(exports, "getHeapUsed", { enumerable: true, get: function () { return test_assertions_1.getHeapUsed; } });
|
|
72
|
+
// Test Data Builders
|
|
73
|
+
var test_data_builders_1 = require("./test-data-builders");
|
|
74
|
+
Object.defineProperty(exports, "createBatchGetRequest", { enumerable: true, get: function () { return test_data_builders_1.createBatchGetRequest; } });
|
|
75
|
+
Object.defineProperty(exports, "createBatchWriteRequest", { enumerable: true, get: function () { return test_data_builders_1.createBatchWriteRequest; } });
|
|
76
|
+
Object.defineProperty(exports, "createKey", { enumerable: true, get: function () { return test_data_builders_1.createKey; } });
|
|
77
|
+
Object.defineProperty(exports, "createKeys", { enumerable: true, get: function () { return test_data_builders_1.createKeys; } });
|
|
78
|
+
Object.defineProperty(exports, "createLargeTestData", { enumerable: true, get: function () { return test_data_builders_1.createLargeTestData; } });
|
|
79
|
+
Object.defineProperty(exports, "createMarshalledItem", { enumerable: true, get: function () { return test_data_builders_1.createMarshalledItem; } });
|
|
80
|
+
Object.defineProperty(exports, "createMarshalledItems", { enumerable: true, get: function () { return test_data_builders_1.createMarshalledItems; } });
|
|
81
|
+
Object.defineProperty(exports, "createMixedTypeTestData", { enumerable: true, get: function () { return test_data_builders_1.createMixedTypeTestData; } });
|
|
82
|
+
Object.defineProperty(exports, "createNestedTestData", { enumerable: true, get: function () { return test_data_builders_1.createNestedTestData; } });
|
|
83
|
+
Object.defineProperty(exports, "createRandomString", { enumerable: true, get: function () { return test_data_builders_1.createRandomString; } });
|
|
84
|
+
Object.defineProperty(exports, "createS3Content", { enumerable: true, get: function () { return test_data_builders_1.createS3Content; } });
|
|
85
|
+
Object.defineProperty(exports, "createS3Metadata", { enumerable: true, get: function () { return test_data_builders_1.createS3Metadata; } });
|
|
86
|
+
Object.defineProperty(exports, "createSFNExecutionName", { enumerable: true, get: function () { return test_data_builders_1.createSFNExecutionName; } });
|
|
87
|
+
Object.defineProperty(exports, "createSFNInput", { enumerable: true, get: function () { return test_data_builders_1.createSFNInput; } });
|
|
88
|
+
Object.defineProperty(exports, "createSNSMessage", { enumerable: true, get: function () { return test_data_builders_1.createSNSMessage; } });
|
|
89
|
+
Object.defineProperty(exports, "createSQSBatchEntries", { enumerable: true, get: function () { return test_data_builders_1.createSQSBatchEntries; } });
|
|
90
|
+
Object.defineProperty(exports, "createSQSMessageBody", { enumerable: true, get: function () { return test_data_builders_1.createSQSMessageBody; } });
|
|
91
|
+
Object.defineProperty(exports, "createTestItem", { enumerable: true, get: function () { return test_data_builders_1.createTestItem; } });
|
|
92
|
+
Object.defineProperty(exports, "createTestItems", { enumerable: true, get: function () { return test_data_builders_1.createTestItems; } });
|
|
93
|
+
Object.defineProperty(exports, "DYNAMODB_BATCH_SIZE", { enumerable: true, get: function () { return test_data_builders_1.DYNAMODB_BATCH_SIZE; } });
|
|
94
|
+
Object.defineProperty(exports, "marshall", { enumerable: true, get: function () { return test_data_builders_1.marshall; } });
|
|
95
|
+
Object.defineProperty(exports, "splitIntoBatches", { enumerable: true, get: function () { return test_data_builders_1.splitIntoBatches; } });
|
|
96
|
+
Object.defineProperty(exports, "unmarshall", { enumerable: true, get: function () { return test_data_builders_1.unmarshall; } });
|
|
97
|
+
Object.defineProperty(exports, "unmarshallItem", { enumerable: true, get: function () { return test_data_builders_1.unmarshallItem; } });
|
|
98
|
+
Object.defineProperty(exports, "unmarshallItems", { enumerable: true, get: function () { return test_data_builders_1.unmarshallItems; } });
|
|
99
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration/utilities/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;AAEH,oBAAoB;AACpB,yDAuB4B;AAnB1B,wHAAA,mBAAmB,OAAA;AACnB,0HAAA,qBAAqB,OAAA;AACrB,uHAAA,kBAAkB,OAAA;AAClB,kHAAA,aAAa,OAAA;AACb,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AACd,uHAAA,kBAAkB,OAAA;AAElB,mHAAA,cAAc,OAAA;AACd,wHAAA,mBAAmB,OAAA;AACnB,sHAAA,iBAAiB,OAAA;AASnB,mBAAmB;AACnB,uDAY2B;AAXzB,kHAAA,cAAc,OAAA;AACd,sHAAA,kBAAkB,OAAA;AAClB,gHAAA,YAAY,OAAA;AACZ,iHAAA,aAAa,OAAA;AACb,iHAAA,aAAa,OAAA;AACb,iHAAA,aAAa,OAAA;AACb,iHAAA,aAAa,OAAA;AACb,mHAAA,eAAe,OAAA;AAGf,iHAAA,aAAa,OAAA;AAGf,kBAAkB;AAClB,qDAuB0B;AAtBxB,iHAAA,cAAc,OAAA;AACd,oHAAA,iBAAiB,OAAA;AACjB,wHAAA,qBAAqB,OAAA;AACrB,iIAAA,8BAA8B,OAAA;AAC9B,sHAAA,mBAAmB,OAAA;AACnB,qHAAA,kBAAkB,OAAA;AAClB,sHAAA,mBAAmB,OAAA;AACnB,uHAAA,oBAAoB,OAAA;AACpB,4HAAA,yBAAyB,OAAA;AACzB,yHAAA,sBAAsB,OAAA;AACtB,sHAAA,mBAAmB,OAAA;AACnB,0HAAA,uBAAuB,OAAA;AACvB,uHAAA,oBAAoB,OAAA;AACpB,+HAAA,4BAA4B,OAAA;AAC5B,qHAAA,kBAAkB,OAAA;AAClB,0HAAA,uBAAuB,OAAA;AACvB,qHAAA,kBAAkB,OAAA;AAClB,4HAAA,yBAAyB,OAAA;AACzB,4HAAA,yBAAyB,OAAA;AACzB,iHAAA,cAAc,OAAA;AACd,0GAAA,OAAO,OAAA;AACP,8GAAA,WAAW,OAAA;AAGb,qBAAqB;AACrB,2DA4B6B;AA3B3B,2HAAA,qBAAqB,OAAA;AACrB,6HAAA,uBAAuB,OAAA;AACvB,+GAAA,SAAS,OAAA;AACT,gHAAA,UAAU,OAAA;AACV,yHAAA,mBAAmB,OAAA;AACnB,0HAAA,oBAAoB,OAAA;AACpB,2HAAA,qBAAqB,OAAA;AACrB,6HAAA,uBAAuB,OAAA;AACvB,0HAAA,oBAAoB,OAAA;AACpB,wHAAA,kBAAkB,OAAA;AAClB,qHAAA,eAAe,OAAA;AACf,sHAAA,gBAAgB,OAAA;AAChB,4HAAA,sBAAsB,OAAA;AACtB,oHAAA,cAAc,OAAA;AACd,sHAAA,gBAAgB,OAAA;AAChB,2HAAA,qBAAqB,OAAA;AACrB,0HAAA,oBAAoB,OAAA;AACpB,oHAAA,cAAc,OAAA;AAEd,qHAAA,eAAe,OAAA;AACf,yHAAA,mBAAmB,OAAA;AACnB,8GAAA,QAAQ,OAAA;AACR,sHAAA,gBAAgB,OAAA;AAEhB,gHAAA,UAAU,OAAA;AACV,oHAAA,cAAc,OAAA;AACd,qHAAA,eAAe,OAAA"}
|