This project exports the Serverless Framework's own testing utilities so you can use them to test your own projects.
yarn add -D @endemolshinegroup/serverless-test-utils
import fs from 'fs';
import path from 'path';
import {
createTestService,
deployService,
removeService,
} from '@endemolshinegroup/serverless-test-utils';
describe('MyServerlessProject', () => {
let serviceName;
beforeAll(() => {
serviceName = createTestService('aws-nodejs', process.cwd());
deployService();
});
it('should have create cloudformation files and functions zip', () => {
const deployedFiles = fs.readdirSync(path.join(process.cwd(), '.serverless'));
expect(deployedFiles[0]).toEqual('cloudformation-template-create-stack.json');
expect(deployedFiles[1]).toEqual('cloudformation-template-update-stack.json');
expect(deployedFiles[2]).toEqual('serverless-state.json');
expect(deployedFiles[3]).toMatch(/test-[0-9]{1,}-[0-9]{1,}.zip/);
});
afterAll(() => {
removeService();
});
});