UNPKG

@yolkai/nx-schematics

Version:

Extensible Dev Tools for Monorepos: Schematics

116 lines (115 loc) 4.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const schematics_1 = require("@angular-devkit/schematics"); const testing_1 = require("@angular-devkit/schematics/testing"); const nx_workspace_1 = require("@yolkai/nx-workspace"); const path = require("path"); describe('Update 6.2.0', () => { let initialTree; let schematicRunner; beforeEach(() => { initialTree = schematics_1.Tree.empty(); initialTree.create('package.json', nx_workspace_1.serializeJson({ dependencies: { '@angular/animations': '6.0.1', '@angular/common': '6.0.1', '@angular/compiler': '6.0.1', '@angular/core': '6.0.1', '@angular/forms': '6.0.1', '@angular/platform-browser': '6.0.1', '@angular/platform-browser-dynamic': '6.0.1', '@angular/router': '6.0.1', 'core-js': '^2.5.4', rxjs: '6.0.0', 'zone.js': '^0.8.26', '@yolkai/nx': '6.1.0', '@ngrx/effects': '5.2.0', '@ngrx/router-store': '5.2.0', '@ngrx/store': '5.2.0', '@ngrx/store-devtools': '5.2.0', 'ngrx-store-freeze': '0.2.2' }, devDependencies: { '@angular/cli': '6.0.1', '@angular/compiler-cli': '6.0.1', '@angular/language-service': '6.0.1', '@angular-devkit/build-angular': '~0.6.1', '@ngrx/schematics': '5.2.0', '@yolkai/nx-schematics': '6.1.0', 'jasmine-marbles': '0.3.1', '@types/jasmine': '~2.8.6', '@types/jasminewd2': '~2.0.3', '@types/node': '~8.9.4', codelyzer: '~4.2.1', 'jasmine-core': '~2.99.1', 'jasmine-spec-reporter': '~4.2.1', karma: '~2.0.0', 'karma-chrome-launcher': '~2.2.0', 'karma-coverage-istanbul-reporter': '~1.4.2', 'karma-jasmine': '~1.1.0', 'karma-jasmine-html-reporter': '^0.2.2', protractor: '~5.3.0', 'ts-node': '~5.0.1', tslint: '~5.9.1', typescript: '2.7.2', prettier: '1.10.2' } })); schematicRunner = new testing_1.SchematicTestRunner('@yolkai/nx-schematics', path.join(__dirname, '../migrations.json')); }); it('should create a karma.conf.js', () => { const result = schematicRunner.runSchematic('update-6.2.0', {}, initialTree); expect(result.files).toContain('/karma.conf.js'); }); it('should update dependencies', () => { const result = schematicRunner.runSchematic('update-6.2.0', {}, initialTree); expect(JSON.parse(result.readContent('package.json'))).toEqual({ scripts: { 'affected:libs': './node_modules/.bin/nx affected:libs' }, dependencies: { '@angular/animations': '^6.1.0', '@angular/common': '^6.1.0', '@angular/compiler': '^6.1.0', '@angular/core': '^6.1.0', '@angular/forms': '^6.1.0', '@angular/platform-browser': '^6.1.0', '@angular/platform-browser-dynamic': '^6.1.0', '@angular/router': '^6.1.0', 'core-js': '^2.5.4', rxjs: '6.2.2', 'zone.js': '^0.8.26', '@yolkai/nx': '6.1.0', '@ngrx/effects': '6.0.1', '@ngrx/store': '6.0.1', '@ngrx/router-store': '6.0.1' }, devDependencies: { '@angular/cli': '6.1.2', '@angular/compiler-cli': '^6.1.0', '@angular/language-service': '^6.1.0', '@angular-devkit/build-angular': '~0.7.0', '@ngrx/store-devtools': '6.0.1', '@yolkai/nx-schematics': '6.1.0', 'jasmine-marbles': '0.3.1', '@types/jasmine': '~2.8.6', '@types/jasminewd2': '~2.0.3', '@types/node': '~8.9.4', codelyzer: '~4.2.1', 'jasmine-core': '~2.99.1', 'jasmine-spec-reporter': '~4.2.1', karma: '~2.0.0', 'karma-chrome-launcher': '~2.2.0', 'karma-coverage-istanbul-reporter': '~1.4.2', 'karma-jasmine': '~1.1.0', 'karma-jasmine-html-reporter': '^0.2.2', 'ngrx-store-freeze': '0.2.4', protractor: '~5.3.0', 'ts-node': '~5.0.1', tslint: '~5.9.1', typescript: '~2.7.2', prettier: '1.10.2' } }); }); });