Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(apigatewayv2-integrations): WebSocketMockIntegration props #30622

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

nmussy
Copy link
Contributor

@nmussy nmussy commented Jun 22, 2024

Issue # (if applicable)

None

Reason for this change

Unlike the other integrations, WebSocketMockIntegration did not have a props interface, and was missing a few properties. This PR does not include integration responses, they are already being implemented in #29661

Description of changes

  • Added requestTemplates and templateSelectionExpression to the newly created WebSocketMockIntegrationProps

Description of how you validated changes

Unit and integration tests were updated

Checklist


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@github-actions github-actions bot added distinguished-contributor [Pilot] contributed 50+ PRs to the CDK p2 labels Jun 22, 2024
@aws-cdk-automation aws-cdk-automation requested a review from a team June 22, 2024 08:19
Comment on lines +12 to +23
/**
* A map of Apache Velocity templates that are applied on the request
* payload.
*
* ```
* { "application/json": "{ \"statusCode\": 200 }" }
* ```
*
* @default - No request template provided to the integration.
* @see https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-mapping-template-reference.html
*/
readonly requestTemplates?: { [contentType: string]: string };
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The pull request linter has failed. See the aws-cdk-automation comment below for failure reasons. If you believe this pull request should receive an exemption, please comment and provide a justification.

A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed add Clarification Request to a comment.

@nmussy
Copy link
Contributor Author

nmussy commented Jun 22, 2024

Exemption Request: WebSocketMockIntegration is currently not mentioned in any README file

@aws-cdk-automation aws-cdk-automation added the pr-linter/exemption-requested The contributor has requested an exemption to the PR Linter feedback. label Jun 22, 2024
@nmussy nmussy force-pushed the feat-apigatewayv2-mock-props branch from 989beee to 24dde44 Compare June 24, 2024 20:18
@aws-cdk-automation aws-cdk-automation added the pr/needs-community-review This PR needs a review from a Trusted Community Member or Core Team Member. label Jun 24, 2024
* A map of Apache Velocity templates that are applied on the request
* payload.
*
* ```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

need @example ?

Copy link
Contributor

@msambol msambol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@aws-cdk-automation aws-cdk-automation added pr/needs-maintainer-review This PR needs a review from a Core Team Member and removed pr/needs-community-review This PR needs a review from a Trusted Community Member or Core Team Member. labels Jun 27, 2024
Copy link
Contributor

@GavinZZ GavinZZ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit comment: Can you update the integ test file name to be more descriptive? something like websocket-mock-integration or anything align the line.

@GavinZZ
Copy link
Contributor

GavinZZ commented Aug 28, 2024

Exemption Request: WebSocketMockIntegration is currently not mentioned in any README file

I don't think this is a good enough reasoning. Some documentation should have been added when this construct is initially added. Would you please add somethiing to the README to explain the usage and what this is for? Appreciate it.

@aws-cdk-automation aws-cdk-automation removed the pr/needs-maintainer-review This PR needs a review from a Core Team Member label Aug 28, 2024
@nmussy
Copy link
Contributor Author

nmussy commented Dec 9, 2024

Sorry for the late reply, catching up on my notifications. I've added a section in the README for mock integrations.

nit comment: Can you update the integ test file name to be more descriptive? something like websocket-mock-integration or anything align the line.

I understand the possible source for confusion here, but the existing integration files for the response types follow the same naming pattern:

$ tree packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2-integrations/test/websocket/ -L 1 -I '*/' --gitignore
packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2-integrations/test/websocket/
├── integ.aws.ts
├── integ.lambda-connect-disconnect-trigger.ts
├── integ.lambda.ts
├── integ.mock.ts
├── integ.route-response.ts
└── integ.sqs.ts

$ tree packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2-integrations/test/http/ -L 1 -I '*/' --gitignore
packages/@aws-cdk-testing/framework-integ/test/aws-apigatewayv2-integrations/test/http/
├── integ.add-subroute-integration.ts
├── integ.alb.ts
├── integ.http-proxy.ts
├── integ.lambda-proxy.ts
├── integ.nlb.ts
├── integ.service-discovery.ts
└── integ.stepfunctions.ts

Let me know how you want to handle this, but only renaming integ.mock.ts would make it look out of place. I also think there is enough context in the relative file path, adding more would be a bit repetitive (aws-apigatewayv2-integrations/test/websocket/integ.mock.ts)

@nmussy nmussy requested a review from GavinZZ December 9, 2024 15:21
@aws-cdk-automation aws-cdk-automation dismissed their stale review December 9, 2024 15:21

✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.

Copy link

codecov bot commented Dec 9, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 78.67%. Comparing base (093c540) to head (e75d6c5).

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #30622   +/-   ##
=======================================
  Coverage   78.67%   78.67%           
=======================================
  Files         107      107           
  Lines        7237     7237           
  Branches     1329     1329           
=======================================
  Hits         5694     5694           
  Misses       1357     1357           
  Partials      186      186           
Flag Coverage Δ
suite.unit 78.67% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
packages/aws-cdk 78.67% <ø> (ø)

@aws-cdk-automation
Copy link
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildv2Project1C6BFA3F-wQm2hXv2jqQv
  • Commit ID: e75d6c5
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
distinguished-contributor [Pilot] contributed 50+ PRs to the CDK p2 pr-linter/exemption-requested The contributor has requested an exemption to the PR Linter feedback.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants