@aws-cdk-testing/cli-integ
Version:
Integration tests for the AWS CDK CLI
22 lines • 4.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs/promises");
const path = require("path");
const lib_1 = require("../../lib");
// Sometimes, due to our own use of bundled dependencies, NPM will fail if a customer declares
// aws-cdk-lib as a bundled dependency. Test whether that still works.
(0, lib_1.integTest)('using aws-cdk-lib as a bundled dependency', (0, lib_1.withTemporaryDirectory)((0, lib_1.withPackages)(async (context) => {
const shell = lib_1.ShellHelper.fromContext(context);
await context.cli.makeCliAvailable();
await shell.shell(['npm', 'init', '-y']);
const packageJsonPath = path.join(context.integTestDir, 'package.json');
const packageJson = JSON.parse(await fs.readFile(packageJsonPath, 'utf-8'));
packageJson.dependencies = {
...packageJson.dependencies,
'aws-cdk-lib': context.library.requestedVersion(),
};
packageJson.bundleDependencies = ['aws-cdk-lib'];
await fs.writeFile(packageJsonPath, JSON.stringify(packageJson, undefined, 2), 'utf-8');
await shell.shell(['npm', 'install']);
})));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWxpYi1hcy1idW5kbGVkLWRlcGVuZGVuY3kuaW50ZWd0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidXNlLWxpYi1hcy1idW5kbGVkLWRlcGVuZGVuY3kuaW50ZWd0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsa0NBQWtDO0FBQ2xDLDZCQUE2QjtBQUM3QixtQ0FBeUY7QUFFekYsOEZBQThGO0FBQzlGLHNFQUFzRTtBQUN0RSxJQUFBLGVBQVMsRUFBQywyQ0FBMkMsRUFBRSxJQUFBLDRCQUFzQixFQUFDLElBQUEsa0JBQVksRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDM0csTUFBTSxLQUFLLEdBQUcsaUJBQVcsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0MsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFFckMsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN4RSxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUU1RSxXQUFXLENBQUMsWUFBWSxHQUFHO1FBQ3pCLEdBQUcsV0FBVyxDQUFDLFlBQVk7UUFDM0IsYUFBYSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7S0FDbEQsQ0FBQztJQUNGLFdBQVcsQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRWpELE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRXhGLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQ3hDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzL3Byb21pc2VzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBpbnRlZ1Rlc3QsIHdpdGhUZW1wb3JhcnlEaXJlY3RvcnksIFNoZWxsSGVscGVyLCB3aXRoUGFja2FnZXMgfSBmcm9tICcuLi8uLi9saWInO1xuXG4vLyBTb21ldGltZXMsIGR1ZSB0byBvdXIgb3duIHVzZSBvZiBidW5kbGVkIGRlcGVuZGVuY2llcywgTlBNIHdpbGwgZmFpbCBpZiBhIGN1c3RvbWVyIGRlY2xhcmVzXG4vLyBhd3MtY2RrLWxpYiBhcyBhIGJ1bmRsZWQgZGVwZW5kZW5jeS4gVGVzdCB3aGV0aGVyIHRoYXQgc3RpbGwgd29ya3MuXG5pbnRlZ1Rlc3QoJ3VzaW5nIGF3cy1jZGstbGliIGFzIGEgYnVuZGxlZCBkZXBlbmRlbmN5Jywgd2l0aFRlbXBvcmFyeURpcmVjdG9yeSh3aXRoUGFja2FnZXMoYXN5bmMgKGNvbnRleHQpID0+IHtcbiAgY29uc3Qgc2hlbGwgPSBTaGVsbEhlbHBlci5mcm9tQ29udGV4dChjb250ZXh0KTtcbiAgYXdhaXQgY29udGV4dC5jbGkubWFrZUNsaUF2YWlsYWJsZSgpO1xuXG4gIGF3YWl0IHNoZWxsLnNoZWxsKFsnbnBtJywgJ2luaXQnLCAnLXknXSk7XG5cbiAgY29uc3QgcGFja2FnZUpzb25QYXRoID0gcGF0aC5qb2luKGNvbnRleHQuaW50ZWdUZXN0RGlyLCAncGFja2FnZS5qc29uJyk7XG4gIGNvbnN0IHBhY2thZ2VKc29uID0gSlNPTi5wYXJzZShhd2FpdCBmcy5yZWFkRmlsZShwYWNrYWdlSnNvblBhdGgsICd1dGYtOCcpKTtcblxuICBwYWNrYWdlSnNvbi5kZXBlbmRlbmNpZXMgPSB7XG4gICAgLi4ucGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLFxuICAgICdhd3MtY2RrLWxpYic6IGNvbnRleHQubGlicmFyeS5yZXF1ZXN0ZWRWZXJzaW9uKCksXG4gIH07XG4gIHBhY2thZ2VKc29uLmJ1bmRsZURlcGVuZGVuY2llcyA9IFsnYXdzLWNkay1saWInXTtcblxuICBhd2FpdCBmcy53cml0ZUZpbGUocGFja2FnZUpzb25QYXRoLCBKU09OLnN0cmluZ2lmeShwYWNrYWdlSnNvbiwgdW5kZWZpbmVkLCAyKSwgJ3V0Zi04Jyk7XG5cbiAgYXdhaXQgc2hlbGwuc2hlbGwoWyducG0nLCAnaW5zdGFsbCddKTtcbn0pKSk7XG4iXX0=