CDK NodejsFunction Mock
The CDK NodejsFunction construct uses
Parcel and Docker to conveniently bundle up your lambda modules. However this is a slow and processor-intensive
operation, which results in very slow testing with e.g. Jest.
This module mocks out NodeJsFunctions by replacing them with a standard CDK Lambda Function for the purpose of testing
only.
Use with Jest
Globally
We recommend using this module globally, by editing your jest config (e.g. in package.json):
{
"moduleNameMapper": {
"@aws-cdk/aws-lambda-nodejs": "cdk-lambda-nodejs-mock"
}
}
A Specific Test File Only
You can use in a specific test file only, rather than globally, as follows:
import NodejsLambdaMock from 'cdk-lambda-nodejs-mock';
jest.mock('@aws-cdk/aws-lambda-nodejs', () => NodejsLambdaMock);
CDK Versions
The module uses peerDependencies rather than dependencies, so that it uses exactly the same CDK version as in your
project. This means that you don't need to do anything to make it work with whichever cdk version you are using.
Checklist
CD Feature | Provided |
---|
✅ | Typescript |
✅ | Linting (AirBnB + Prettier) |
✅ | Unit tests (Jest) |
✅ | Coverage check (ideally 100% with Jest) |
✅ | Github Continuous Deployment |
Built by Skyhook
This module is contributed by the team at Skyhook.