From a668a6e2b278991c09a7f41b1db51cdb4abd38a8 Mon Sep 17 00:00:00 2001 From: Marcelo Boveto Shima Date: Fri, 14 Aug 2020 12:11:05 -0300 Subject: [PATCH 01/30] Refactor cypress tests. --- generators/client/index.js | 12 ++- test/app/prompts.js | 52 +++++++++++ test/client/composing.js | 125 ++++++++++++++++++++++++++ test/cypress.spec.js | 177 +++++++++---------------------------- 4 files changed, 226 insertions(+), 140 deletions(-) create mode 100644 test/app/prompts.js create mode 100644 test/client/composing.js diff --git a/generators/client/index.js b/generators/client/index.js index e291d3b6ac1b..2c99b25512ec 100644 --- a/generators/client/index.js +++ b/generators/client/index.js @@ -153,14 +153,12 @@ module.exports = class extends BaseBlueprintGenerator { this.loadServerConfig(); this.loadTranslationConfig(); }, + composeCommon() { + this.composeWithJHipster('common', true); + }, composeCypress() { - if (this.configOptions.skipComposeCypress || !this.cypressTests) return; - this.configOptions.skipComposeCypress = true; - this.composeWith(require.resolve('../cypress'), { - ...this.options, - configOptions: this.configOptions, - debug: this.isDebugEnabled, - }); + if (!this.cypressTests) return; + this.composeWithJHipster('cypress', true); }, composeLanguages() { // We don't expose client/server to cli, composing with languages is used for test purposes. diff --git a/test/app/prompts.js b/test/app/prompts.js new file mode 100644 index 000000000000..93165f8839e1 --- /dev/null +++ b/test/app/prompts.js @@ -0,0 +1,52 @@ +const assert = require('yeoman-assert'); +const helpers = require('yeoman-test'); +const { SUPPORTED_CLIENT_FRAMEWORKS } = require('../../generators/generator-constants'); + +const ANGULAR = SUPPORTED_CLIENT_FRAMEWORKS.ANGULAR; + +const mockedComposedGenerators = ['jhipster:common', 'jhipster:server', 'jhipster:client', 'jhipster:languages', 'jhipster:entity']; + +describe('jhipster:app prompts', () => { + describe('testFrameworks prompt', () => { + describe('with cypress value', () => { + let runResult; + before(() => { + return helpers + .create(require.resolve('../../generators/app')) + .withOptions({ + fromCli: true, + skipInstall: true, + skipChecks: true, + }) + .withPrompts({ + baseName: 'sampleMysql', + packageName: 'com.mycompany.myapp', + applicationType: 'monolith', + databaseType: 'sql', + devDatabaseType: 'h2Disk', + prodDatabaseType: 'mysql', + cacheProvider: 'ehcache', + authenticationType: 'jwt', + enableTranslation: true, + nativeLanguage: 'en', + languages: ['en', 'fr'], + testFrameworks: ['cypress'], + buildTool: 'maven', + clientFramework: ANGULAR, + clientTheme: 'none', + }) + .withMockedGenerators(mockedComposedGenerators) + .run() + .then(result => { + runResult = result; + }); + }); + + after(() => runResult.cleanup()); + + it('contains testFrameworks with cypress value', () => { + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': { testFrameworks: ['cypress'] } }); + }); + }); + }); +}); diff --git a/test/client/composing.js b/test/client/composing.js new file mode 100644 index 000000000000..eb57cbd95545 --- /dev/null +++ b/test/client/composing.js @@ -0,0 +1,125 @@ +const assert = require('assert'); +const helpers = require('yeoman-test'); +const { appDefaultConfig } = require('../../generators/generator-defaults'); + +const mockedComposedGenerators = ['jhipster:common', 'jhipster:client', 'jhipster:languages', 'jhipster:cypress']; + +describe('jhipster:client composing', () => { + describe('with translation disabled', () => { + let runResult; + let options = { enableTranslation: false }; + before(() => { + return helpers + .create(require.resolve('../../generators/client')) + .withOptions({ + fromCli: true, + skipInstall: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, + }) + .withMockedGenerators(mockedComposedGenerators) + .run() + .then(result => { + runResult = result; + }); + }); + + after(() => runResult.cleanup()); + + it('should compose with jhipster:common', () => { + assert(runResult.mockedGenerators['jhipster:common'].calledOnce); + }); + it('should not compose with jhipster:languages', () => { + assert.equal(runResult.mockedGenerators['jhipster:languages'].callCount, 0); + }); + }); + + describe('with translation enabled', () => { + let runResult; + let options = { enableTranslation: true }; + before(() => { + return helpers + .create(require.resolve('../../generators/client')) + .withOptions({ + fromCli: true, + skipInstall: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, + }) + .withMockedGenerators(mockedComposedGenerators) + .run() + .then(result => { + runResult = result; + }); + }); + + after(() => runResult.cleanup()); + + it('should compose with jhipster:common', () => { + assert(runResult.mockedGenerators['jhipster:common'].calledOnce); + }); + it('should compose with jhipster:languages', () => { + assert.equal(runResult.mockedGenerators['jhipster:languages'].callCount, 1); + }); + }); + + describe('without cypress', () => { + let runResult; + let options = { testFrameworks: [] }; + before(() => { + return helpers + .create(require.resolve('../../generators/client')) + .withOptions({ + fromCli: true, + skipInstall: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, + }) + .withMockedGenerators(mockedComposedGenerators) + .run() + .then(result => { + runResult = result; + }); + }); + + after(() => runResult.cleanup()); + + it('should compose with jhipster:common', () => { + assert(runResult.mockedGenerators['jhipster:common'].calledOnce); + }); + it('should compose with jhipster:languages', () => { + assert(runResult.mockedGenerators['jhipster:languages'].calledOnce); + }); + it('should not compose with jhipster:cypress', () => { + assert.equal(runResult.mockedGenerators['jhipster:cypress'].callCount, 0); + }); + }); + + describe('with cypress', () => { + let runResult; + let options = { testFrameworks: ['cypress'] }; + before(() => { + return helpers + .create(require.resolve('../../generators/client')) + .withOptions({ + fromCli: true, + skipInstall: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, + }) + .withMockedGenerators(mockedComposedGenerators) + .run() + .then(result => { + runResult = result; + }); + }); + + after(() => runResult.cleanup()); + + it('should compose with jhipster:common', () => { + assert(runResult.mockedGenerators['jhipster:common'].calledOnce); + }); + it('should compose with jhipster:languages', () => { + assert(runResult.mockedGenerators['jhipster:languages'].calledOnce); + }); + it('should compose with jhipster:cypress', () => { + assert(runResult.mockedGenerators['jhipster:cypress'].calledOnce); + }); + }); +}); diff --git a/test/cypress.spec.js b/test/cypress.spec.js index 6c0bc3a17240..475626e05780 100644 --- a/test/cypress.spec.js +++ b/test/cypress.spec.js @@ -3,43 +3,29 @@ const assert = require('yeoman-assert'); const helpers = require('yeoman-test'); const expectedFiles = require('./utils/expected-files'); const constants = require('../generators/generator-constants'); +const { appDefaultConfig } = require('../generators/generator-defaults'); const ANGULAR = constants.SUPPORTED_CLIENT_FRAMEWORKS.ANGULAR; const REACT = constants.SUPPORTED_CLIENT_FRAMEWORKS.REACT; const VUE = constants.SUPPORTED_CLIENT_FRAMEWORKS.VUE; -describe('JHipster client generator', () => { +describe('jhipster:cypress', () => { describe('generate cypress with React client with JWT', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: REACT, authenticationType: 'jwt' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'jwt', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: REACT, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for React configuration for cypress generator', () => { @@ -50,36 +36,21 @@ describe('JHipster client generator', () => { }); describe('generate cypress with React client with OAuth2', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: REACT, authenticationType: 'oauth2' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'oauth2', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: REACT, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for React configuration for cypress generator', () => { @@ -89,36 +60,21 @@ describe('JHipster client generator', () => { }); describe('generate cypress with Angular client with JWT', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: ANGULAR, authenticationType: 'jwt' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'jwt', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: ANGULAR, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for Angular configuration for cypress generator', () => { @@ -129,36 +85,21 @@ describe('JHipster client generator', () => { }); describe('generate cypress with Angular client with OAuth2', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: ANGULAR, authenticationType: 'oauth2' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'oauth2', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: ANGULAR, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for Angular configuration for cypress generator', () => { @@ -168,36 +109,21 @@ describe('JHipster client generator', () => { }); describe('generate cypress with Vue client with JWT', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: VUE, authenticationType: 'jwt' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'jwt', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: VUE, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for Vue configuration for cypress generator', () => { @@ -208,36 +134,21 @@ describe('JHipster client generator', () => { }); describe('generate cypress with Vue client with OAuth2', () => { - before(done => { - helpers - .run(path.join(__dirname, '../generators/app')) + const options = { testFrameworks: ['cypress'], clientFramework: VUE, authenticationType: 'oauth2' }; + before(() => { + return helpers + .create(path.join(__dirname, '../generators/cypress')) .withOptions({ fromCli: true, skipInstall: true, skipChecks: true, + defaultLocalConfig: { ...appDefaultConfig, ...options }, }) - .withPrompts({ - baseName: 'sampleMysql', - packageName: 'com.mycompany.myapp', - applicationType: 'monolith', - databaseType: 'sql', - devDatabaseType: 'h2Disk', - prodDatabaseType: 'mysql', - cacheProvider: 'ehcache', - authenticationType: 'oauth2', - enableTranslation: true, - nativeLanguage: 'en', - languages: ['en', 'fr'], - testFrameworks: ['cypress'], - buildTool: 'maven', - clientFramework: VUE, - clientTheme: 'none', - }) - .on('end', done); + .run(); }); it('contains testFrameworks with cypress value', () => { - assert.fileContent('.yo-rc.json', /"testFrameworks": \["cypress"\]/); + assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': options }); }); it('creates expected files for Vue configuration for cypress generator', () => { From 99d943c0d1c38c58ebc203a65583fb2e67158e81 Mon Sep 17 00:00:00 2001 From: Marcelo Boveto Shima Date: Fri, 14 Aug 2020 12:27:04 -0300 Subject: [PATCH 02/30] Lint fix --- test/app/prompts.js | 2 +- test/client/composing.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/app/prompts.js b/test/app/prompts.js index 93165f8839e1..d930ad5f9cbf 100644 --- a/test/app/prompts.js +++ b/test/app/prompts.js @@ -44,7 +44,7 @@ describe('jhipster:app prompts', () => { after(() => runResult.cleanup()); - it('contains testFrameworks with cypress value', () => { + it('should write testFrameworks with cypress value to .yo-rc.json', () => { assert.jsonFileContent('.yo-rc.json', { 'generator-jhipster': { testFrameworks: ['cypress'] } }); }); }); diff --git a/test/client/composing.js b/test/client/composing.js index eb57cbd95545..7fd81b01db0a 100644 --- a/test/client/composing.js +++ b/test/client/composing.js @@ -7,7 +7,7 @@ const mockedComposedGenerators = ['jhipster:common', 'jhipster:client', 'jhipste describe('jhipster:client composing', () => { describe('with translation disabled', () => { let runResult; - let options = { enableTranslation: false }; + const options = { enableTranslation: false }; before(() => { return helpers .create(require.resolve('../../generators/client')) @@ -35,7 +35,7 @@ describe('jhipster:client composing', () => { describe('with translation enabled', () => { let runResult; - let options = { enableTranslation: true }; + const options = { enableTranslation: true }; before(() => { return helpers .create(require.resolve('../../generators/client')) @@ -63,7 +63,7 @@ describe('jhipster:client composing', () => { describe('without cypress', () => { let runResult; - let options = { testFrameworks: [] }; + const options = { testFrameworks: [] }; before(() => { return helpers .create(require.resolve('../../generators/client')) @@ -94,7 +94,7 @@ describe('jhipster:client composing', () => { describe('with cypress', () => { let runResult; - let options = { testFrameworks: ['cypress'] }; + const options = { testFrameworks: ['cypress'] }; before(() => { return helpers .create(require.resolve('../../generators/client')) From dd7511a8551ab640d317d7e7d812b58eb5e49b93 Mon Sep 17 00:00:00 2001 From: Marcelo Boveto Shima Date: Fri, 14 Aug 2020 14:12:24 -0300 Subject: [PATCH 03/30] Client generator should compose with common. --- test/client.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/client.spec.js b/test/client.spec.js index 87ce95023836..9a9ceecaecac 100644 --- a/test/client.spec.js +++ b/test/client.spec.js @@ -60,9 +60,9 @@ describe('JHipster client generator', () => { }); it('creates expected files for default configuration for client generator', () => { - assert.noFile(expectedFiles.common); assert.noFile(expectedFiles.server); assert.noFile(expectedFiles.maven); + assert.file(expectedFiles.common); assert.file(expectedFiles.i18nJson); assert.file(expectedFiles.clientCommon); assert.file( From 0ad6e926a126463e09586a2bc45dd1d4ee88376c Mon Sep 17 00:00:00 2001 From: nassimerrahoui Date: Mon, 17 Aug 2020 10:14:14 +0200 Subject: [PATCH 04/30] Add oauth2 condition to commands file --- .../cypress/support/commands.ts.ejs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs b/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs index c336fa1e5b48..7ceab8412883 100644 --- a/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs +++ b/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs @@ -27,6 +27,7 @@ export const passwordItemSelector = '[data-cy="passwordItem"]'; export const loginItemSelector = '[data-cy="login"]'; export const logoutItemSelector = '[data-cy="logout"]'; +<%_ if (authenticationType !== 'oauth2') { _%> // Login export const titleLoginSelector = '[data-cy="loginTitle"]'; export const errorLoginSelector = '[data-cy="loginError"]'; @@ -43,13 +44,6 @@ export const firstPasswordRegisterSelector = '[data-cy="firstPassword"]'; export const secondPasswordRegisterSelector = '[data-cy="secondPassword"]'; export const submitRegisterSelector = '[data-cy="submit"]'; -// Administration -export const userManagementPageHeadingSelector = '[data-cy="userManagementPageHeading"]'; -export const metricsPageHeadingSelector = '[data-cy="metricsPageHeading"]'; -export const healthPageHeadingSelector = '[data-cy="healthPageHeading"]'; -export const logsPageHeadingSelector = '[data-cy="logsPageHeading"]'; -export const configurationPageHeadingSelector = '[data-cy="configurationPageHeading"]'; - // Settings export const firstNameSettingsSelector = '[data-cy="firstname"]'; export const lastNameSettingsSelector = '[data-cy="lastname"]'; @@ -66,6 +60,14 @@ export const submitPasswordSelector = '[data-cy="submit"]'; // Reset Password export const emailResetPasswordSelector = '[data-cy="emailResetPassword"]'; export const submitInitResetPasswordSelector = '[data-cy="submit"]'; +<%_ } _%> + +// Administration +export const userManagementPageHeadingSelector = '[data-cy="userManagementPageHeading"]'; +export const metricsPageHeadingSelector = '[data-cy="metricsPageHeading"]'; +export const healthPageHeadingSelector = '[data-cy="healthPageHeading"]'; +export const logsPageHeadingSelector = '[data-cy="logsPageHeading"]'; +export const configurationPageHeadingSelector = '[data-cy="configurationPageHeading"]'; // *********************************************** // End Specific Selector Attributes for Cypress @@ -79,7 +81,7 @@ export const classValid = <%_ if (clientFramework === 'angularX') { _%>'ng-valid <%_ } else if (clientFramework === 'react') { _%>'av-valid'; <%_ } else { _%>'valid';<%_ } _%> - +<%_ if (authenticationType !== 'oauth2') { _%> Cypress.Commands.add('login', (username: string, password: string) => { cy.clickOnLoginItem(); cy.get(usernameLoginSelector).type(username); @@ -94,6 +96,7 @@ declare global { } } } +<%_ } _%> // Convert this to a module instead of script (allows import/export) export {}; From 983c72f20d6755347061ba0ee75cd3d3edf2964a Mon Sep 17 00:00:00 2001 From: nassimerrahoui Date: Mon, 17 Aug 2020 10:17:03 +0200 Subject: [PATCH 05/30] fix indent --- generators/client/templates/angular/package.json.ejs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generators/client/templates/angular/package.json.ejs b/generators/client/templates/angular/package.json.ejs index cc8cdd972f77..65eaf5f5c646 100644 --- a/generators/client/templates/angular/package.json.ejs +++ b/generators/client/templates/angular/package.json.ejs @@ -145,7 +145,7 @@ "ts-node": "8.10.2", <%_ } _%> <%_ if (cypressTests) { _%> - "cypress": "4.12.1", + "cypress": "4.12.1", <%_ } _%> "tslint": "6.1.2", "typescript": "3.9.5", From 001881e3c4b49c6d8345f9166bbe040565d7541a Mon Sep 17 00:00:00 2001 From: nassimerrahoui Date: Tue, 18 Aug 2020 15:48:37 +0200 Subject: [PATCH 06/30] Add tests for entity-client part Co-authored-by: Adil Abed --- .../layouts/navbar/navbar.component.html.ejs | 2 +- .../app/shared/layout/menus/entities.tsx.ejs | 2 +- .../app/core/jhi-navbar/jhi-navbar.vue.ejs | 3 +- .../cypress/support/commands.ts.ejs | 1 + .../javascript/cypress/support/navbar.ts.ejs | 6 + generators/entity-client/files.js | 24 ++++ ...ntity-management-detail.component.html.ejs | 5 +- ...ntity-management-update.component.html.ejs | 4 +- .../entity-management.component.html.ejs | 14 ++- .../webapp/app/entities/entity-detail.tsx.ejs | 4 +- .../webapp/app/entities/entity-update.tsx.ejs | 4 +- .../main/webapp/app/entities/entity.tsx.ejs | 14 +-- .../integration/entity/entity.spec.ts.ejs | 114 ++++++++++++++++++ .../javascript/cypress/support/entity.ts.ejs | 46 +++++++ .../javascript/cypress/support/index.ts.ejs | 22 ++++ .../app/entities/entity-details.vue.ejs | 5 +- .../webapp/app/entities/entity-update.vue.ejs | 4 +- .../main/webapp/app/entities/entity.vue.ejs | 12 +- 18 files changed, 252 insertions(+), 34 deletions(-) create mode 100644 generators/entity-client/templates/src/test/javascript/cypress/integration/entity/entity.spec.ts.ejs create mode 100644 generators/entity-client/templates/src/test/javascript/cypress/support/entity.ts.ejs create mode 100644 generators/entity-client/templates/src/test/javascript/cypress/support/index.ts.ejs diff --git a/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs b/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs index 48c31211070c..997a9c5c158c 100644 --- a/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +++ b/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs @@ -36,7 +36,7 @@