From 14cee74ae24bda98f7bdc93c23e3950e4e4eb207 Mon Sep 17 00:00:00 2001 From: Carlos Jimenez Ruiz Date: Wed, 12 Feb 2020 07:21:53 +0100 Subject: [PATCH] #2024 e2e travel.thermograph + refactors --- e2e/dms/ecc/3.jpeg | Bin 0 -> 13518 bytes e2e/helpers/extensions.js | 16 ++++-- e2e/helpers/selectors.js | 7 +++ .../01_create_client.spec.js | 2 - .../02_edit_basic_data.spec.js | 6 +- .../03_edit_fiscal_data.spec.js | 2 +- .../04_edit_billing_data.spec.js | 0 .../05_add_address.spec.js | 0 .../06_add_address_notes.spec.js | 0 .../07_edit_web_access.spec.js | 0 .../08_add_notes.spec.js | 0 .../09_add_credit.spec.js | 2 - .../10_add_greuge.spec.js | 0 .../11_mandate.spec.js | 0 .../12_lock_of_verified_data.spec.js | 0 .../13_log.spec.js | 0 .../14_balance.spec.js | 2 - .../15_user_config.spec.js | 2 +- .../16_web_payment.spec.js | 0 .../17_dms.spec.js | 0 .../18_contacts.spec.js | 0 .../01_basicData.spec.js | 0 .../02_time_control.spec.js | 0 .../03_pbx.spec.js | 0 .../01_summary.spec.js | 0 .../02_basic_data.spec.js | 1 - .../03_tax.spec.js | 0 .../04_tags.spec.js | 0 .../05_niche.spec.js | 0 .../06_botanical.spec.js | 0 .../07_barcode.spec.js | 0 .../08_create_and_clone.spec.js | 1 - .../09_regularize.spec.js | 1 - .../10_item_index.spec.js | 0 .../11_item_log.spec.js | 0 .../12_descriptor.spec.js | 0 .../01-sale/01_list_sales.spec.js | 0 .../01-sale/02_edit_sale.spec.js | 0 .../01_observations.spec.js | 2 +- .../02_expeditions_and_log.spec.js | 0 .../04_packages.spec.js | 0 .../05_tracking_state.spec.js | 0 .../06_basic_data_steps.spec.js | 0 .../08_components.spec.js | 0 .../09_weekly.spec.js | 3 - .../10_request.spec.js | 0 .../11_diary.spec.js | 0 .../12_descriptor.spec.js | 2 - .../13_services.spec.js | 3 +- .../14_create_ticket.spec.js | 0 .../15_create_ticket_from_client.spec.js | 1 - .../16_summary.spec.js | 0 .../01_basic_data.spec.js | 0 .../02_development.spec.js | 2 +- .../03_detail.spec.js | 0 .../04_claim_action.spec.js | 0 .../05_summary.spec.js | 0 .../06_descriptor.spec.js | 1 - .../01_edit_basic_data.spec.js | 4 +- .../02_catalog.spec.js | 2 - .../03_lines.spec.js | 0 .../01_create.spec.js | 0 .../02_basic_data.spec.js | 2 +- .../03_tickets.spec.js | 0 .../01_summary.spec.js | 1 - .../02_descriptor.spec.js | 2 - e2e/paths/10-travel/01_thermograph.spec.js | 52 ++++++++++++++++++ gulpfile.js | 3 +- 68 files changed, 83 insertions(+), 39 deletions(-) create mode 100644 e2e/dms/ecc/3.jpeg rename e2e/paths/{02-client-module => 02-client}/01_create_client.spec.js (98%) rename e2e/paths/{02-client-module => 02-client}/02_edit_basic_data.spec.js (97%) rename e2e/paths/{02-client-module => 02-client}/03_edit_fiscal_data.spec.js (99%) rename e2e/paths/{02-client-module => 02-client}/04_edit_billing_data.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/05_add_address.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/06_add_address_notes.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/07_edit_web_access.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/08_add_notes.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/09_add_credit.spec.js (94%) rename e2e/paths/{02-client-module => 02-client}/10_add_greuge.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/11_mandate.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/12_lock_of_verified_data.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/13_log.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/14_balance.spec.js (98%) rename e2e/paths/{02-client-module => 02-client}/15_user_config.spec.js (99%) rename e2e/paths/{02-client-module => 02-client}/16_web_payment.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/17_dms.spec.js (100%) rename e2e/paths/{02-client-module => 02-client}/18_contacts.spec.js (100%) rename e2e/paths/{03-worker-module => 03-worker}/01_basicData.spec.js (100%) rename e2e/paths/{03-worker-module => 03-worker}/02_time_control.spec.js (100%) rename e2e/paths/{03-worker-module => 03-worker}/03_pbx.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/01_summary.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/02_basic_data.spec.js (98%) rename e2e/paths/{04-item-module => 04-item}/03_tax.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/04_tags.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/05_niche.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/06_botanical.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/07_barcode.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/08_create_and_clone.spec.js (99%) rename e2e/paths/{04-item-module => 04-item}/09_regularize.spec.js (99%) rename e2e/paths/{04-item-module => 04-item}/10_item_index.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/11_item_log.spec.js (100%) rename e2e/paths/{04-item-module => 04-item}/12_descriptor.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/01-sale/01_list_sales.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/01-sale/02_edit_sale.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/01_observations.spec.js (99%) rename e2e/paths/{05-ticket-module => 05-ticket}/02_expeditions_and_log.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/04_packages.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/05_tracking_state.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/06_basic_data_steps.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/08_components.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/09_weekly.spec.js (97%) rename e2e/paths/{05-ticket-module => 05-ticket}/10_request.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/11_diary.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/12_descriptor.spec.js (98%) rename e2e/paths/{05-ticket-module => 05-ticket}/13_services.spec.js (98%) rename e2e/paths/{05-ticket-module => 05-ticket}/14_create_ticket.spec.js (100%) rename e2e/paths/{05-ticket-module => 05-ticket}/15_create_ticket_from_client.spec.js (96%) rename e2e/paths/{05-ticket-module => 05-ticket}/16_summary.spec.js (100%) rename e2e/paths/{06-claim-module => 06-claim}/01_basic_data.spec.js (100%) rename e2e/paths/{06-claim-module => 06-claim}/02_development.spec.js (99%) rename e2e/paths/{06-claim-module => 06-claim}/03_detail.spec.js (100%) rename e2e/paths/{06-claim-module => 06-claim}/04_claim_action.spec.js (100%) rename e2e/paths/{06-claim-module => 06-claim}/05_summary.spec.js (100%) rename e2e/paths/{06-claim-module => 06-claim}/06_descriptor.spec.js (98%) rename e2e/paths/{07-order-module => 07-order}/01_edit_basic_data.spec.js (97%) rename e2e/paths/{07-order-module => 07-order}/02_catalog.spec.js (97%) rename e2e/paths/{07-order-module => 07-order}/03_lines.spec.js (100%) rename e2e/paths/{08-route-module => 08-route}/01_create.spec.js (100%) rename e2e/paths/{08-route-module => 08-route}/02_basic_data.spec.js (99%) rename e2e/paths/{08-route-module => 08-route}/03_tickets.spec.js (100%) rename e2e/paths/{09-invoice-out-module => 09-invoice-out}/01_summary.spec.js (97%) rename e2e/paths/{09-invoice-out-module => 09-invoice-out}/02_descriptor.spec.js (98%) create mode 100644 e2e/paths/10-travel/01_thermograph.spec.js diff --git a/e2e/dms/ecc/3.jpeg b/e2e/dms/ecc/3.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..fb2483f69669a8f3ac8238a0ec0e135b074609c1 GIT binary patch literal 13518 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 literal 0 HcmV?d00001 diff --git a/e2e/helpers/extensions.js b/e2e/helpers/extensions.js index 452dd3a4d..ea8f50626 100644 --- a/e2e/helpers/extensions.js +++ b/e2e/helpers/extensions.js @@ -21,6 +21,7 @@ let actions = { } catch (error) { throw new Error(`failed to reach URL containing: ${expectedHash}`); } + await this.waitForContentLoaded(); return true; }, @@ -167,7 +168,7 @@ let actions = { waitToGetProperty: async function(selector, property) { let builtSelector = selector; - if (property != 'innerText') + if (selector.includes('vn-input-file') || property != 'innerText') builtSelector = await this.selectorFormater(selector); try { @@ -311,6 +312,9 @@ let actions = { if (selector.includes('vn-textfield')) return builtSelector = `${selector} input`; + if (selector.includes('vn-input-file')) + return builtSelector = `${selector} section`; + return builtSelector; }, @@ -365,14 +369,15 @@ let actions = { await this.write('vn-searchbar', searchValue); await this.waitToClick('vn-searchbar vn-icon[icon="search"]'); await this.waitForNumberOfElements('.search-result', 1); - await this.waitFor(1000); + await this.waitForContentLoaded(); await this.evaluate(() => { return document.querySelector('.search-result').click(); }); + await this.waitForContentLoaded(); }, accessToSection: async function(sectionRoute) { - await this.waitForSelector(`vn-left-menu`, {visible: true}); + await this.waitForSelector('vn-left-menu'); let nested = await this.evaluate(sectionRoute => { return document.querySelector(`vn-left-menu li li > a[ui-sref="${sectionRoute}"]`) != null; }, sectionRoute); @@ -394,6 +399,7 @@ let actions = { autocompleteSearch: async function(selector, searchValue) { let builtSelector = await this.selectorFormater(selector); + await this.waitForContentLoaded(); await this.waitToClick(selector); await this.waitForSelector(selector => { document @@ -424,10 +430,11 @@ let actions = { }, {}, builtSelector, searchValue); await this.waitForMutation(`.vn-drop-down`, 'childList'); + await this.waitForContentLoaded(); }, reloadSection: async function(sectionRoute) { - await this.waitFor(1000); + await this.waitForContentLoaded(); await Promise.all([ this.waitForNavigation({waitUntil: 'networkidle0'}), this.click('vn-icon[icon="desktop_windows"]', {}), @@ -437,6 +444,7 @@ let actions = { this.waitForNavigation({waitUntil: 'networkidle0'}), this.click(`vn-left-menu li > a[ui-sref="${sectionRoute}"]`, {}), ]); + await this.waitForContentLoaded(); }, forceReloadSection: async function(sectionRoute) { diff --git a/e2e/helpers/selectors.js b/e2e/helpers/selectors.js index 99c78eea2..ed232ef3b 100644 --- a/e2e/helpers/selectors.js +++ b/e2e/helpers/selectors.js @@ -748,5 +748,12 @@ export default { taxTwo: 'vn-invoice-out-summary > vn-card > vn-horizontal > vn-two > vn-table > div > vn-tbody > vn-tr:nth-child(2)', ticketOne: 'vn-invoice-out-summary > vn-card > vn-horizontal > vn-auto > vn-table > div > vn-tbody > vn-tr:nth-child(1)', ticketTwo: 'vn-invoice-out-summary > vn-card > vn-horizontal > vn-auto > vn-table > div > vn-tbody > vn-tr:nth-child(2)' + }, + travelThermograph: { + add: 'vn-travel-thermograph-index vn-float-button[icon="add"]', + thermographID: 'vn-travel-thermograph-create vn-autocomplete[ng-model="$ctrl.dms.thermographId"]', + uploadIcon: 'vn-travel-thermograph-create vn-icon[icon="cloud_upload"]', + createdThermograph: 'vn-travel-thermograph-index vn-tbody > vn-tr', + upload: 'vn-travel-thermograph-create button[type=submit]' } }; diff --git a/e2e/paths/02-client-module/01_create_client.spec.js b/e2e/paths/02-client/01_create_client.spec.js similarity index 98% rename from e2e/paths/02-client-module/01_create_client.spec.js rename to e2e/paths/02-client/01_create_client.spec.js index 29525df49..8f1a116ee 100644 --- a/e2e/paths/02-client-module/01_create_client.spec.js +++ b/e2e/paths/02-client/01_create_client.spec.js @@ -53,7 +53,6 @@ describe('Client create path', async() => { await page.write(selectors.createClientView.name, 'Carol Danvers'); await page.write(selectors.createClientView.socialName, 'AVG tax'); await page.write(selectors.createClientView.street, 'Many places'); - await page.waitForContentLoaded(); await page.autocompleteSearch(selectors.createClientView.country, 'EspaƱa'); await page.autocompleteSearch(selectors.createClientView.province, 'Province one'); await page.write(selectors.createClientView.city, 'Valencia'); @@ -113,7 +112,6 @@ describe('Client create path', async() => { }); it(`should search for the user Carol Danvers to confirm it exists`, async() => { - await page.waitForContentLoaded(); await page.accessToSearchResult('Carol Danvers'); let url = await page.expectURL('#!/client/114/summary'); diff --git a/e2e/paths/02-client-module/02_edit_basic_data.spec.js b/e2e/paths/02-client/02_edit_basic_data.spec.js similarity index 97% rename from e2e/paths/02-client-module/02_edit_basic_data.spec.js rename to e2e/paths/02-client/02_edit_basic_data.spec.js index 8b665bd96..9373dfe86 100644 --- a/e2e/paths/02-client-module/02_edit_basic_data.spec.js +++ b/e2e/paths/02-client/02_edit_basic_data.spec.js @@ -70,14 +70,14 @@ describe('Client Edit basicData path', () => { }); describe('as salesAssistant', () => { - beforeAll(async() => { + it('should navigate to a client basic data', async() => { await page.loginAndModule('salesASsistant', 'client'); await page.accessToSearchResult('Ptonomy Wallace'); await page.accessToSection('client.card.basicData'); - }); + }, 30000); it('should be able to change the salesPerson', async() => { - await page.wait(selectors.clientBasicData.name); + await page.waitForSelector(selectors.clientBasicData.name); const result = await page.evaluate(selector => { return document.querySelector(selector).disabled; }, `${selectors.clientBasicData.salesPerson} input`); diff --git a/e2e/paths/02-client-module/03_edit_fiscal_data.spec.js b/e2e/paths/02-client/03_edit_fiscal_data.spec.js similarity index 99% rename from e2e/paths/02-client-module/03_edit_fiscal_data.spec.js rename to e2e/paths/02-client/03_edit_fiscal_data.spec.js index d39f196cb..ac08b100d 100644 --- a/e2e/paths/02-client-module/03_edit_fiscal_data.spec.js +++ b/e2e/paths/02-client/03_edit_fiscal_data.spec.js @@ -83,7 +83,7 @@ describe('Client Edit fiscalData path', () => { const result = await page.waitForLastSnackbar(); expect(result).toEqual('Invalid Tax number'); - }, 15000); + }); it(`should edit the fiscal this time with a valid fiscal id`, async() => { await page.clearInput(selectors.clientFiscalData.fiscalId); diff --git a/e2e/paths/02-client-module/04_edit_billing_data.spec.js b/e2e/paths/02-client/04_edit_billing_data.spec.js similarity index 100% rename from e2e/paths/02-client-module/04_edit_billing_data.spec.js rename to e2e/paths/02-client/04_edit_billing_data.spec.js diff --git a/e2e/paths/02-client-module/05_add_address.spec.js b/e2e/paths/02-client/05_add_address.spec.js similarity index 100% rename from e2e/paths/02-client-module/05_add_address.spec.js rename to e2e/paths/02-client/05_add_address.spec.js diff --git a/e2e/paths/02-client-module/06_add_address_notes.spec.js b/e2e/paths/02-client/06_add_address_notes.spec.js similarity index 100% rename from e2e/paths/02-client-module/06_add_address_notes.spec.js rename to e2e/paths/02-client/06_add_address_notes.spec.js diff --git a/e2e/paths/02-client-module/07_edit_web_access.spec.js b/e2e/paths/02-client/07_edit_web_access.spec.js similarity index 100% rename from e2e/paths/02-client-module/07_edit_web_access.spec.js rename to e2e/paths/02-client/07_edit_web_access.spec.js diff --git a/e2e/paths/02-client-module/08_add_notes.spec.js b/e2e/paths/02-client/08_add_notes.spec.js similarity index 100% rename from e2e/paths/02-client-module/08_add_notes.spec.js rename to e2e/paths/02-client/08_add_notes.spec.js diff --git a/e2e/paths/02-client-module/09_add_credit.spec.js b/e2e/paths/02-client/09_add_credit.spec.js similarity index 94% rename from e2e/paths/02-client-module/09_add_credit.spec.js rename to e2e/paths/02-client/09_add_credit.spec.js index 1cb06fb36..05c50e809 100644 --- a/e2e/paths/02-client-module/09_add_credit.spec.js +++ b/e2e/paths/02-client/09_add_credit.spec.js @@ -24,7 +24,6 @@ describe('Client Add credit path', () => { }); it(`should edit the credit`, async() => { - await page.waitForContentLoaded(); await page.clearInput(selectors.clientCredit.credit); await page.write(selectors.clientCredit.credit, '999'); await page.waitToClick(selectors.clientCredit.saveButton); @@ -34,7 +33,6 @@ describe('Client Add credit path', () => { }); it('should confirm the credit was updated', async() => { - await page.waitForContentLoaded(); const result = await page.waitToGetProperty(selectors.clientCredit.firstCreditText, 'innerText'); expect(result).toContain(999); diff --git a/e2e/paths/02-client-module/10_add_greuge.spec.js b/e2e/paths/02-client/10_add_greuge.spec.js similarity index 100% rename from e2e/paths/02-client-module/10_add_greuge.spec.js rename to e2e/paths/02-client/10_add_greuge.spec.js diff --git a/e2e/paths/02-client-module/11_mandate.spec.js b/e2e/paths/02-client/11_mandate.spec.js similarity index 100% rename from e2e/paths/02-client-module/11_mandate.spec.js rename to e2e/paths/02-client/11_mandate.spec.js diff --git a/e2e/paths/02-client-module/12_lock_of_verified_data.spec.js b/e2e/paths/02-client/12_lock_of_verified_data.spec.js similarity index 100% rename from e2e/paths/02-client-module/12_lock_of_verified_data.spec.js rename to e2e/paths/02-client/12_lock_of_verified_data.spec.js diff --git a/e2e/paths/02-client-module/13_log.spec.js b/e2e/paths/02-client/13_log.spec.js similarity index 100% rename from e2e/paths/02-client-module/13_log.spec.js rename to e2e/paths/02-client/13_log.spec.js diff --git a/e2e/paths/02-client-module/14_balance.spec.js b/e2e/paths/02-client/14_balance.spec.js similarity index 98% rename from e2e/paths/02-client-module/14_balance.spec.js rename to e2e/paths/02-client/14_balance.spec.js index 2e29dc04e..52d179383 100644 --- a/e2e/paths/02-client-module/14_balance.spec.js +++ b/e2e/paths/02-client/14_balance.spec.js @@ -17,7 +17,6 @@ describe('Client balance path', () => { it('should now edit the local user config data', async() => { await page.waitToClick(selectors.globalItems.userMenuButton); - await page.waitForContentLoaded(); await page.autocompleteSearch(selectors.globalItems.userLocalCompany, 'CCs'); let result = await page.waitForLastSnackbar(); @@ -118,7 +117,6 @@ describe('Client balance path', () => { }); it('should now search for the user Petter Parker', async() => { - await page.waitForContentLoaded(); await page.write(selectors.clientsIndex.topbarSearch, 'Petter Parker'); await page.waitToClick(selectors.clientsIndex.searchButton); await page.waitForNumberOfElements(selectors.clientsIndex.searchResult, 1); diff --git a/e2e/paths/02-client-module/15_user_config.spec.js b/e2e/paths/02-client/15_user_config.spec.js similarity index 99% rename from e2e/paths/02-client-module/15_user_config.spec.js rename to e2e/paths/02-client/15_user_config.spec.js index 6f76c73ca..193305177 100644 --- a/e2e/paths/02-client-module/15_user_config.spec.js +++ b/e2e/paths/02-client/15_user_config.spec.js @@ -21,7 +21,7 @@ describe('User config', () => { it('should now open the user config form to check the settings', async() => { await page.waitToClick(selectors.globalItems.userMenuButton); - await page.waitFor(1000); + await page.waitForContentLoaded(); let expectedLocalWarehouse = await page .expectPropertyValue(selectors.globalItems.userLocalWarehouse, 'value', ''); diff --git a/e2e/paths/02-client-module/16_web_payment.spec.js b/e2e/paths/02-client/16_web_payment.spec.js similarity index 100% rename from e2e/paths/02-client-module/16_web_payment.spec.js rename to e2e/paths/02-client/16_web_payment.spec.js diff --git a/e2e/paths/02-client-module/17_dms.spec.js b/e2e/paths/02-client/17_dms.spec.js similarity index 100% rename from e2e/paths/02-client-module/17_dms.spec.js rename to e2e/paths/02-client/17_dms.spec.js diff --git a/e2e/paths/02-client-module/18_contacts.spec.js b/e2e/paths/02-client/18_contacts.spec.js similarity index 100% rename from e2e/paths/02-client-module/18_contacts.spec.js rename to e2e/paths/02-client/18_contacts.spec.js diff --git a/e2e/paths/03-worker-module/01_basicData.spec.js b/e2e/paths/03-worker/01_basicData.spec.js similarity index 100% rename from e2e/paths/03-worker-module/01_basicData.spec.js rename to e2e/paths/03-worker/01_basicData.spec.js diff --git a/e2e/paths/03-worker-module/02_time_control.spec.js b/e2e/paths/03-worker/02_time_control.spec.js similarity index 100% rename from e2e/paths/03-worker-module/02_time_control.spec.js rename to e2e/paths/03-worker/02_time_control.spec.js diff --git a/e2e/paths/03-worker-module/03_pbx.spec.js b/e2e/paths/03-worker/03_pbx.spec.js similarity index 100% rename from e2e/paths/03-worker-module/03_pbx.spec.js rename to e2e/paths/03-worker/03_pbx.spec.js diff --git a/e2e/paths/04-item-module/01_summary.spec.js b/e2e/paths/04-item/01_summary.spec.js similarity index 100% rename from e2e/paths/04-item-module/01_summary.spec.js rename to e2e/paths/04-item/01_summary.spec.js diff --git a/e2e/paths/04-item-module/02_basic_data.spec.js b/e2e/paths/04-item/02_basic_data.spec.js similarity index 98% rename from e2e/paths/04-item-module/02_basic_data.spec.js rename to e2e/paths/04-item/02_basic_data.spec.js index 2b3ff9d51..2c8a8a7a1 100644 --- a/e2e/paths/04-item-module/02_basic_data.spec.js +++ b/e2e/paths/04-item/02_basic_data.spec.js @@ -41,7 +41,6 @@ describe('Item Edit basic data path', () => { it(`should confirm the item name was edited`, async() => { await page.reloadSection('item.card.basicData'); - await page.waitForContentLoaded(); const result = await page.waitToGetProperty(selectors.itemBasicData.name, 'value'); expect(result).toEqual('Rose of Purity'); diff --git a/e2e/paths/04-item-module/03_tax.spec.js b/e2e/paths/04-item/03_tax.spec.js similarity index 100% rename from e2e/paths/04-item-module/03_tax.spec.js rename to e2e/paths/04-item/03_tax.spec.js diff --git a/e2e/paths/04-item-module/04_tags.spec.js b/e2e/paths/04-item/04_tags.spec.js similarity index 100% rename from e2e/paths/04-item-module/04_tags.spec.js rename to e2e/paths/04-item/04_tags.spec.js diff --git a/e2e/paths/04-item-module/05_niche.spec.js b/e2e/paths/04-item/05_niche.spec.js similarity index 100% rename from e2e/paths/04-item-module/05_niche.spec.js rename to e2e/paths/04-item/05_niche.spec.js diff --git a/e2e/paths/04-item-module/06_botanical.spec.js b/e2e/paths/04-item/06_botanical.spec.js similarity index 100% rename from e2e/paths/04-item-module/06_botanical.spec.js rename to e2e/paths/04-item/06_botanical.spec.js diff --git a/e2e/paths/04-item-module/07_barcode.spec.js b/e2e/paths/04-item/07_barcode.spec.js similarity index 100% rename from e2e/paths/04-item-module/07_barcode.spec.js rename to e2e/paths/04-item/07_barcode.spec.js diff --git a/e2e/paths/04-item-module/08_create_and_clone.spec.js b/e2e/paths/04-item/08_create_and_clone.spec.js similarity index 99% rename from e2e/paths/04-item-module/08_create_and_clone.spec.js rename to e2e/paths/04-item/08_create_and_clone.spec.js index 7d6a8e54d..32d0ff23b 100644 --- a/e2e/paths/04-item-module/08_create_and_clone.spec.js +++ b/e2e/paths/04-item/08_create_and_clone.spec.js @@ -40,7 +40,6 @@ describe('Item Create/Clone path', () => { }); it('should now access to the create item view by clicking the create floating button', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.itemsIndex.createItemButton); let url = await page.expectURL('#!/item/create'); diff --git a/e2e/paths/04-item-module/09_regularize.spec.js b/e2e/paths/04-item/09_regularize.spec.js similarity index 99% rename from e2e/paths/04-item-module/09_regularize.spec.js rename to e2e/paths/04-item/09_regularize.spec.js index 76e92f8a6..e43429aa0 100644 --- a/e2e/paths/04-item-module/09_regularize.spec.js +++ b/e2e/paths/04-item/09_regularize.spec.js @@ -81,7 +81,6 @@ describe('Item regularize path', () => { }); it('should clear the user local settings now', async() => { - await page.waitForTransitionEnd('vn-searchbar'); await page.waitToClick(selectors.globalItems.userMenuButton); await page.clearInput(selectors.globalItems.userConfigFirstAutocomplete); const result = await page.waitForLastSnackbar(); diff --git a/e2e/paths/04-item-module/10_item_index.spec.js b/e2e/paths/04-item/10_item_index.spec.js similarity index 100% rename from e2e/paths/04-item-module/10_item_index.spec.js rename to e2e/paths/04-item/10_item_index.spec.js diff --git a/e2e/paths/04-item-module/11_item_log.spec.js b/e2e/paths/04-item/11_item_log.spec.js similarity index 100% rename from e2e/paths/04-item-module/11_item_log.spec.js rename to e2e/paths/04-item/11_item_log.spec.js diff --git a/e2e/paths/04-item-module/12_descriptor.spec.js b/e2e/paths/04-item/12_descriptor.spec.js similarity index 100% rename from e2e/paths/04-item-module/12_descriptor.spec.js rename to e2e/paths/04-item/12_descriptor.spec.js diff --git a/e2e/paths/05-ticket-module/01-sale/01_list_sales.spec.js b/e2e/paths/05-ticket/01-sale/01_list_sales.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/01-sale/01_list_sales.spec.js rename to e2e/paths/05-ticket/01-sale/01_list_sales.spec.js diff --git a/e2e/paths/05-ticket-module/01-sale/02_edit_sale.spec.js b/e2e/paths/05-ticket/01-sale/02_edit_sale.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/01-sale/02_edit_sale.spec.js rename to e2e/paths/05-ticket/01-sale/02_edit_sale.spec.js diff --git a/e2e/paths/05-ticket-module/01_observations.spec.js b/e2e/paths/05-ticket/01_observations.spec.js similarity index 99% rename from e2e/paths/05-ticket-module/01_observations.spec.js rename to e2e/paths/05-ticket/01_observations.spec.js index b343bcfeb..cccfa8b67 100644 --- a/e2e/paths/05-ticket-module/01_observations.spec.js +++ b/e2e/paths/05-ticket/01_observations.spec.js @@ -25,7 +25,7 @@ describe('Ticket Create notes path', () => { const result = await page.waitForLastSnackbar(); expect(result).toEqual('Data saved!'); - }, 15000); + }); it('should confirm the note is the expected one', async() => { await page.reloadSection('ticket.card.observation'); diff --git a/e2e/paths/05-ticket-module/02_expeditions_and_log.spec.js b/e2e/paths/05-ticket/02_expeditions_and_log.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/02_expeditions_and_log.spec.js rename to e2e/paths/05-ticket/02_expeditions_and_log.spec.js diff --git a/e2e/paths/05-ticket-module/04_packages.spec.js b/e2e/paths/05-ticket/04_packages.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/04_packages.spec.js rename to e2e/paths/05-ticket/04_packages.spec.js diff --git a/e2e/paths/05-ticket-module/05_tracking_state.spec.js b/e2e/paths/05-ticket/05_tracking_state.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/05_tracking_state.spec.js rename to e2e/paths/05-ticket/05_tracking_state.spec.js diff --git a/e2e/paths/05-ticket-module/06_basic_data_steps.spec.js b/e2e/paths/05-ticket/06_basic_data_steps.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/06_basic_data_steps.spec.js rename to e2e/paths/05-ticket/06_basic_data_steps.spec.js diff --git a/e2e/paths/05-ticket-module/08_components.spec.js b/e2e/paths/05-ticket/08_components.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/08_components.spec.js rename to e2e/paths/05-ticket/08_components.spec.js diff --git a/e2e/paths/05-ticket-module/09_weekly.spec.js b/e2e/paths/05-ticket/09_weekly.spec.js similarity index 97% rename from e2e/paths/05-ticket-module/09_weekly.spec.js rename to e2e/paths/05-ticket/09_weekly.spec.js index e88018ad5..c732a4b87 100644 --- a/e2e/paths/05-ticket-module/09_weekly.spec.js +++ b/e2e/paths/05-ticket/09_weekly.spec.js @@ -26,7 +26,6 @@ describe('Ticket descriptor path', () => { it('should go back to the ticket index then search and access a ticket summary', async() => { await page.accessToSection('ticket.index'); await page.accessToSearchResult('11'); - await page.waitForContentLoaded(); }); it('should add the ticket to thursday turn using the descriptor more menu', async() => { @@ -64,7 +63,6 @@ describe('Ticket descriptor path', () => { }); it('should now search for the ticket 11', async() => { - await page.waitForContentLoaded(); await page.write(selectors.ticketsIndex.topbarSearch, '11'); await page.waitToClick(selectors.ticketsIndex.searchButton); await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1); @@ -81,7 +79,6 @@ describe('Ticket descriptor path', () => { }); it('should add the ticket to saturday turn using the descriptor more menu', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.ticketDescriptor.moreMenu); await page.waitToClick(selectors.ticketDescriptor.moreMenuAddToTurn); await page.waitToClick(selectors.ticketDescriptor.saturdayButton); diff --git a/e2e/paths/05-ticket-module/10_request.spec.js b/e2e/paths/05-ticket/10_request.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/10_request.spec.js rename to e2e/paths/05-ticket/10_request.spec.js diff --git a/e2e/paths/05-ticket-module/11_diary.spec.js b/e2e/paths/05-ticket/11_diary.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/11_diary.spec.js rename to e2e/paths/05-ticket/11_diary.spec.js diff --git a/e2e/paths/05-ticket-module/12_descriptor.spec.js b/e2e/paths/05-ticket/12_descriptor.spec.js similarity index 98% rename from e2e/paths/05-ticket-module/12_descriptor.spec.js rename to e2e/paths/05-ticket/12_descriptor.spec.js index 6e3864b48..1aa0516de 100644 --- a/e2e/paths/05-ticket-module/12_descriptor.spec.js +++ b/e2e/paths/05-ticket/12_descriptor.spec.js @@ -34,7 +34,6 @@ describe('Ticket descriptor path', () => { }); it(`should update the shipped hour using the descriptor menu`, async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.ticketDescriptor.moreMenu); await page.waitToClick(selectors.ticketDescriptor.moreMenuChangeShippedHour); await page.pickTime(selectors.ticketDescriptor.changeShippedHour, '08:15'); @@ -130,7 +129,6 @@ describe('Ticket descriptor path', () => { }); it('should delete the stowaway', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.ticketDescriptor.moreMenu); await page.waitToClick(selectors.ticketDescriptor.moreMenuDeleteStowawayButton); await page.waitToClick(selectors.ticketDescriptor.acceptDeleteStowawayButton); diff --git a/e2e/paths/05-ticket-module/13_services.spec.js b/e2e/paths/05-ticket/13_services.spec.js similarity index 98% rename from e2e/paths/05-ticket-module/13_services.spec.js rename to e2e/paths/05-ticket/13_services.spec.js index cafc5f27c..0a09c7aa3 100644 --- a/e2e/paths/05-ticket-module/13_services.spec.js +++ b/e2e/paths/05-ticket/13_services.spec.js @@ -26,7 +26,7 @@ describe('Ticket services path', () => { const result = await page.isDisabled(selectors.ticketService.firstAddServiceTypeButton); expect(result).toBeTruthy(); - }, 15000); + }); it('should receive an error if you attempt to save a service without access rights', async() => { await page.clearInput(selectors.ticketService.firstPrice); @@ -50,7 +50,6 @@ describe('Ticket services path', () => { }); it('should click on the add button to prepare the form to create a new service', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.ticketService.addServiceButton); const result = await page .isVisible(selectors.ticketService.firstServiceType); diff --git a/e2e/paths/05-ticket-module/14_create_ticket.spec.js b/e2e/paths/05-ticket/14_create_ticket.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/14_create_ticket.spec.js rename to e2e/paths/05-ticket/14_create_ticket.spec.js diff --git a/e2e/paths/05-ticket-module/15_create_ticket_from_client.spec.js b/e2e/paths/05-ticket/15_create_ticket_from_client.spec.js similarity index 96% rename from e2e/paths/05-ticket-module/15_create_ticket_from_client.spec.js rename to e2e/paths/05-ticket/15_create_ticket_from_client.spec.js index 80bb217fb..28c11de3a 100644 --- a/e2e/paths/05-ticket-module/15_create_ticket_from_client.spec.js +++ b/e2e/paths/05-ticket/15_create_ticket_from_client.spec.js @@ -17,7 +17,6 @@ describe('Ticket create from client path', () => { }); it('should click the create simple ticket on the descriptor menu', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.clientDescriptor.moreMenu); await page.waitToClick(selectors.clientDescriptor.simpleTicketButton); let url = await page.expectURL('clientFk=102'); diff --git a/e2e/paths/05-ticket-module/16_summary.spec.js b/e2e/paths/05-ticket/16_summary.spec.js similarity index 100% rename from e2e/paths/05-ticket-module/16_summary.spec.js rename to e2e/paths/05-ticket/16_summary.spec.js diff --git a/e2e/paths/06-claim-module/01_basic_data.spec.js b/e2e/paths/06-claim/01_basic_data.spec.js similarity index 100% rename from e2e/paths/06-claim-module/01_basic_data.spec.js rename to e2e/paths/06-claim/01_basic_data.spec.js diff --git a/e2e/paths/06-claim-module/02_development.spec.js b/e2e/paths/06-claim/02_development.spec.js similarity index 99% rename from e2e/paths/06-claim-module/02_development.spec.js rename to e2e/paths/06-claim/02_development.spec.js index 351dee50f..346f88581 100644 --- a/e2e/paths/06-claim-module/02_development.spec.js +++ b/e2e/paths/06-claim/02_development.spec.js @@ -29,7 +29,7 @@ describe('Claim development', () => { const result = await page.waitForLastSnackbar(); expect(result).toEqual('Data saved!'); - }, 15000); + }); it(`should redirect to the next section of claims as the role is salesAssistant`, async() => { let url = await page.expectURL('/action'); diff --git a/e2e/paths/06-claim-module/03_detail.spec.js b/e2e/paths/06-claim/03_detail.spec.js similarity index 100% rename from e2e/paths/06-claim-module/03_detail.spec.js rename to e2e/paths/06-claim/03_detail.spec.js diff --git a/e2e/paths/06-claim-module/04_claim_action.spec.js b/e2e/paths/06-claim/04_claim_action.spec.js similarity index 100% rename from e2e/paths/06-claim-module/04_claim_action.spec.js rename to e2e/paths/06-claim/04_claim_action.spec.js diff --git a/e2e/paths/06-claim-module/05_summary.spec.js b/e2e/paths/06-claim/05_summary.spec.js similarity index 100% rename from e2e/paths/06-claim-module/05_summary.spec.js rename to e2e/paths/06-claim/05_summary.spec.js diff --git a/e2e/paths/06-claim-module/06_descriptor.spec.js b/e2e/paths/06-claim/06_descriptor.spec.js similarity index 98% rename from e2e/paths/06-claim-module/06_descriptor.spec.js rename to e2e/paths/06-claim/06_descriptor.spec.js index 8e6b3fd05..104f63945 100644 --- a/e2e/paths/06-claim-module/06_descriptor.spec.js +++ b/e2e/paths/06-claim/06_descriptor.spec.js @@ -24,7 +24,6 @@ describe('claim Descriptor path', () => { }); it(`should not be able to see the delete claim button of the descriptor more menu`, async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.claimDescriptor.moreMenu); await page.waitForSelector(selectors.claimDescriptor.moreMenuDeleteClaim, {hidden: true}); }); diff --git a/e2e/paths/07-order-module/01_edit_basic_data.spec.js b/e2e/paths/07-order/01_edit_basic_data.spec.js similarity index 97% rename from e2e/paths/07-order-module/01_edit_basic_data.spec.js rename to e2e/paths/07-order/01_edit_basic_data.spec.js index 2cbee95f7..768985628 100644 --- a/e2e/paths/07-order-module/01_edit_basic_data.spec.js +++ b/e2e/paths/07-order/01_edit_basic_data.spec.js @@ -27,7 +27,7 @@ describe('Order edit basic data path', () => { const result = await page.waitForLastSnackbar(); expect(result).toEqual(`You can't make changes on the basic data of an confirmed order or with rows`); - }, 15000); + }); }); describe('when order with rows', () => { @@ -39,7 +39,6 @@ describe('Order edit basic data path', () => { await page.waitForContentLoaded(); await page.accessToSearchResult(orderId); await page.accessToSection('order.card.basicData'); - await page.waitForContentLoaded(); await page.waitForSelector(selectors.orderBasicData.observation, {visible: true}); let url = await page.expectURL(`#!/order/${orderId}/basic-data`); @@ -47,7 +46,6 @@ describe('Order edit basic data path', () => { }); it('should not be able to change anything', async() => { - await page.waitForContentLoaded(); await page.write(selectors.orderBasicData.observation, 'observation'); await page.waitToClick(selectors.orderBasicData.saveButton); const result = await page.waitForLastSnackbar(); diff --git a/e2e/paths/07-order-module/02_catalog.spec.js b/e2e/paths/07-order/02_catalog.spec.js similarity index 97% rename from e2e/paths/07-order-module/02_catalog.spec.js rename to e2e/paths/07-order/02_catalog.spec.js index d67dd3c92..ca6489779 100644 --- a/e2e/paths/07-order-module/02_catalog.spec.js +++ b/e2e/paths/07-order/02_catalog.spec.js @@ -35,9 +35,7 @@ describe('Order catalog', () => { }); it('should add the realm and type filters and obtain results', async() => { - await page.waitForContentLoaded(); await page.waitToClick(selectors.orderCatalog.plantRealmButton); - await page.waitForContentLoaded(); await page.autocompleteSearch(selectors.orderCatalog.type, 'Anthurium'); await page.waitForNumberOfElements('section.product', 4); const result = await page.countElement('section.product'); diff --git a/e2e/paths/07-order-module/03_lines.spec.js b/e2e/paths/07-order/03_lines.spec.js similarity index 100% rename from e2e/paths/07-order-module/03_lines.spec.js rename to e2e/paths/07-order/03_lines.spec.js diff --git a/e2e/paths/08-route-module/01_create.spec.js b/e2e/paths/08-route/01_create.spec.js similarity index 100% rename from e2e/paths/08-route-module/01_create.spec.js rename to e2e/paths/08-route/01_create.spec.js diff --git a/e2e/paths/08-route-module/02_basic_data.spec.js b/e2e/paths/08-route/02_basic_data.spec.js similarity index 99% rename from e2e/paths/08-route-module/02_basic_data.spec.js rename to e2e/paths/08-route/02_basic_data.spec.js index 7828b3827..91688b3ff 100644 --- a/e2e/paths/08-route-module/02_basic_data.spec.js +++ b/e2e/paths/08-route/02_basic_data.spec.js @@ -31,7 +31,7 @@ describe('Route basic Data path', () => { const result = await page.waitForLastSnackbar(); expect(result).toEqual('Data saved!'); - }, 15000); + }); it('should confirm the worker was edited', async() => { await page.reloadSection('route.card.basicData'); diff --git a/e2e/paths/08-route-module/03_tickets.spec.js b/e2e/paths/08-route/03_tickets.spec.js similarity index 100% rename from e2e/paths/08-route-module/03_tickets.spec.js rename to e2e/paths/08-route/03_tickets.spec.js diff --git a/e2e/paths/09-invoice-out-module/01_summary.spec.js b/e2e/paths/09-invoice-out/01_summary.spec.js similarity index 97% rename from e2e/paths/09-invoice-out-module/01_summary.spec.js rename to e2e/paths/09-invoice-out/01_summary.spec.js index c67fc547e..126c745d3 100644 --- a/e2e/paths/09-invoice-out-module/01_summary.spec.js +++ b/e2e/paths/09-invoice-out/01_summary.spec.js @@ -23,7 +23,6 @@ describe('InvoiceOut summary path', () => { }); it('should contain the company from which the invoice is emited', async() => { - await page.waitForContentLoaded(); const result = await page.waitToGetProperty(selectors.invoiceOutSummary.company, 'innerText'); expect(result).toEqual('Company VNL'); diff --git a/e2e/paths/09-invoice-out-module/02_descriptor.spec.js b/e2e/paths/09-invoice-out/02_descriptor.spec.js similarity index 98% rename from e2e/paths/09-invoice-out-module/02_descriptor.spec.js rename to e2e/paths/09-invoice-out/02_descriptor.spec.js index a51ae9d8f..e70c39ded 100644 --- a/e2e/paths/09-invoice-out-module/02_descriptor.spec.js +++ b/e2e/paths/09-invoice-out/02_descriptor.spec.js @@ -37,7 +37,6 @@ describe('InvoiceOut descriptor path', () => { }); it('should search for the target invoiceOut', async() => { - await page.waitForContentLoaded(); await page.write(selectors.invoiceOutIndex.topbarSearch, 'T2222222'); await page.waitToClick(selectors.invoiceOutIndex.searchButton); await page.waitForNumberOfElements(selectors.invoiceOutIndex.searchResult, 1); @@ -108,7 +107,6 @@ describe('InvoiceOut descriptor path', () => { }); it(`should search and access to the invoiceOut summary`, async() => { - await page.waitForContentLoaded(); await page.accessToSearchResult('T1111111'); let url = await page.expectURL('/summary'); diff --git a/e2e/paths/10-travel/01_thermograph.spec.js b/e2e/paths/10-travel/01_thermograph.spec.js new file mode 100644 index 000000000..efa2295a6 --- /dev/null +++ b/e2e/paths/10-travel/01_thermograph.spec.js @@ -0,0 +1,52 @@ +import selectors from '../../helpers/selectors.js'; +import getBrowser from '../../helpers/puppeteer'; + +describe('Travel thermograph path', () => { + let browser; + let page; + + beforeAll(async() => { + browser = await getBrowser(); + page = browser.page; + await page.loginAndModule('buyer', 'travel'); + await page.accessToSearchResult('3'); + await page.accessToSection('travel.card.thermograph.index'); + }); + + afterAll(async() => { + await browser.close(); + }); + + it('should reach the thermograph section', async() => { + const result = await page.expectURL('/thermograph/index'); + + expect(result).toBe(true); + }); + + it('should click the add thermograph floating button', async() => { + await page.waitToClick(selectors.travelThermograph.add); + const result = await page.expectURL('/thermograph/create'); + + expect(result).toBe(true); + }); + + it('should select the thermograph and then the file to upload', async() => { + let currentDir = process.cwd(); + let filePath = `${currentDir}/e2e/dms/ecc/3.jpeg`; + await page.autocompleteSearch(selectors.travelThermograph.thermographID, '138350-0'); + + const [fileChooser] = await Promise.all([ + page.waitForFileChooser(), + page.waitToClick(selectors.travelThermograph.uploadIcon) + ]); + await fileChooser.accept([filePath]); + + await page.waitToClick(selectors.travelThermograph.upload); + }); + + it('should reload the section and check everything was saved', async() => { + let createdThermograph = await page.waitToGetProperty(selectors.travelThermograph.createdThermograph, 'innerText'); + + expect(createdThermograph).toContain('138350-0'); + }); +}); diff --git a/gulpfile.js b/gulpfile.js index 853fcf2d4..eb421ba9b 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -174,12 +174,13 @@ function e2eSingleRun() { `${__dirname}/e2e/paths/07*/*[sS]pec.js`, `${__dirname}/e2e/paths/08*/*[sS]pec.js`, `${__dirname}/e2e/paths/09*/*[sS]pec.js`, + `${__dirname}/e2e/paths/10*/*[sS]pec.js`, `${__dirname}/e2e/paths/**/*[sS]pec.js` ]; return gulp.src(specFiles).pipe(jasmine({ errorOnFail: false, - timeout: 10000, + timeout: 30000, reporter: [ new SpecReporter({ spec: {