diff --git a/db/changes/10340-summer/00-ACL.sql b/db/changes/10340-summer/00-ACL.sql new file mode 100644 index 000000000..a9a5778e5 --- /dev/null +++ b/db/changes/10340-summer/00-ACL.sql @@ -0,0 +1,4 @@ +DELETE FROM `salix`.`ACL` WHERE id = 189; +DELETE FROM `salix`.`ACL` WHERE id = 188; +UPDATE `salix`.`ACL` tdms SET tdms.accessType = '*' + WHERE tdms.id = 165; diff --git a/db/changes/10340-summer/deleteMe.keep b/db/changes/10340-summer/deleteMe.keep deleted file mode 100644 index 3a94d75a8..000000000 --- a/db/changes/10340-summer/deleteMe.keep +++ /dev/null @@ -1 +0,0 @@ -Delete me \ No newline at end of file diff --git a/e2e/helpers/selectors.js b/e2e/helpers/selectors.js index ffb45c34e..4c7c18689 100644 --- a/e2e/helpers/selectors.js +++ b/e2e/helpers/selectors.js @@ -646,6 +646,12 @@ export default { saveServiceButton: 'button[type=submit]', saveServiceTypeButton: '.vn-dialog.shown tpl-buttons > button' }, + ticketDms: { + import: 'vn-ticket-dms-index vn-button[icon="file_copy"]', + document: 'vn-autocomplete[ng-model="$ctrl.dmsId"]', + saveImport: 'button[response="accept"]', + anyDocument: 'vn-ticket-dms-index > vn-data-viewer vn-tbody vn-tr' + }, createStateView: { state: 'vn-autocomplete[ng-model="$ctrl.stateFk"]', worker: 'vn-autocomplete[ng-model="$ctrl.workerFk"]', diff --git a/e2e/paths/05-ticket/19_dms.spec.js b/e2e/paths/05-ticket/19_dms.spec.js new file mode 100644 index 000000000..be2ac4338 --- /dev/null +++ b/e2e/paths/05-ticket/19_dms.spec.js @@ -0,0 +1,49 @@ +import selectors from '../../helpers/selectors.js'; +import getBrowser from '../../helpers/puppeteer'; + +describe('Ticket DMS path', () => { + let browser; + let page; + + beforeAll(async() => { + browser = await getBrowser(); + page = browser.page; + await page.loginAndModule('employee', 'ticket'); + await page.accessToSearchResult('1'); + await page.accessToSection('ticket.card.dms.index'); + }); + + afterAll(async() => { + await browser.close(); + }); + + it('should import a document', async() => { + await page.waitToClick(selectors.ticketDms.import); + await page.autocompleteSearch(selectors.ticketDms.document, '1'); + await page.waitToClick(selectors.ticketDms.saveImport); + const message = await page.waitForSnackbar(); + + expect(message.text).toContain('Data saved!'); + }); + + it(`should check there's a listed document now`, async() => { + const result = await page.countElement(selectors.ticketDms.anyDocument); + + expect(result).toEqual(1); + }); + + it('should attempt to import an existing document on this ticket', async() => { + await page.waitToClick(selectors.ticketDms.import); + await page.autocompleteSearch(selectors.ticketDms.document, '1'); + await page.waitToClick(selectors.ticketDms.saveImport); + const message = await page.waitForSnackbar(); + + expect(message.text).toContain('This document already exists on this ticket'); + }); + + it(`should check there's still one document`, async() => { + const result = await page.countElement(selectors.ticketDms.anyDocument); + + expect(result).toEqual(1); + }); +}); diff --git a/loopback/locale/en.json b/loopback/locale/en.json index 9bef13527..75804ba21 100644 --- a/loopback/locale/en.json +++ b/loopback/locale/en.json @@ -98,5 +98,6 @@ "Client assignment has changed": "I did change the salesperson ~*\"<{{previousWorkerName}}>\"*~ by *\"<{{currentWorkerName}}>\"* from the client [{{clientName}} ({{clientId}})]({{{url}}})", "None": "None", "error densidad = 0": "error densidad = 0", - "nickname": "nickname" + "nickname": "nickname", + "This document already exists on this ticket": "This document already exists on this ticket" } \ No newline at end of file