1.1.0 • Published 4 years ago
aws-cdk-assert v1.1.0
IMPORTANT This tool is NOT an official tool made by AWS.
aws-cdk-assert
This tool gives handy utilities to test AWS CDK Stack, with predefined test constructs for certain CDK constructs.
The tool currently contains the following test constructs:
| Service | Construct | CloudFormation Type |
|---|---|---|
| ApiGateway | ApiGatewayRestApi | AWS::ApiGateway::RestApi |
| ApiGateway | ApiGatewayAccount | AWS::ApiGateway::Account |
| ApiGateway | ApiGatewayDeployment | AWS::ApiGateway::Deployment |
| ApiGateway | ApiGatewayStage | AWS::ApiGateway::Stage |
| ApiGateway | ApiGatewayMethod | AWS::ApiGateway::Method |
| ApiGateway | ApiGatewayResource | AWS::ApiGateway::Resource |
| ApiGateway | ApiGatewayDomain | AWS::ApiGateway::DomainName |
| ApiGateway | ApiGatewayBasePathMapping | AWS::ApiGateway::BasePathMapping |
| ApiGateway | ApiGatewayApiKey | AWS::ApiGateway::ApiKey |
| ApiGateway | ApiGatewayUsagePlan | AWS::ApiGateway::UsagePlan |
| ApiGateway | ApiGatewayUsagePlanKey | AWS::ApiGateway::UsagePlanKey |
| CloudFormation | CloudFormationCustomResource | AWS::CloudFormation::CustomResource |
| CloudFront | CloudFrontDistribution | AWS::CloudFront::Distribution |
| CloudFront | CloudFrontFunction | AWS::CloudFront::Function |
| CodeBuild | CodeBuildSourceCredentials | AWS::CodeBuild::SourceCredential |
| CodeBuild | CodeBuildProject | AWS::CodeBuild::Project |
| Custom | CustomResource | Custom::AWS |
| DynamoDB | DynamoDBTable | AWS::DynamoDB::Table |
| IAM | IAMRole | AWS::IAM::Role |
| IAM | IAMPolicy | AWS::IAM::Policy |
| Lambda | LambdaFunction | AWS::Lambda::Function |
| Lambda | LambdaPermission | AWS::Lambda::Permission |
| Logs | LogGroup | AWS::Logs::LogGroup |
| Route53 | Route53HostedZone | AWS::Route53::HostedZone |
| Route53 | Route53RecordSet | AWS::Route53::RecordSet |
| S3 | S3Bucket | AWS::S3::Bucket |
| S3 | S3BucketPolicy | AWS::S3::BucketPolicy |
| SecretsManager | Secret | AWS::SecretsManager::Secret |
| SSM | SSMParameter | AWS::SSM::Parameter |
| WAF v2 | WafV2WebACL | AWS::WAFv2::WebACL |
Need a new construct?
Suggest one in the issues, with an example CloudFormation template or contribute implementing it in this tool.
Usage
// stack.test.ts
import * as cdk from 'aws-cdk-lib';
import * as MyStack from '../lib/mystack.ts';
import { AdvancedTemplate } from 'aws-cdk-assert';
describe('MyStack', () => {
let template: AdvancedTemplate;
beforeAll(() => {
const app = new cdk.App();
const stack = new MyStack.MyStack(app, 'MyStack', {
// props
});
template = AdvancedTemplate.fromStack(stack);
});
test('should have S3 Bucket', () => {
template.s3Bucket().withBucketName('MyBucket').exists();
});
});API
The main components/API the tool relies on:
AdvancedTemplateis a wrapper around Template, decorated with factory methods for the predefined constructs.AdvancedMatcheris similar to Match, but with additional functions.Resource(andRemovableResource) is the base construct to work with CloudFormation constructs. It allows to- construct the matcher properties, which will be used to find a construct in the template,
- check if a construct exists or not,
- check the count of a construct (not just based on type, but fully matching construct),
- make assertions with extended information in case of failure,
- etc.
For detailed documentation see the TypeDocs documentation.
1.1.0
4 years ago
1.0.1-beta.17
4 years ago
1.0.1
4 years ago
1.0.0
4 years ago
1.0.0-beta.16
4 years ago
1.0.0-beta.15
4 years ago
1.0.0-beta.14
4 years ago
1.0.0-beta.12
4 years ago
1.0.0-beta.11
4 years ago
1.0.0-beta.10
4 years ago
1.0.0-beta.9
4 years ago
1.0.0-beta.8
4 years ago
1.0.0-beta.7
4 years ago
1.0.0-beta.6
4 years ago
1.0.0-beta.5
4 years ago
1.0.0-beta.4
4 years ago
1.0.0-beta.3
4 years ago
1.0.0-beta.2
4 years ago
1.0.0-beta.1
4 years ago
0.0.1
4 years ago