diff --git a/packages/schematics/angular/application/index.ts b/packages/schematics/angular/application/index.ts index 3de361632581..24fd2dab1bf4 100644 --- a/packages/schematics/angular/application/index.ts +++ b/packages/schematics/angular/application/index.ts @@ -372,7 +372,7 @@ export default function (options: ApplicationOptions): Rule { }), move(sourceDir), ]), MergeStrategy.Overwrite), - schematic('e2e', e2eOptions), + options.minimal ? noop() : schematic('e2e', e2eOptions), options.skipPackageJson ? noop() : addDependenciesToPackageJson(options), ]); }; diff --git a/packages/schematics/angular/application/index_spec.ts b/packages/schematics/angular/application/index_spec.ts index 5fd2be343ee4..931d9049ab43 100644 --- a/packages/schematics/angular/application/index_spec.ts +++ b/packages/schematics/angular/application/index_spec.ts @@ -136,6 +136,16 @@ describe('Application Schematic', () => { expect(content.rules['component-selector'][2]).toMatch('app'); }); + it('minimal=true should not create e2e project', () => { + const options = { ...defaultOptions, minimal: true }; + + const tree = schematicRunner.runSchematic('application', options, workspaceTree); + const files = tree.files; + expect(files.indexOf('/projects/foo-e2e')).toEqual(-1); + const confContent = JSON.parse(tree.readContent('/angular.json')); + expect(confContent.projects['foo-e2e']).toBeUndefined(); + }); + describe(`update package.json`, () => { it(`should add build-angular to devDependencies`, () => { const tree = schematicRunner.runSchematic('application', defaultOptions, workspaceTree); diff --git a/packages/schematics/angular/ng-new/index.ts b/packages/schematics/angular/ng-new/index.ts index e71a83e5a917..9e7d926ee47e 100644 --- a/packages/schematics/angular/ng-new/index.ts +++ b/packages/schematics/angular/ng-new/index.ts @@ -57,6 +57,7 @@ export default function (options: NgNewOptions): Rule { skipPackageJson: false, // always 'skipInstall' here, so that we do it after the move skipInstall: true, + minimal: options.minimal, }; return chain([ diff --git a/packages/schematics/angular/ng-new/index_spec.ts b/packages/schematics/angular/ng-new/index_spec.ts index 8903428d9bab..efbf6daf6931 100644 --- a/packages/schematics/angular/ng-new/index_spec.ts +++ b/packages/schematics/angular/ng-new/index_spec.ts @@ -65,4 +65,14 @@ describe('Ng New Schematic', () => { expect(files.indexOf('/bar/angular.json')).toBeGreaterThanOrEqual(0); expect(files.indexOf('/bar/src')).toBe(-1); }); + + it('minimal=true should not create e2e project', () => { + const options = { ...defaultOptions, minimal: true }; + + const tree = schematicRunner.runSchematic('ng-new', options); + const files = tree.files; + expect(files.indexOf('/bar/e2e')).toEqual(-1); + const confContent = JSON.parse(tree.readContent('/bar/angular.json')); + expect(confContent.projects['foo-e2e']).toBeUndefined(); + }); });