UNPKG

@nrwl/jest

Version:

The Nx Plugin for Jest contains executors and generators allowing your workspace to use the powerful Jest testing capabilities.

56 lines 2.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.jestProjectSchematic = exports.jestProjectGenerator = void 0; const tslib_1 = require("tslib"); const init_1 = require("../init/init"); const check_for_test_target_1 = require("./lib/check-for-test-target"); const create_files_1 = require("./lib/create-files"); const update_tsconfig_1 = require("./lib/update-tsconfig"); const update_workspace_1 = require("./lib/update-workspace"); const devkit_1 = require("@nrwl/devkit"); const schemaDefaults = { setupFile: 'none', babelJest: false, supportTsx: false, skipSetupFile: false, skipSerializers: false, rootProject: false, testEnvironment: 'jsdom', }; function normalizeOptions(options) { if (!options.testEnvironment) { options.testEnvironment = 'jsdom'; } if (!options.hasOwnProperty('supportTsx')) { options.supportTsx = false; } // if we support TSX or compiler is not tsc, then we don't support angular(html templates) if (options.supportTsx || options.babelJest || ['swc', 'babel'].includes(options.compiler)) { options.skipSerializers = true; } if (!options.skipSetupFile) { return options; } // setupFile is always 'none' options.setupFile = schemaDefaults.setupFile; return Object.assign(Object.assign({}, schemaDefaults), options); } function jestProjectGenerator(tree, schema) { return tslib_1.__awaiter(this, void 0, void 0, function* () { const options = normalizeOptions(schema); const installTask = yield (0, init_1.default)(tree, options); (0, check_for_test_target_1.checkForTestTarget)(tree, options); (0, create_files_1.createFiles)(tree, options); (0, update_tsconfig_1.updateTsConfig)(tree, options); (0, update_workspace_1.updateWorkspace)(tree, options); if (!schema.skipFormat) { yield (0, devkit_1.formatFiles)(tree); } return installTask; }); } exports.jestProjectGenerator = jestProjectGenerator; exports.jestProjectSchematic = (0, devkit_1.convertNxGenerator)(jestProjectGenerator); //# sourceMappingURL=jest-project.js.map