@aws-amplify/graphql-model-transformer 1.3.3-alpha.9 → 1.3.3-cb-test-beta.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/CHANGELOG.md +4 -0
- package/lib/rds-lambda.zip +0 -0
- package/package.json +6 -6
- package/rds-lambda/node_modules/.package-lock.json +207 -207
- package/rds-lambda/node_modules/@aws-sdk/client-ssm/package.json +14 -14
- package/rds-lambda/node_modules/@aws-sdk/client-sso/package.json +11 -11
- package/rds-lambda/node_modules/@aws-sdk/client-sso-oidc/package.json +11 -11
- package/rds-lambda/node_modules/@aws-sdk/client-sts/package.json +14 -14
- package/rds-lambda/node_modules/@aws-sdk/config-resolver/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-imds/package.json +3 -3
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-ini/package.json +8 -8
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-node/package.json +9 -9
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-process/package.json +3 -3
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
- package/rds-lambda/node_modules/@aws-sdk/credential-provider-web-identity/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/fetch-http-handler/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/middleware-retry/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/middleware-sdk-sts/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/middleware-signing/package.json +3 -3
- package/rds-lambda/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/node-config-provider/package.json +3 -3
- package/rds-lambda/node_modules/@aws-sdk/node-http-handler/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/property-provider/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/shared-ini-file-loader/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/signature-v4/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/token-providers/package.json +4 -4
- package/rds-lambda/node_modules/@aws-sdk/util-defaults-mode-browser/package.json +2 -2
- package/rds-lambda/node_modules/@aws-sdk/util-defaults-mode-node/package.json +5 -5
- package/rds-lambda/node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json +11 -0
- package/rds-lambda/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partitions.json +11 -0
- package/rds-lambda/node_modules/@aws-sdk/util-endpoints/package.json +1 -1
- package/rds-lambda/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
- package/rds-lambda/node_modules/@sinonjs/fake-timers/README.md +1 -4
- package/rds-lambda/node_modules/@sinonjs/fake-timers/package.json +1 -1
- package/rds-lambda/node_modules/@smithy/protocol-http/package.json +3 -2
- package/rds-lambda/node_modules/@smithy/types/package.json +7 -2
- package/rds-lambda/node_modules/@types/node/README.md +1 -1
- package/rds-lambda/node_modules/@types/node/package.json +2 -2
- package/rds-lambda/node_modules/browserslist/package.json +3 -3
- package/rds-lambda/node_modules/caniuse-lite/package.json +1 -1
- package/rds-lambda/node_modules/cjs-module-lexer/LICENSE +10 -10
- package/rds-lambda/node_modules/cjs-module-lexer/README.md +461 -453
- package/rds-lambda/node_modules/cjs-module-lexer/dist/lexer.mjs +1 -1
- package/rds-lambda/node_modules/cjs-module-lexer/package.json +45 -43
- package/rds-lambda/node_modules/electron-to-chromium/full-chromium-versions.json +1 -1
- package/rds-lambda/node_modules/electron-to-chromium/full-versions.json +1 -1
- package/rds-lambda/node_modules/electron-to-chromium/package.json +1 -1
- package/rds-lambda/node_modules/jest-snapshot/node_modules/semver/package.json +4 -4
- package/rds-lambda/node_modules/pirates/package.json +6 -6
- package/rds-lambda/node_modules/ts-jest/node_modules/semver/package.json +4 -4
- package/rds-lambda/package-lock.json +207 -207
- package/src/__tests__/__snapshots__/model-transformer-override.test.ts.snap +4620 -0
- package/src/__tests__/model-transformer-override.test.ts +73 -0
- package/src/__tests__/model-transformer.test.ts +2 -0
- package/src/__tests__/overrides/build/override.js +16 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/rds-lambda/node_modules/cjs-module-lexer/CHANGELOG.md +0 -40
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ModelTransformer } from '@aws-amplify/graphql-model-transformer';
|
|
2
|
+
import { GraphQLTransform } from '@aws-amplify/graphql-transformer-core';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
import { stateManager } from '@aws-amplify/amplify-cli-core';
|
|
5
|
+
|
|
6
|
+
jest.spyOn(stateManager, 'getLocalEnvInfo').mockReturnValue({ envName: 'testEnvName' });
|
|
7
|
+
jest.spyOn(stateManager, 'getProjectConfig').mockReturnValue({ projectName: 'testProjectName' });
|
|
8
|
+
|
|
9
|
+
const featureFlags = {
|
|
10
|
+
getBoolean: jest.fn(),
|
|
11
|
+
getNumber: jest.fn(),
|
|
12
|
+
getObject: jest.fn(),
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
describe('ModelTransformer: ', () => {
|
|
16
|
+
it('should override model objects when given override config', () => {
|
|
17
|
+
const validSchema = `
|
|
18
|
+
type Post @model {
|
|
19
|
+
id: ID!
|
|
20
|
+
comments: [Comment]
|
|
21
|
+
}
|
|
22
|
+
type Comment @model{
|
|
23
|
+
id: String!
|
|
24
|
+
text: String!
|
|
25
|
+
}
|
|
26
|
+
`;
|
|
27
|
+
const transformer = new GraphQLTransform({
|
|
28
|
+
transformers: [new ModelTransformer()],
|
|
29
|
+
overrideConfig: {
|
|
30
|
+
overrideDir: path.join(__dirname, 'overrides'),
|
|
31
|
+
overrideFlag: true,
|
|
32
|
+
resourceName: 'myResource',
|
|
33
|
+
},
|
|
34
|
+
featureFlags,
|
|
35
|
+
});
|
|
36
|
+
const out = transformer.transform(validSchema);
|
|
37
|
+
expect(out).toBeDefined();
|
|
38
|
+
const postStack = out.stacks.Post;
|
|
39
|
+
const commentStack = out.stacks.Comment;
|
|
40
|
+
|
|
41
|
+
expect(postStack).toMatchSnapshot();
|
|
42
|
+
expect(commentStack).toMatchSnapshot();
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it('should not override model objects when override file does not exist', () => {
|
|
46
|
+
const validSchema = `
|
|
47
|
+
type Post @model {
|
|
48
|
+
id: ID!
|
|
49
|
+
comments: [Comment]
|
|
50
|
+
}
|
|
51
|
+
type Comment @model{
|
|
52
|
+
id: String!
|
|
53
|
+
text: String!
|
|
54
|
+
}
|
|
55
|
+
`;
|
|
56
|
+
const transformer = new GraphQLTransform({
|
|
57
|
+
transformers: [new ModelTransformer()],
|
|
58
|
+
overrideConfig: {
|
|
59
|
+
overrideDir: path.join(__dirname, 'non-existing-override-directory'),
|
|
60
|
+
overrideFlag: true,
|
|
61
|
+
resourceName: 'myResource',
|
|
62
|
+
},
|
|
63
|
+
featureFlags,
|
|
64
|
+
});
|
|
65
|
+
const out = transformer.transform(validSchema);
|
|
66
|
+
expect(out).toBeDefined();
|
|
67
|
+
const postStack = out.stacks.Post;
|
|
68
|
+
const commentStack = out.stacks.Comment;
|
|
69
|
+
|
|
70
|
+
expect(postStack).toMatchSnapshot();
|
|
71
|
+
expect(commentStack).toMatchSnapshot();
|
|
72
|
+
});
|
|
73
|
+
});
|
|
@@ -1187,6 +1187,7 @@ describe('ModelTransformer: ', () => {
|
|
|
1187
1187
|
}`;
|
|
1188
1188
|
|
|
1189
1189
|
const transformer = new GraphQLTransform({
|
|
1190
|
+
transformConfig: {},
|
|
1190
1191
|
resolverConfig: {
|
|
1191
1192
|
project: {
|
|
1192
1193
|
ConflictDetection: 'VERSION',
|
|
@@ -1265,6 +1266,7 @@ describe('ModelTransformer: ', () => {
|
|
|
1265
1266
|
`;
|
|
1266
1267
|
|
|
1267
1268
|
const transformer = new GraphQLTransform({
|
|
1269
|
+
transformConfig: {},
|
|
1268
1270
|
resolverConfig: {
|
|
1269
1271
|
project: {
|
|
1270
1272
|
ConflictDetection: "VERSION",
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
function override(resource, amplifyProjectInfo) {
|
|
2
|
+
resource.api.GraphQLAPI.xrayEnabled = true;
|
|
3
|
+
resource.models['Post'].modelDDBTable.billingMode = 'PROVISIONED';
|
|
4
|
+
resource.models['Comment'].modelDDBTable.billingMode = 'PROVISIONED';
|
|
5
|
+
// override resolver
|
|
6
|
+
resource.models['Post'].resolvers['subscriptionOnUpdatePostResolver'].requestMappingTemplate = 'mockTemplate';
|
|
7
|
+
|
|
8
|
+
if (amplifyProjectInfo.envName != 'testEnvName') {
|
|
9
|
+
throw new Error(`Unexpected envName: ${amplifyProjectInfo.envName}`);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
if (amplifyProjectInfo.projectName != 'testProjectName') {
|
|
13
|
+
throw new Error(`Unexpected envName: ${amplifyProjectInfo.envName}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.override = override;
|