This commit is contained in:
parent
d400e63aac
commit
de12911f30
|
@ -191,7 +191,7 @@ let actions = {
|
|||
|
||||
waitToClick: async function(selector) {
|
||||
await this.waitForSelector(selector, {});
|
||||
await this.click(selector, {waitUntil: 'domcontentloaded'});
|
||||
await this.click(selector);
|
||||
},
|
||||
|
||||
focusElement: async function(selector) {
|
||||
|
@ -393,15 +393,17 @@ let actions = {
|
|||
|
||||
autocompleteSearch: async function(selector, searchValue) {
|
||||
let builtSelector = await this.selectorFormater(selector);
|
||||
try {
|
||||
await this.waitToClick(builtSelector);
|
||||
|
||||
await this.waitToClick(selector);
|
||||
await this.waitForSelector(selector => {
|
||||
document
|
||||
.querySelector(`${selector} vn-drop-down`).$ctrl.content
|
||||
.querySelectorAll('li');
|
||||
}, selector);
|
||||
|
||||
await this.type(`.vn-drop-down.shown`, searchValue);
|
||||
await this.write('.vn-drop-down.vn-popover.vn-popup.shown vn-textfield', searchValue);
|
||||
|
||||
try {
|
||||
await this.waitForFunction((selector, searchValue) => {
|
||||
let element = document
|
||||
.querySelector(`${selector} vn-drop-down`).$ctrl.content
|
||||
|
@ -409,15 +411,18 @@ let actions = {
|
|||
if (element)
|
||||
return element.innerText.toLowerCase().includes(searchValue.toLowerCase());
|
||||
}, {}, selector, searchValue);
|
||||
|
||||
} catch (error) {
|
||||
let inputValue = await this.evaluate(() => {
|
||||
return document.querySelector('.vn-drop-down.vn-popover.vn-popup.shown vn-textfield input').value;
|
||||
});
|
||||
throw new Error(`${builtSelector} value is ${inputValue}! ${error}`);
|
||||
}
|
||||
await this.keyboard.press('Enter');
|
||||
await this.waitForFunction((selector, searchValue) => {
|
||||
return document.querySelector(selector).value.toLowerCase()
|
||||
.includes(searchValue.toLowerCase());
|
||||
}, {}, builtSelector, searchValue);
|
||||
} catch (error) {
|
||||
throw new Error(`${builtSelector} failed to autocomplete ${searchValue}! ${error}`);
|
||||
}
|
||||
|
||||
await this.waitForMutation(`.vn-drop-down`, 'childList');
|
||||
},
|
||||
|
||||
|
|
|
@ -51,6 +51,8 @@ export default {
|
|||
name: 'vn-client-basic-data vn-textfield[ng-model="$ctrl.client.name"]',
|
||||
contact: 'vn-client-basic-data vn-textfield[ng-model="$ctrl.client.contact"]',
|
||||
email: 'vn-client-basic-data vn-textfield[ng-model="$ctrl.client.email"]',
|
||||
phone: 'vn-client-basic-data vn-textfield[ng-model="$ctrl.client.phone"]',
|
||||
mobile: 'vn-client-basic-data vn-textfield[ng-model="$ctrl.client.mobile"]',
|
||||
salesPerson: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]',
|
||||
channel: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.contactChannelFk"]',
|
||||
saveButton: 'vn-client-basic-data button[type=submit]'
|
||||
|
|
|
@ -92,6 +92,10 @@ describe('Client Edit basicData path', () => {
|
|||
await page.write(selectors.clientBasicData.contact, 'Black Panther');
|
||||
await page.clearInput(selectors.clientBasicData.email);
|
||||
await page.write(selectors.clientBasicData.email, 'Storm@verdnatura.es');
|
||||
await page.clearInput(selectors.clientBasicData.phone);
|
||||
await page.write(selectors.clientBasicData.phone, '333333333');
|
||||
await page.clearInput(selectors.clientBasicData.mobile);
|
||||
await page.write(selectors.clientBasicData.mobile, '444444444');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.salesPerson, 'replenisherNick');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.channel, 'Metropolis newspaper');
|
||||
await page.waitToClick(selectors.clientBasicData.saveButton);
|
||||
|
@ -121,6 +125,20 @@ describe('Client Edit basicData path', () => {
|
|||
expect(result).toEqual('Storm@verdnatura.es');
|
||||
});
|
||||
|
||||
it('should now confirm the phone have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.phone, 'value');
|
||||
|
||||
expect(result).toEqual('333333333');
|
||||
});
|
||||
|
||||
it('should now confirm the mobile have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.mobile, 'value');
|
||||
|
||||
expect(result).toEqual('444444444');
|
||||
});
|
||||
|
||||
it('should confirm the sales person have been selected', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.salesPerson, 'value');
|
||||
|
|
|
@ -49,7 +49,6 @@ describe('Client balance path', () => {
|
|||
|
||||
it('should create a new payment that clears the debt', async() => {
|
||||
await page.waitToClick(selectors.clientBalance.newPaymentButton);
|
||||
await page.waitForContentLoaded();
|
||||
await page.autocompleteSearch(selectors.clientBalance.newPaymentBank, 'Pay on receipt');
|
||||
await page.waitToClick(selectors.clientBalance.saveButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
|
Loading…
Reference in New Issue