1795 and 1798 refactors
gitea/salix/1798-e2e-extensions This commit has test failures
Details
gitea/salix/1798-e2e-extensions This commit has test failures
Details
This commit is contained in:
parent
7f745b95b8
commit
cbd43253e0
|
@ -143,12 +143,19 @@ let actions = {
|
|||
return await this.getProperty(selector, property);
|
||||
},
|
||||
|
||||
waitPropertyValue: async function(selector, property, status) {
|
||||
await this.waitForSelector(selector);
|
||||
return await this.waitForFunction((selector, property, status) => {
|
||||
const element = document.querySelector(selector);
|
||||
return element[property] === status;
|
||||
}, {}, selector, property, status);
|
||||
expectPropertyValue: async function(selector, property, value) {
|
||||
let builtSelector = selector;
|
||||
if (property != 'innerText')
|
||||
builtSelector = await this.selectorFormater(selector);
|
||||
|
||||
try {
|
||||
return await this.waitForFunction((selector, property, value) => {
|
||||
const element = document.querySelector(selector);
|
||||
return element[property] == value;
|
||||
}, {}, builtSelector, property, value);
|
||||
} catch (error) {
|
||||
throw new Error(`${value} wasn't the value of ${builtSelector}, ${error}`);
|
||||
}
|
||||
},
|
||||
|
||||
waitToGetProperty: async function(selector, property) {
|
||||
|
@ -351,7 +358,7 @@ let actions = {
|
|||
},
|
||||
|
||||
waitForLastSnackbar: async function() {
|
||||
await this.wait(2000); // this needs a refactor to be somehow dynamic ie: page.waitForResponse(urlOrPredicate[, options]) or something to fire waitForLastShape once the request is completed
|
||||
await this.waitFor(1000); // this needs a refactor to be somehow dynamic ie: page.waitForResponse(urlOrPredicate[, options]) or something to fire waitForLastShape once the request is completed
|
||||
await this.waitForSpinnerLoad();
|
||||
return await this.waitForLastShape('vn-snackbar .shown .text');
|
||||
},
|
||||
|
@ -384,6 +391,7 @@ let actions = {
|
|||
return navButton.click();
|
||||
}, sectionRoute);
|
||||
await this.waitForNavigation({waitUntil: ['networkidle0']});
|
||||
await this.waitForContentLoaded();
|
||||
},
|
||||
|
||||
autocompleteSearch: async function(selector, searchValue) {
|
||||
|
|
|
@ -21,25 +21,25 @@ export default {
|
|||
acceptButton: '.vn-confirm.shown button[response=accept]'
|
||||
},
|
||||
clientsIndex: {
|
||||
searchClientInput: 'vn-topbar',
|
||||
topbarSearch: 'vn-topbar',
|
||||
searchButton: 'vn-searchbar vn-icon[icon="search"]',
|
||||
searchResult: 'vn-client-index .vn-item',
|
||||
createClientButton: `vn-float-button`,
|
||||
othersButton: 'vn-left-menu li[name="Others"] > a'
|
||||
},
|
||||
createClientView: {
|
||||
name: `vn-client-create [ng-model="$ctrl.client.name"]`,
|
||||
taxNumber: 'vn-client-create [ng-model="$ctrl.client.fi"]',
|
||||
socialName: 'vn-client-create [ng-model="$ctrl.client.socialName"]',
|
||||
street: 'vn-client-create [ng-model="$ctrl.client.street"]',
|
||||
postcode: 'vn-client-create [ng-model="$ctrl.client.postcode"]',
|
||||
city: 'vn-client-create [ng-model="$ctrl.client.city"]',
|
||||
province: `vn-autocomplete[ng-model="$ctrl.client.provinceFk"]`,
|
||||
country: `vn-autocomplete[ng-model="$ctrl.client.countryFk"]`,
|
||||
userName: 'vn-client-create [ng-model="$ctrl.client.userName"]',
|
||||
email: 'vn-client-create [ng-model="$ctrl.client.email"]',
|
||||
salesPersonAutocomplete: `vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]`,
|
||||
createButton: `button[type=submit]`,
|
||||
name: 'vn-client-create vn-textfield[ng-model="$ctrl.client.name"]',
|
||||
taxNumber: 'vn-client-create vn-textfield[ng-model="$ctrl.client.fi"]',
|
||||
socialName: 'vn-client-create vn-textfield[ng-model="$ctrl.client.socialName"]',
|
||||
street: 'vn-client-create vn-textfield[ng-model="$ctrl.client.street"]',
|
||||
postcode: 'vn-client-create vn-textfield[ng-model="$ctrl.client.postcode"]',
|
||||
city: 'vn-client-create vn-textfield[ng-model="$ctrl.client.city"]',
|
||||
province: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.provinceFk"]',
|
||||
country: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.countryFk"]',
|
||||
userName: 'vn-client-create vn-textfield[ng-model="$ctrl.client.userName"]',
|
||||
email: 'vn-client-create vn-textfield[ng-model="$ctrl.client.email"]',
|
||||
salesPerson: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]',
|
||||
createButton: 'vn-client-create button[type=submit]',
|
||||
cancelButton: 'vn-button[href="#!/client/index"]'
|
||||
},
|
||||
clientDescriptor: {
|
||||
|
@ -48,77 +48,75 @@ export default {
|
|||
},
|
||||
clientBasicData: {
|
||||
basicDataButton: 'vn-left-menu a[ui-sref="client.card.basicData"]',
|
||||
nameInput: 'vn-client-basic-data [ng-model="$ctrl.client.name"]',
|
||||
contactInput: 'vn-client-basic-data [ng-model="$ctrl.client.contact"]',
|
||||
phoneInput: 'vn-client-basic-data [ng-model="$ctrl.client.phone"]',
|
||||
mobileInput: 'vn-client-basic-data [ng-model="$ctrl.client.mobile"]',
|
||||
emailInput: 'vn-client-basic-data [ng-model="$ctrl.client.email"]',
|
||||
salesPersonAutocomplete: 'vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]',
|
||||
channelAutocomplete: 'vn-autocomplete[ng-model="$ctrl.client.contactChannelFk"]',
|
||||
saveButton: `button[type=submit]`
|
||||
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"]',
|
||||
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]'
|
||||
},
|
||||
clientFiscalData: {
|
||||
fiscalDataButton: 'vn-left-menu a[ui-sref="client.card.fiscalData"]',
|
||||
socialNameInput: 'vn-client-fiscal-data [ng-model="$ctrl.client.socialName"]',
|
||||
fiscalIdInput: 'vn-client-fiscal-data [ng-model="$ctrl.client.fi"]',
|
||||
equalizationTaxCheckbox: 'vn-check[ng-model="$ctrl.client.isEqualizated"]',
|
||||
socialName: 'vn-client-fiscal-data vn-textfield[ng-model="$ctrl.client.socialName"]',
|
||||
fiscalId: 'vn-client-fiscal-data vn-textfield[ng-model="$ctrl.client.fi"]',
|
||||
equalizationTax: 'vn-client-fiscal-data vn-check[ng-model="$ctrl.client.isEqualizated"]',
|
||||
acceptPropagationButton: '.vn-confirm.shown button[response=accept]',
|
||||
addressInput: 'vn-client-fiscal-data [ng-model="$ctrl.client.street"]',
|
||||
postcodeInput: 'vn-client-fiscal-data [ng-model="$ctrl.client.postcode"]',
|
||||
cityInput: 'vn-client-fiscal-data [ng-model="$ctrl.client.city"]',
|
||||
provinceAutocomplete: 'vn-autocomplete[ng-model="$ctrl.client.provinceFk"]',
|
||||
countryAutocomplete: 'vn-autocomplete[ng-model="$ctrl.client.countryFk"]',
|
||||
activeCheckbox: 'vn-check[label="Active"]',
|
||||
frozenCheckbox: 'vn-check[label="Frozen"]',
|
||||
invoiceByAddressCheckbox: 'vn-check[label="Invoice by address"]',
|
||||
verifiedDataCheckbox: 'vn-check[label="Verified data"]',
|
||||
hasToInvoiceCheckbox: 'vn-check[label="Has to invoice"]',
|
||||
invoiceByMailCheckbox: 'vn-check[label="Invoice by mail"]',
|
||||
viesCheckbox: 'vn-check[label="Vies"]',
|
||||
saveButton: `button[type=submit]`,
|
||||
address: 'vn-client-fiscal-data vn-textfield[ng-model="$ctrl.client.street"]',
|
||||
postcode: 'vn-client-fiscal-data vn-textfield[ng-model="$ctrl.client.postcode"]',
|
||||
city: 'vn-client-fiscal-data vn-textfield[ng-model="$ctrl.client.city"]',
|
||||
province: 'vn-client-fiscal-data vn-autocomplete[ng-model="$ctrl.client.provinceFk"]',
|
||||
country: 'vn-client-fiscal-data vn-autocomplete[ng-model="$ctrl.client.countryFk"]',
|
||||
activeCheckbox: 'vn-client-fiscal-data vn-check[label="Active"]',
|
||||
frozenCheckbox: 'vn-client-fiscal-data vn-check[label="Frozen"]',
|
||||
invoiceByAddressCheckbox: 'vn-client-fiscal-data vn-check[label="Invoice by address"]',
|
||||
verifiedDataCheckbox: 'vn-client-fiscal-data vn-check[label="Verified data"]',
|
||||
hasToInvoiceCheckbox: 'vn-client-fiscal-data vn-check[label="Has to invoice"]',
|
||||
invoiceByMailCheckbox: 'vn-client-fiscal-data vn-check[label="Invoice by mail"]',
|
||||
viesCheckbox: 'vn-client-fiscal-data vn-check[label="Vies"]',
|
||||
saveButton: 'button[type=submit]',
|
||||
watcher: 'vn-client-fiscal-data vn-watcher'
|
||||
},
|
||||
clientBillingData: {
|
||||
payMethodAutocomplete: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.payMethodFk"]',
|
||||
IBANInput: 'vn-client-billing-data [ng-model="$ctrl.client.iban"]',
|
||||
dueDayInput: 'vn-client-billing-data [ng-model="$ctrl.client.dueDay"]',
|
||||
payMethod: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.payMethodFk"]',
|
||||
IBAN: 'vn-client-billing-data vn-textfield[ng-model="$ctrl.client.iban"]',
|
||||
dueDay: 'vn-client-billing-data vn-input-number[ng-model="$ctrl.client.dueDay"]',
|
||||
receivedCoreLCRCheckbox: 'vn-client-billing-data vn-check[label="Received LCR"]',
|
||||
receivedCoreVNLCheckbox: 'vn-client-billing-data vn-check[label="Received core VNL"]',
|
||||
receivedB2BVNLCheckbox: 'vn-client-billing-data vn-check[label="Received B2B VNL"]',
|
||||
swiftBicAutocomplete: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.bankEntityFk"]',
|
||||
swiftBic: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.bankEntityFk"]',
|
||||
clearswiftBicButton: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.bankEntityFk"] .icons > vn-icon[icon=clear]',
|
||||
newBankEntityButton: 'vn-client-billing-data vn-icon-button[vn-tooltip="New bank entity"] > button',
|
||||
newBankEntityName: '.vn-dialog.shown [ng-model="$ctrl.newBankEntity.name"]',
|
||||
newBankEntityBIC: '.vn-dialog.shown [ng-model="$ctrl.newBankEntity.bic"]',
|
||||
newBankEntityCode: '.vn-dialog.shown [ng-model="$ctrl.newBankEntity.id"]',
|
||||
newBankEntityName: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.name"]',
|
||||
newBankEntityBIC: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.bic"]',
|
||||
newBankEntityCode: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.id"]',
|
||||
acceptBankEntityButton: '.vn-dialog.shown button[response="accept"]',
|
||||
saveButton: `button[type=submit]`,
|
||||
watcher: 'vn-client-billing-data vn-watcher'
|
||||
},
|
||||
clientAddresses: {
|
||||
addressesButton: 'vn-left-menu a[ui-sref="client.card.address.index"]',
|
||||
createAddress: `vn-client-address-index vn-float-button`,
|
||||
defaultCheckboxInput: 'vn-check[label="Default"]',
|
||||
consigneeInput: '[ng-model="$ctrl.address.nickname"]',
|
||||
streetAddressInput: '[ng-model="$ctrl.address.street"]',
|
||||
postcodeInput: '[ng-model="$ctrl.address.postalCode"]',
|
||||
cityInput: '[ng-model="$ctrl.address.city"]',
|
||||
provinceAutocomplete: 'vn-autocomplete[ng-model="$ctrl.address.provinceId"]',
|
||||
agencyAutocomplete: 'vn-autocomplete[ng-model="$ctrl.address.agencyModeId"]',
|
||||
phoneInput: '[ng-model="$ctrl.address.phone"]',
|
||||
mobileInput: '[ng-model="$ctrl.address.mobile"]',
|
||||
createAddress: 'vn-client-address-index vn-float-button',
|
||||
defaultCheckbox: 'vn-check[label="Default"]',
|
||||
consignee: 'vn-textfield[ng-model="$ctrl.address.nickname"]',
|
||||
streetAddress: 'vn-textfield[ng-model="$ctrl.address.street"]',
|
||||
postcode: 'vn-textfield[ng-model="$ctrl.address.postalCode"]',
|
||||
city: 'vn-textfield[ng-model="$ctrl.address.city"]',
|
||||
province: 'vn-autocomplete[ng-model="$ctrl.address.provinceId"]',
|
||||
agency: 'vn-autocomplete[ng-model="$ctrl.address.agencyModeId"]',
|
||||
phone: 'vn-textfield[ng-model="$ctrl.address.phone"]',
|
||||
mobileInput: 'vn-textfield[ng-model="$ctrl.address.mobile"]',
|
||||
defaultAddress: 'vn-client-address-index div:nth-child(1) div[name="street"]',
|
||||
incotermsAutocomplete: 'vn-autocomplete[ng-model="$ctrl.address.incotermsId"]',
|
||||
customsAgentAutocomplete: 'vn-autocomplete[ng-model="$ctrl.address.customsAgentId"]',
|
||||
incoterms: 'vn-autocomplete[ng-model="$ctrl.address.incotermsId"]',
|
||||
customsAgent: 'vn-autocomplete[ng-model="$ctrl.address.customsAgentId"]',
|
||||
secondMakeDefaultStar: 'vn-client-address-index vn-card div:nth-child(2) vn-icon-button[icon="star_border"]',
|
||||
firstEditAddress: 'vn-client-address-index div:nth-child(1) > a',
|
||||
secondEditAddress: 'vn-client-address-index div:nth-child(2) > a',
|
||||
activeCheckbox: 'vn-check[label="Enabled"]',
|
||||
equalizationTaxCheckbox: 'vn-client-address-edit vn-check[label="Is equalizated"]',
|
||||
firstObservationTypeAutocomplete: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(1) [ng-model="observation.observationTypeFk"]',
|
||||
firstObservationDescriptionInput: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(1) [ng-model="observation.description"]',
|
||||
secondObservationTypeAutocomplete: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(2) [ng-model="observation.observationTypeFk"]',
|
||||
secondObservationDescriptionInput: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(2) [ng-model="observation.description"]',
|
||||
firstObservationType: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(1) vn-autocomplete[ng-model="observation.observationTypeFk"]',
|
||||
firstObservationDescription: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(1) vn-textfield[ng-model="observation.description"]',
|
||||
secondObservationType: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(2) vn-autocomplete[ng-model="observation.observationTypeFk"]',
|
||||
secondObservationDescription: 'vn-client-address-edit [name=observations] vn-horizontal:nth-child(2) vn-textfield[ng-model="observation.description"]',
|
||||
addObservationButton: 'vn-client-address-edit div[name="observations"] vn-icon-button[icon="add_circle"]',
|
||||
saveButton: 'button[type=submit]',
|
||||
cancelCreateAddressButton: 'button[ui-sref="client.card.address.index"]',
|
||||
|
@ -128,26 +126,26 @@ export default {
|
|||
clientWebAccess: {
|
||||
webAccessButton: 'vn-left-menu a[ui-sref="client.card.webAccess"]',
|
||||
enableWebAccessCheckbox: 'vn-check[label="Enable web access"]',
|
||||
userNameInput: 'vn-client-web-access [ng-model="$ctrl.account.name"]',
|
||||
userName: 'vn-client-web-access vn-textfield[ng-model="$ctrl.account.name"]',
|
||||
saveButton: 'button[type=submit]'
|
||||
},
|
||||
clientNotes: {
|
||||
addNoteFloatButton: 'vn-float-button',
|
||||
noteInput: '[ng-model="$ctrl.note.text"]',
|
||||
note: 'vn-textarea[ng-model="$ctrl.note.text"]',
|
||||
saveButton: 'button[type=submit]',
|
||||
firstNoteText: 'vn-client-note .text'
|
||||
},
|
||||
clientCredit: {
|
||||
addCreditFloatButton: 'vn-float-button',
|
||||
creditInput: 'vn-client-credit-create [ng-model="$ctrl.client.credit"]',
|
||||
saveButton: 'button[type=submit]',
|
||||
firstCreditText: 'vn-client-credit-index vn-card vn-table vn-tbody > vn-tr'
|
||||
credit: 'vn-client-credit-create vn-input-number[ng-model="$ctrl.client.credit"]',
|
||||
firstCreditText: 'vn-client-credit-index vn-card vn-table vn-tbody > vn-tr',
|
||||
saveButton: 'button[type=submit]'
|
||||
},
|
||||
clientGreuge: {
|
||||
addGreugeFloatButton: 'vn-float-button',
|
||||
amountInput: 'vn-client-greuge-create [ng-model="$ctrl.greuge.amount"]',
|
||||
descriptionInput: 'vn-client-greuge-create [ng-model="$ctrl.greuge.description"]',
|
||||
typeAutocomplete: 'vn-autocomplete[ng-model="$ctrl.greuge.greugeTypeFk"]',
|
||||
amount: 'vn-client-greuge-create vn-input-number[ng-model="$ctrl.greuge.amount"]',
|
||||
description: 'vn-client-greuge-create vn-textfield[ng-model="$ctrl.greuge.description"]',
|
||||
type: 'vn-autocomplete[ng-model="$ctrl.greuge.greugeTypeFk"]',
|
||||
saveButton: 'button[type=submit]',
|
||||
firstGreugeText: 'vn-client-greuge-index vn-card vn-table vn-tbody > vn-tr'
|
||||
},
|
||||
|
@ -166,10 +164,10 @@ export default {
|
|||
},
|
||||
clientBalance: {
|
||||
balanceButton: 'vn-left-menu a[ui-sref="client.card.balance.index"]',
|
||||
companyAutocomplete: 'vn-client-balance-index vn-autocomplete[ng-model="$ctrl.companyId"]',
|
||||
company: 'vn-client-balance-index vn-autocomplete[ng-model="$ctrl.companyId"]',
|
||||
newPaymentButton: `vn-float-button`,
|
||||
newPaymentBank: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.receipt.bankFk"]',
|
||||
newPaymentAmountInput: '.vn-dialog.shown [ng-model="$ctrl.receipt.amountPaid"]',
|
||||
newPaymentAmount: '.vn-dialog.shown vn-input-number[ng-model="$ctrl.receipt.amountPaid"]',
|
||||
saveButton: '.vn-dialog.shown vn-button[label="Save"]',
|
||||
firstBalanceLine: 'vn-client-balance-index vn-tbody > vn-tr:nth-child(1) > vn-td:nth-child(8)'
|
||||
|
||||
|
@ -191,7 +189,7 @@ export default {
|
|||
searchResultPreviewButton: 'vn-item-index .buttons > [icon="desktop_windows"]',
|
||||
searchResultCloneButton: 'vn-item-index .buttons > [icon="icon-clone"]',
|
||||
acceptClonationAlertButton: '.vn-confirm.shown [response="accept"]',
|
||||
searchItemInput: 'vn-searchbar',
|
||||
topbarSearch: 'vn-topbar',
|
||||
searchButton: 'vn-searchbar vn-icon[icon="search"]',
|
||||
closeItemSummaryPreview: '.vn-popup.shown',
|
||||
fieldsToShowButton: 'vn-item-index vn-table > div > div > vn-icon-button[icon="menu"]',
|
||||
|
@ -213,10 +211,10 @@ export default {
|
|||
saveFieldsButton: '.vn-dialog.shown vn-horizontal:nth-child(16) > vn-button > button'
|
||||
},
|
||||
itemCreateView: {
|
||||
temporalName: 'vn-item-create [ng-model="$ctrl.item.provisionalName"]',
|
||||
typeAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.typeFk"]',
|
||||
intrastatAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.intrastatFk"]',
|
||||
originAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.originFk"]',
|
||||
temporalName: 'vn-item-create vn-textfield[ng-model="$ctrl.item.provisionalName"]',
|
||||
type: 'vn-autocomplete[ng-model="$ctrl.item.typeFk"]',
|
||||
intrastat: 'vn-autocomplete[ng-model="$ctrl.item.intrastatFk"]',
|
||||
origin: 'vn-autocomplete[ng-model="$ctrl.item.originFk"]',
|
||||
createButton: 'button[type=submit]',
|
||||
cancelButton: 'vn-button[ui-sref="item.index"]'
|
||||
},
|
||||
|
@ -224,8 +222,8 @@ export default {
|
|||
goBackToModuleIndexButton: 'vn-item-descriptor a[href="#!/item/index"]',
|
||||
moreMenu: 'vn-item-descriptor vn-icon-menu[icon=more_vert]',
|
||||
moreMenuRegularizeButton: '.vn-drop-down.shown li[name="Regularize stock"]',
|
||||
regularizeQuantityInput: '.vn-dialog.shown [ng-model="$ctrl.quantity"]',
|
||||
regularizeWarehouseAutocomplete: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.warehouseFk"]',
|
||||
regularizeQuantity: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.quantity"]',
|
||||
regularizeWarehouse: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.warehouseFk"]',
|
||||
editButton: 'vn-item-descriptor vn-float-button[icon="edit"]',
|
||||
regularizeSaveButton: '.vn-dialog.shown tpl-buttons > button',
|
||||
inactiveIcon: 'vn-item-descriptor vn-icon[icon="icon-unavailable"]',
|
||||
|
@ -234,13 +232,13 @@ export default {
|
|||
itemBasicData: {
|
||||
basicDataButton: 'vn-left-menu a[ui-sref="item.card.basicData"]',
|
||||
goToItemIndexButton: 'vn-item-descriptor [ui-sref="item.index"]',
|
||||
typeAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.typeFk"]',
|
||||
intrastatAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.intrastatFk"]',
|
||||
nameInput: 'vn-item-basic-data [ng-model="$ctrl.item.name"]',
|
||||
relevancyInput: 'vn-item-basic-data [ng-model="$ctrl.item.relevancy"]',
|
||||
originAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.originFk"]',
|
||||
expenseAutocomplete: 'vn-autocomplete[ng-model="$ctrl.item.expenseFk"]',
|
||||
longNameInput: 'vn-textfield[ng-model="$ctrl.item.longName"]',
|
||||
type: 'vn-autocomplete[ng-model="$ctrl.item.typeFk"]',
|
||||
intrastat: 'vn-autocomplete[ng-model="$ctrl.item.intrastatFk"]',
|
||||
name: 'vn-item-basic-data vn-textfield[ng-model="$ctrl.item.name"]',
|
||||
relevancy: 'vn-item-basic-data vn-input-number[ng-model="$ctrl.item.relevancy"]',
|
||||
origin: 'vn-autocomplete[ng-model="$ctrl.item.originFk"]',
|
||||
expense: 'vn-autocomplete[ng-model="$ctrl.item.expenseFk"]',
|
||||
longName: 'vn-textfield[ng-model="$ctrl.item.longName"]',
|
||||
isActiveCheckbox: 'vn-check[label="Active"]',
|
||||
priceInKgCheckbox: 'vn-check[label="Price in kg"]',
|
||||
submitBasicDataButton: `button[type=submit]`
|
||||
|
@ -248,50 +246,50 @@ export default {
|
|||
itemTags: {
|
||||
goToItemIndexButton: 'vn-item-descriptor [ui-sref="item.index"]',
|
||||
tagsButton: 'vn-left-menu a[ui-sref="item.card.tags"]',
|
||||
fourthTagAutocomplete: 'vn-item-tags vn-horizontal:nth-child(4) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
fourthValueInput: 'vn-item-tags vn-horizontal:nth-child(4) [ng-model="itemTag.value"]',
|
||||
fourthRelevancyInput: 'vn-item-tags vn-horizontal:nth-child(4) [ng-model="itemTag.priority"]',
|
||||
fourthTag: 'vn-item-tags vn-horizontal:nth-child(4) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
fourthValue: 'vn-item-tags vn-horizontal:nth-child(4) vn-textfield[ng-model="itemTag.value"]',
|
||||
fourthRelevancy: 'vn-item-tags vn-horizontal:nth-child(4) [ng-model="itemTag.priority"]',
|
||||
fourthRemoveTagButton: 'vn-item-tags vn-horizontal:nth-child(4) vn-icon-button[icon="delete"]',
|
||||
fifthTagAutocomplete: 'vn-item-tags vn-horizontal:nth-child(5) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
fifthValueInput: 'vn-item-tags vn-horizontal:nth-child(5) [ng-model="itemTag.value"]',
|
||||
fifthRelevancyInput: 'vn-item-tags vn-horizontal:nth-child(5) [ng-model="itemTag.priority"]',
|
||||
sixthTagAutocomplete: 'vn-item-tags vn-horizontal:nth-child(6) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
sixthValueInput: 'vn-item-tags vn-horizontal:nth-child(6) [ng-model="itemTag.value"]',
|
||||
sixthRelevancyInput: 'vn-item-tags vn-horizontal:nth-child(6) [ng-model="itemTag.priority"]',
|
||||
seventhTagAutocomplete: 'vn-item-tags vn-horizontal:nth-child(7) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
seventhValueInput: 'vn-item-tags vn-horizontal:nth-child(7) [ng-model="itemTag.value"]',
|
||||
seventhRelevancyInput: 'vn-item-tags vn-horizontal:nth-child(7) [ng-model="itemTag.priority"]',
|
||||
fifthTag: 'vn-item-tags vn-horizontal:nth-child(5) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
fifthValue: 'vn-item-tags vn-horizontal:nth-child(5) vn-textfield[ng-model="itemTag.value"]',
|
||||
fifthRelevancy: 'vn-item-tags vn-horizontal:nth-child(5) vn-textfield[ng-model="itemTag.priority"]',
|
||||
sixthTag: 'vn-item-tags vn-horizontal:nth-child(6) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
sixthValue: 'vn-item-tags vn-horizontal:nth-child(6) vn-textfield[ng-model="itemTag.value"]',
|
||||
sixthRelevancy: 'vn-item-tags vn-horizontal:nth-child(6) vn-textfield[ng-model="itemTag.priority"]',
|
||||
seventhTag: 'vn-item-tags vn-horizontal:nth-child(7) > vn-autocomplete[ng-model="itemTag.tagFk"]',
|
||||
seventhValue: 'vn-item-tags vn-horizontal:nth-child(7) vn-textfield[ng-model="itemTag.value"]',
|
||||
seventhRelevancy: 'vn-item-tags vn-horizontal:nth-child(7) vn-textfield[ng-model="itemTag.priority"]',
|
||||
addItemTagButton: 'vn-item-tags vn-icon-button[icon="add_circle"]',
|
||||
submitItemTagsButton: 'vn-item-tags button[type=submit]'
|
||||
},
|
||||
itemTax: {
|
||||
undoChangesButton: 'vn-item-tax vn-button-bar > vn-button[label="Undo changes"]',
|
||||
firstClassAutocomplete: 'vn-item-tax vn-horizontal:nth-child(1) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
secondClassAutocomplete: 'vn-item-tax vn-horizontal:nth-child(2) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
thirdClassAutocomplete: 'vn-item-tax vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
firstClass: 'vn-item-tax vn-horizontal:nth-child(1) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
secondClass: 'vn-item-tax vn-horizontal:nth-child(2) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
thirdClass: 'vn-item-tax vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="tax.taxClassFk"]',
|
||||
submitTaxButton: 'vn-item-tax button[type=submit]'
|
||||
},
|
||||
itemBarcodes: {
|
||||
addBarcodeButton: 'vn-item-barcode vn-icon[icon="add_circle"]',
|
||||
thirdCodeInput: 'vn-item-barcode vn-horizontal:nth-child(3) [ng-model="barcode.code"]',
|
||||
thirdCode: 'vn-item-barcode vn-horizontal:nth-child(3) vn-textfield[ng-model="barcode.code"]',
|
||||
submitBarcodesButton: 'vn-item-barcode button[type=submit]',
|
||||
firstCodeRemoveButton: 'vn-item-barcode vn-horizontal vn-none vn-icon[icon="delete"]'
|
||||
},
|
||||
itemNiches: {
|
||||
addNicheButton: 'vn-item-niche vn-icon[icon="add_circle"]',
|
||||
firstWarehouseAutocomplete: 'vn-item-niche vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
firstCodeInput: 'vn-item-niche vn-horizontal:nth-child(1) [ng-model="niche.code"]',
|
||||
secondWarehouseAutocomplete: 'vn-item-niche vn-horizontal:nth-child(2) > vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
secondCodeInput: 'vn-item-niche vn-horizontal:nth-child(2) [ng-model="niche.code"]',
|
||||
firstWarehouse: 'vn-item-niche vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
firstCode: 'vn-item-niche vn-horizontal:nth-child(1) vn-textfield[ng-model="niche.code"]',
|
||||
secondWarehouse: 'vn-item-niche vn-horizontal:nth-child(2) > vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
secondCode: 'vn-item-niche vn-horizontal:nth-child(2) vn-textfield[ng-model="niche.code"]',
|
||||
secondNicheRemoveButton: 'vn-item-niche vn-horizontal:nth-child(2) > vn-none > vn-icon-button[icon="delete"]',
|
||||
thirdWarehouseAutocomplete: 'vn-item-niche vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
thirdCodeInput: 'vn-item-niche vn-horizontal:nth-child(3) [ng-model="niche.code"]',
|
||||
thirdWarehouse: 'vn-item-niche vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="niche.warehouseFk"]',
|
||||
thirdCode: 'vn-item-niche vn-horizontal:nth-child(3) vn-textfield[ng-model="niche.code"]',
|
||||
submitNichesButton: 'vn-item-niche button[type=submit]'
|
||||
},
|
||||
itemBotanical: {
|
||||
botanicalInput: 'vn-item-botanical vn-horizontal:nth-child(1) [ng-model="$ctrl.botanical.botanical"]',
|
||||
genusAutocomplete: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.genusFk"]',
|
||||
speciesAutocomplete: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.specieFk"]',
|
||||
botanical: 'vn-item-botanical vn-horizontal:nth-child(1) vn-textfield[ng-model="$ctrl.botanical.botanical"]',
|
||||
genus: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.genusFk"]',
|
||||
species: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.specieFk"]',
|
||||
submitBotanicalButton: `vn-item-botanical button[type=submit]`
|
||||
},
|
||||
itemSummary: {
|
||||
|
@ -306,7 +304,7 @@ export default {
|
|||
secondTicketId: 'vn-item-diary vn-tbody > vn-tr:nth-child(2) > vn-td:nth-child(2) > span',
|
||||
firstBalance: 'vn-item-diary vn-tbody > vn-tr:nth-child(1) > vn-td.balance',
|
||||
fourthBalance: 'vn-item-diary vn-tbody > vn-tr:nth-child(4) > vn-td.balance',
|
||||
warehouseAutocomplete: 'vn-item-diary vn-autocomplete[ng-model="$ctrl.warehouseFk"]',
|
||||
warehouse: 'vn-item-diary vn-autocomplete[ng-model="$ctrl.warehouseFk"]',
|
||||
},
|
||||
itemLog: {
|
||||
anyLineCreated: 'vn-item-log > vn-log vn-tbody > vn-tr',
|
||||
|
@ -330,29 +328,27 @@ export default {
|
|||
},
|
||||
ticketsIndex: {
|
||||
openAdvancedSearchButton: 'vn-searchbar .append vn-icon[icon="arrow_drop_down"]',
|
||||
advancedSearchInvoiceOut: 'vn-ticket-search-panel [ng-model="filter.refFk"]',
|
||||
advancedSearchInvoiceOut: 'vn-ticket-search-panel vn-textfield[ng-model="filter.refFk"]',
|
||||
newTicketButton: 'vn-ticket-index > a',
|
||||
searchResult: 'vn-ticket-index vn-card > vn-table > div > vn-tbody > a.vn-tr',
|
||||
searchWeeklyResult: 'vn-ticket-weekly-index vn-table vn-tbody > vn-tr',
|
||||
searchResultDate: 'vn-ticket-index vn-table vn-tbody > a:nth-child(1) > vn-td:nth-child(5)',
|
||||
searchTicketInput: 'vn-searchbar',
|
||||
searchWeeklyClearInput: 'vn-searchbar vn-icon[icon=clear]',
|
||||
topbarSearch: 'vn-searchbar',
|
||||
advancedSearchButton: 'vn-ticket-search-panel button[type=submit]',
|
||||
searchButton: 'vn-searchbar vn-icon[icon="search"]',
|
||||
searchWeeklyButton: 'vn-searchbar vn-icon[icon="search"]',
|
||||
moreMenu: 'vn-ticket-index vn-icon-menu[icon=more_vert]',
|
||||
menuWeeklyTickets: 'vn-left-menu [ui-sref="ticket.weekly.index"]',
|
||||
sixthWeeklyTicket: 'vn-ticket-weekly-index vn-table vn-tr:nth-child(6)',
|
||||
weeklyTicket: 'vn-ticket-weekly-index vn-table > div > vn-tbody > vn-tr',
|
||||
firstWeeklyTicketDeleteIcon: 'vn-ticket-weekly-index vn-tr:nth-child(1) vn-icon-button[icon="delete"]',
|
||||
acceptDeleteTurn: '.vn-confirm.shown button[response="accept"]'
|
||||
},
|
||||
createTicketView: {
|
||||
clientAutocomplete: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.clientId"]',
|
||||
addressAutocomplete: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.addressId"]',
|
||||
deliveryDateInput: 'vn-ticket-create vn-date-picker[ng-model="$ctrl.landed"]',
|
||||
warehouseAutocomplete: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.warehouseId"]',
|
||||
agencyAutocomplete: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.agencyModeId"]',
|
||||
client: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.clientId"]',
|
||||
address: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.addressId"]',
|
||||
deliveryDate: 'vn-ticket-create vn-date-picker[ng-model="$ctrl.landed"]',
|
||||
warehouse: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.warehouseId"]',
|
||||
agency: 'vn-ticket-create vn-autocomplete[ng-model="$ctrl.agencyModeId"]',
|
||||
createButton: `button[type=submit]`
|
||||
},
|
||||
ticketDescriptor: {
|
||||
|
@ -367,7 +363,7 @@ export default {
|
|||
moreMenuMakeInvoice: '.vn-drop-down.shown li[name="Make invoice"]',
|
||||
moreMenuChangeShippedHour: '.vn-drop-down.shown li[name="Change shipped hour"]',
|
||||
changeShippedHourDialog: '.vn-dialog.shown',
|
||||
changeShippedHourInput: '.vn-dialog.shown [ng-model="$ctrl.newShipped"]',
|
||||
changeShippedHour: '.vn-dialog.shown vn-input-time[ng-model="$ctrl.newShipped"]',
|
||||
addStowawayDialogFirstTicket: '.vn-dialog.shown vn-table vn-tbody vn-tr',
|
||||
shipButton: 'vn-ticket-descriptor vn-icon[icon="icon-stowaway"]',
|
||||
thursdayButton: '.vn-popup.shown vn-tool-bar > vn-button:nth-child(4)',
|
||||
|
@ -381,8 +377,8 @@ export default {
|
|||
ticketNotes: {
|
||||
firstNoteRemoveButton: 'vn-icon[icon="delete"]',
|
||||
addNoteButton: 'vn-icon[icon="add_circle"]',
|
||||
firstNoteTypeAutocomplete: 'vn-autocomplete[ng-model="observation.observationTypeFk"]',
|
||||
firstDescriptionInput: 'vn-ticket-observation [ng-model="observation.description"]',
|
||||
firstNoteType: 'vn-autocomplete[ng-model="observation.observationTypeFk"]',
|
||||
firstDescription: 'vn-ticket-observation vn-textfield[ng-model="observation.description"]',
|
||||
submitNotesButton: 'button[type=submit]'
|
||||
},
|
||||
ticketExpedition: {
|
||||
|
@ -393,8 +389,8 @@ export default {
|
|||
},
|
||||
ticketPackages: {
|
||||
packagesButton: 'vn-left-menu a[ui-sref="ticket.card.package"]',
|
||||
firstPackageAutocomplete: 'vn-autocomplete[label="Package"]',
|
||||
firstQuantityInput: 'vn-ticket-package vn-horizontal:nth-child(1) [ng-model="package.quantity"]',
|
||||
firstPackage: 'vn-autocomplete[label="Package"]',
|
||||
firstQuantity: 'vn-ticket-package vn-horizontal:nth-child(1) vn-input-number[ng-model="package.quantity"]',
|
||||
firstRemovePackageButton: 'vn-icon-button[vn-tooltip="Remove package"]',
|
||||
addPackageButton: 'vn-icon-button[vn-tooltip="Add package"]',
|
||||
clearPackageAutocompleteButton: 'vn-autocomplete[label="Package"] .icons > vn-icon[icon=clear]',
|
||||
|
@ -461,21 +457,18 @@ export default {
|
|||
},
|
||||
ticketTracking: {
|
||||
trackingButton: 'vn-left-menu a[ui-sref="ticket.card.tracking.index"]',
|
||||
createStateButton: `vn-float-button`,
|
||||
stateAutocomplete: 'vn-ticket-tracking-edit vn-autocomplete[ng-model="$ctrl.stateFk"]',
|
||||
saveButton: `button[type=submit]`,
|
||||
createStateButton: 'vn-float-button',
|
||||
saveButton: 'button[type=submit]',
|
||||
cancelButton: 'vn-ticket-tracking-edit vn-button[ui-sref="ticket.card.tracking.index"]'
|
||||
},
|
||||
ticketBasicData: {
|
||||
basicDataButton: 'vn-left-menu a[ui-sref="ticket.card.basicData.stepOne"]',
|
||||
clientAutocomplete: 'vn-autocomplete[ng-model="$ctrl.clientFk"]',
|
||||
addressAutocomplete: 'vn-autocomplete[ng-model="$ctrl.ticket.addressFk"]',
|
||||
agencyAutocomplete: 'vn-autocomplete[ng-model="$ctrl.agencyModeId"]',
|
||||
zoneAutocomplete: 'vn-autocomplete[ng-model="$ctrl.zoneId"]',
|
||||
agency: 'vn-autocomplete[ng-model="$ctrl.agencyModeId"]',
|
||||
zone: 'vn-autocomplete[ng-model="$ctrl.zoneId"]',
|
||||
nextStepButton: 'vn-step-control .buttons > section:last-child vn-button',
|
||||
finalizeButton: 'vn-step-control .buttons > section:last-child button[type=submit]',
|
||||
stepTwoTotalPriceDif: 'vn-ticket-basic-data-step-two vn-tfoot > vn-tr > :nth-child(6)',
|
||||
chargesReasonAutocomplete: 'vn-autocomplete[ng-model="$ctrl.ticket.option"]',
|
||||
chargesReason: 'vn-autocomplete[ng-model="$ctrl.ticket.option"]',
|
||||
},
|
||||
ticketComponents: {
|
||||
base: 'vn-ticket-components [name="base-sum"]'
|
||||
|
@ -484,9 +477,9 @@ export default {
|
|||
addRequestButton: 'vn-ticket-request-index > a > vn-float-button > button',
|
||||
request: 'vn-ticket-request-index vn-table vn-tr',
|
||||
descriptionInput: 'vn-ticket-request-create [ng-model="$ctrl.ticketRequest.description"]',
|
||||
atenderAutocomplete: 'vn-ticket-request-create vn-autocomplete[ng-model="$ctrl.ticketRequest.attenderFk"]',
|
||||
quantityInput: 'vn-ticket-request-create [ng-model="$ctrl.ticketRequest.quantity"]',
|
||||
priceInput: 'vn-ticket-request-create [ng-model="$ctrl.ticketRequest.price"]',
|
||||
atender: 'vn-ticket-request-create vn-autocomplete[ng-model="$ctrl.ticketRequest.attenderFk"]',
|
||||
quantity: 'vn-ticket-request-create vn-input-number[ng-model="$ctrl.ticketRequest.quantity"]',
|
||||
price: 'vn-ticket-request-create vn-input-number[ng-model="$ctrl.ticketRequest.price"]',
|
||||
firstRemoveRequestButton: 'vn-ticket-request-index vn-icon[icon="delete"]:nth-child(1)',
|
||||
saveButton: 'vn-ticket-request-create button[type=submit]',
|
||||
firstDescription: 'vn-ticket-request-index vn-table vn-tr:nth-child(1) > vn-td:nth-child(2) vn-textfield',
|
||||
|
@ -501,20 +494,20 @@ export default {
|
|||
ticketService: {
|
||||
addServiceButton: 'vn-ticket-service vn-icon-button[vn-tooltip="Add service"] > button',
|
||||
firstAddServiceTypeButton: 'vn-ticket-service vn-icon-button[vn-tooltip="New service type"]',
|
||||
firstServiceTypeAutocomplete: 'vn-ticket-service vn-autocomplete[ng-model="service.ticketServiceTypeFk"]',
|
||||
firstQuantityInput: 'vn-ticket-service [ng-model="service.quantity"]',
|
||||
firstPriceInput: 'vn-ticket-service [ng-model="service.price"]',
|
||||
firstVatTypeAutocomplete: 'vn-ticket-service vn-autocomplete[label="Tax class"]',
|
||||
firstServiceType: 'vn-ticket-service vn-autocomplete[ng-model="service.ticketServiceTypeFk"]',
|
||||
firstQuantity: 'vn-ticket-service vn-input-number[ng-model="service.quantity"]',
|
||||
firstPrice: 'vn-ticket-service vn-input-number[ng-model="service.price"]',
|
||||
firstVatType: 'vn-ticket-service vn-autocomplete[label="Tax class"]',
|
||||
fistDeleteServiceButton: 'vn-ticket-service form vn-horizontal:nth-child(1) vn-icon-button[icon="delete"]',
|
||||
newServiceTypeNameInput: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newServiceType.name"]',
|
||||
newServiceTypeExpenseAutocomplete: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.newServiceType.expenseFk"]',
|
||||
newServiceTypeName: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newServiceType.name"]',
|
||||
newServiceTypeExpense: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.newServiceType.expenseFk"]',
|
||||
serviceLine: 'vn-ticket-service > form > vn-card > vn-one:nth-child(2) > vn-horizontal',
|
||||
saveServiceButton: `button[type=submit]`,
|
||||
saveServiceTypeButton: '.vn-dialog.shown tpl-buttons > button'
|
||||
},
|
||||
createStateView: {
|
||||
stateAutocomplete: 'vn-autocomplete[ng-model="$ctrl.stateFk"]',
|
||||
workerAutocomplete: 'vn-autocomplete[ng-model="$ctrl.workerFk"]',
|
||||
state: 'vn-autocomplete[ng-model="$ctrl.stateFk"]',
|
||||
worker: 'vn-autocomplete[ng-model="$ctrl.workerFk"]',
|
||||
clearStateInputButton: 'vn-autocomplete[ng-model="$ctrl.stateFk"] .icons > vn-icon[icon=clear]',
|
||||
saveStateButton: `button[type=submit]`
|
||||
},
|
||||
|
@ -531,7 +524,7 @@ export default {
|
|||
claimSummary: {
|
||||
header: 'vn-claim-summary > vn-card > h5',
|
||||
state: 'vn-claim-summary vn-label-value[label="State"] > section > span',
|
||||
observation: 'vn-claim-summary vn-textarea[ng-model="$ctrl.summary.claim.observation"] textarea',
|
||||
observation: 'vn-claim-summary vn-textarea[ng-model="$ctrl.summary.claim.observation"]',
|
||||
firstSaleItemId: 'vn-claim-summary vn-horizontal > vn-auto:nth-child(4) vn-table > div > vn-tbody > vn-tr:nth-child(1) > vn-td:nth-child(1) > span',
|
||||
firstSaleDescriptorImage: '.vn-popover.shown vn-item-descriptor img',
|
||||
itemDescriptorPopover: '.vn-popover.shown vn-item-descriptor',
|
||||
|
@ -542,14 +535,14 @@ export default {
|
|||
firstActionTicketDescriptor: '.vn-popover.shown vn-ticket-descriptor'
|
||||
},
|
||||
claimBasicData: {
|
||||
claimStateAutocomplete: 'vn-claim-basic-data vn-autocomplete[ng-model="$ctrl.claim.claimStateFk"]',
|
||||
claimState: 'vn-claim-basic-data vn-autocomplete[ng-model="$ctrl.claim.claimStateFk"]',
|
||||
responsabilityInputRange: 'vn-range',
|
||||
observationInput: 'vn-textarea[ng-model="$ctrl.claim.observation"]',
|
||||
observation: 'vn-textarea[ng-model="$ctrl.claim.observation"]',
|
||||
saveButton: `button[type=submit]`
|
||||
},
|
||||
claimDetail: {
|
||||
secondItemDiscount: 'vn-claim-detail > vn-vertical > vn-card > vn-vertical > vn-table > div > vn-tbody > vn-tr:nth-child(2) > vn-td:nth-child(6) > span',
|
||||
discountInput: '.vn-popover.shown [ng-model="$ctrl.newDiscount"]',
|
||||
discount: '.vn-popover.shown vn-input-number[ng-model="$ctrl.newDiscount"]',
|
||||
discoutPopoverMana: '.vn-popover.shown .content > div > vn-horizontal > h5',
|
||||
addItemButton: 'vn-claim-detail a vn-float-button',
|
||||
firstClaimableSaleFromTicket: '.vn-dialog.shown vn-tbody > vn-tr',
|
||||
|
@ -560,16 +553,16 @@ export default {
|
|||
claimDevelopment: {
|
||||
addDevelopmentButton: 'vn-claim-development > vn-vertical > vn-card > vn-vertical > vn-one > vn-icon-button > button > vn-icon',
|
||||
firstDeleteDevelopmentButton: 'vn-claim-development > vn-vertical > vn-card > vn-vertical > form > vn-horizontal:nth-child(2) > vn-icon-button > button > vn-icon',
|
||||
firstClaimReasonAutocomplete: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimReasonFk"]',
|
||||
firstClaimResultAutocomplete: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimResultFk"]',
|
||||
firstClaimResponsibleAutocomplete: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimResponsibleFk"]',
|
||||
firstClaimWorkerAutocomplete: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.workerFk"]',
|
||||
firstClaimRedeliveryAutocomplete: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimRedeliveryFk"]',
|
||||
secondClaimReasonAutocomplete: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimReasonFk"]',
|
||||
secondClaimResultAutocomplete: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimResultFk"]',
|
||||
secondClaimResponsibleAutocomplete: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimResponsibleFk"]',
|
||||
secondClaimWorkerAutocomplete: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.workerFk"]',
|
||||
secondClaimRedeliveryAutocomplete: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimRedeliveryFk"]',
|
||||
firstClaimReason: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimReasonFk"]',
|
||||
firstClaimResult: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimResultFk"]',
|
||||
firstClaimResponsible: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimResponsibleFk"]',
|
||||
firstClaimWorker: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.workerFk"]',
|
||||
firstClaimRedelivery: 'vn-claim-development vn-horizontal:nth-child(1) vn-autocomplete[ng-model="claimDevelopment.claimRedeliveryFk"]',
|
||||
secondClaimReason: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimReasonFk"]',
|
||||
secondClaimResult: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimResultFk"]',
|
||||
secondClaimResponsible: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimResponsibleFk"]',
|
||||
secondClaimWorker: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.workerFk"]',
|
||||
secondClaimRedelivery: 'vn-claim-development vn-horizontal:nth-child(2) vn-autocomplete[ng-model="claimDevelopment.claimRedeliveryFk"]',
|
||||
saveDevelopmentButton: 'button[type=submit]'
|
||||
},
|
||||
claimAction: {
|
||||
|
@ -593,31 +586,29 @@ export default {
|
|||
acceptNavigationButton: '.vn-confirm.shown button[response=accept]'
|
||||
},
|
||||
createOrderView: {
|
||||
clientAutocomplete: 'vn-autocomplete[label="Client"]',
|
||||
addressAutocomplete: 'vn-autocomplete[label="Address"]',
|
||||
agencyAutocomplete: 'vn-autocomplete[label="Agency"]',
|
||||
client: 'vn-autocomplete[label="Client"]',
|
||||
agency: 'vn-autocomplete[label="Agency"]',
|
||||
landedDatePicker: 'vn-date-picker[label="Landed"]',
|
||||
createButton: 'button[type=submit]',
|
||||
cancelButton: 'vn-button[href="#!/client/index"]'
|
||||
},
|
||||
orderCatalog: {
|
||||
orderByAutocomplete: 'vn-autocomplete[label="Order by"]',
|
||||
plantRealmButton: 'vn-order-catalog > vn-side-menu vn-icon[icon="icon-plant"]',
|
||||
typeAutocomplete: 'vn-autocomplete[data="$ctrl.itemTypes"]',
|
||||
itemIdInput: 'vn-catalog-filter vn-textfield[ng-model="$ctrl.itemId"]',
|
||||
itemTagValueInput: 'vn-catalog-filter vn-textfield[ng-model="$ctrl.value"]',
|
||||
type: 'vn-autocomplete[data="$ctrl.itemTypes"]',
|
||||
itemId: 'vn-catalog-filter vn-textfield[ng-model="$ctrl.itemId"]',
|
||||
itemTagValue: 'vn-catalog-filter vn-textfield[ng-model="$ctrl.value"]',
|
||||
openTagSearch: 'vn-catalog-filter > div > vn-vertical > vn-textfield[ng-model="$ctrl.value"] .append i',
|
||||
tagAutocomplete: 'vn-order-catalog-search-panel vn-autocomplete[ng-model="filter.tagFk"]',
|
||||
tagValueInput: 'vn-order-catalog-search-panel [ng-model="filter.value"]',
|
||||
tag: 'vn-order-catalog-search-panel vn-autocomplete[ng-model="filter.tagFk"]',
|
||||
tagValue: 'vn-order-catalog-search-panel vn-textfield[ng-model="filter.value"]',
|
||||
searchTagButton: 'vn-order-catalog-search-panel button[type=submit]',
|
||||
thirdFilterRemoveButton: 'vn-catalog-filter .chips > vn-chip:nth-child(3) vn-icon[icon=cancel]',
|
||||
fourthFilterRemoveButton: 'vn-catalog-filter .chips > vn-chip:nth-child(4) vn-icon[icon=cancel]',
|
||||
},
|
||||
orderBasicData: {
|
||||
clientAutocomplete: 'vn-autocomplete[label="Client"]',
|
||||
addressAutocomplete: 'vn-autocomplete[label="Address"]',
|
||||
agencyAutocomplete: 'vn-autocomplete[label="Agency"]',
|
||||
observationInput: 'vn-textarea[label="Observation"] textarea',
|
||||
client: 'vn-autocomplete[label="Client"]',
|
||||
address: 'vn-autocomplete[label="Address"]',
|
||||
agency: 'vn-autocomplete[label="Agency"]',
|
||||
observation: 'vn-textarea[label="Observation"]',
|
||||
saveButton: `button[type=submit]`,
|
||||
acceptButton: '.vn-confirm.shown button[response="accept"]'
|
||||
},
|
||||
|
@ -631,11 +622,11 @@ export default {
|
|||
addNewRouteButton: 'vn-route-index > a[ui-sref="route.create"]'
|
||||
},
|
||||
createRouteView: {
|
||||
workerAutocomplete: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.workerFk"]',
|
||||
worker: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.workerFk"]',
|
||||
createdDatePicker: 'vn-route-create vn-date-picker[ng-model="$ctrl.route.created"]',
|
||||
vehicleAutoComplete: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.vehicleFk"]',
|
||||
agencyAutoComplete: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.agencyModeFk"]',
|
||||
descriptionInput: 'vn-route-create [ng-model="$ctrl.route.description"]',
|
||||
vehicleAuto: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.vehicleFk"]',
|
||||
agency: 'vn-route-create vn-autocomplete[ng-model="$ctrl.route.agencyModeFk"]',
|
||||
description: 'vn-route-create [ng-model="$ctrl.route.description"]',
|
||||
submitButton: 'vn-route-create button[type=submit]'
|
||||
},
|
||||
routeDescriptor: {
|
||||
|
@ -645,14 +636,13 @@ export default {
|
|||
routeId: 'vn-route-summary > vn-card > vn-horizontal > vn-one:nth-child(1) > vn-label-value:nth-child(1) > section > span'
|
||||
},
|
||||
routeBasicData: {
|
||||
workerAutoComplete: 'vn-route-basic-data vn-autocomplete[ng-model="$ctrl.route.workerFk"]',
|
||||
vehicleAutoComplete: 'vn-route-basic-data vn-autocomplete[ng-model="$ctrl.route.vehicleFk"]',
|
||||
agencyAutoComplete: 'vn-route-basic-data vn-autocomplete[ng-model="$ctrl.route.agencyModeFk"]',
|
||||
kmStartInput: 'vn-route-basic-data [ng-model="$ctrl.route.kmStart"]',
|
||||
kmEndInput: 'vn-route-basic-data [ng-model="$ctrl.route.kmEnd"]',
|
||||
createdDateInput: 'vn-route-basic-data vn-date-picker[ng-model="$ctrl.route.created"]',
|
||||
startedHourInput: 'vn-route-basic-data [ng-model="$ctrl.route.started"]',
|
||||
finishedHourInput: 'vn-route-basic-data [ng-model="$ctrl.route.finished"]',
|
||||
worker: 'vn-route-basic-data vn-autocomplete[ng-model="$ctrl.route.workerFk"]',
|
||||
vehicle: 'vn-route-basic-data vn-autocomplete[ng-model="$ctrl.route.vehicleFk"]',
|
||||
kmStart: 'vn-route-basic-data vn-input-number[ng-model="$ctrl.route.kmStart"]',
|
||||
kmEnd: 'vn-route-basic-data vn-input-number[ng-model="$ctrl.route.kmEnd"]',
|
||||
createdDate: 'vn-route-basic-data vn-date-picker[ng-model="$ctrl.route.created"]',
|
||||
startedHour: 'vn-route-basic-data vn-input-time[ng-model="$ctrl.route.started"]',
|
||||
finishedHour: 'vn-route-basic-data vn-input-time[ng-model="$ctrl.route.finished"]',
|
||||
saveButton: 'vn-route-basic-data button[type=submit]'
|
||||
},
|
||||
routeTickets: {
|
||||
|
@ -667,11 +657,11 @@ export default {
|
|||
confirmButton: '.vn-confirm.shown button[response="accept"]'
|
||||
},
|
||||
workerPbx: {
|
||||
extensionInput: 'vn-worker-pbx [ng-model="$ctrl.worker.sip.extension"]',
|
||||
extension: 'vn-worker-pbx vn-textfield[ng-model="$ctrl.worker.sip.extension"]',
|
||||
saveButton: 'vn-worker-pbx button[type=submit]'
|
||||
},
|
||||
workerTimeControl: {
|
||||
timeDialogInput: '.vn-dialog.shown [ng-model="$ctrl.newTime"]',
|
||||
timeDialog: '.vn-dialog.shown vn-input-time[ng-model="$ctrl.newTime"]',
|
||||
mondayAddTimeButton: 'vn-worker-time-control vn-table > div > vn-tfoot > vn-tr:nth-child(2) > vn-td:nth-child(1) > vn-icon-button',
|
||||
tuesdayAddTimeButton: 'vn-worker-time-control vn-table > div > vn-tfoot > vn-tr:nth-child(2) > vn-td:nth-child(2) > vn-icon-button',
|
||||
wednesdayAddTimeButton: 'vn-worker-time-control vn-table > div > vn-tfoot > vn-tr:nth-child(2) > vn-td:nth-child(3) > vn-icon-button',
|
||||
|
@ -723,7 +713,7 @@ export default {
|
|||
acceptDeleteDialog: '.vn-confirm.shown button[response="accept"]'
|
||||
},
|
||||
invoiceOutIndex: {
|
||||
searchInvoiceOutInput: 'vn-searchbar',
|
||||
topbarSearch: 'vn-searchbar',
|
||||
searchButton: 'vn-searchbar vn-icon[icon="search"]',
|
||||
searchResult: 'vn-invoice-out-index vn-card > vn-table > div > vn-tbody > a.vn-tr',
|
||||
},
|
||||
|
|
|
@ -15,7 +15,7 @@ describe('Client create path', async() => {
|
|||
});
|
||||
|
||||
it(`should search for the user Carol Danvers to confirm it isn't created yet`, async() => {
|
||||
await page.write(selectors.clientsIndex.searchClientInput, 'Carol Danvers');
|
||||
await page.write(selectors.clientsIndex.topbarSearch, 'Carol Danvers');
|
||||
await page.waitToClick(selectors.clientsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.clientsIndex.searchResult, 0);
|
||||
const result = await page.countElement(selectors.clientsIndex.searchResult);
|
||||
|
@ -42,7 +42,7 @@ describe('Client create path', async() => {
|
|||
await page.write(selectors.createClientView.taxNumber, '74451390E');
|
||||
await page.write(selectors.createClientView.userName, 'CaptainMarvel');
|
||||
await page.write(selectors.createClientView.email, 'CarolDanvers@verdnatura.es');
|
||||
await page.autocompleteSearch(selectors.createClientView.salesPersonAutocomplete, 'replenisher');
|
||||
await page.autocompleteSearch(selectors.createClientView.salesPerson, 'replenisher');
|
||||
await page.waitToClick(selectors.createClientView.createButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -18,22 +18,22 @@ describe('Client Edit basicData path', () => {
|
|||
|
||||
describe('as employee', () => {
|
||||
it('should not be able to change the salesPerson', async() => {
|
||||
await page.wait(selectors.clientBasicData.nameInput);
|
||||
await page.wait(selectors.clientBasicData.name);
|
||||
const result = await page.evaluate(selector => {
|
||||
return document.querySelector(selector).disabled;
|
||||
}, `${selectors.clientBasicData.salesPersonAutocomplete} input`);
|
||||
}, `${selectors.clientBasicData.salesPerson} input`);
|
||||
|
||||
expect(result).toBeTruthy();
|
||||
});
|
||||
|
||||
it('should edit the client basic data but leave salesPerson untainted', async() => {
|
||||
await page.clearInput(selectors.clientBasicData.nameInput);
|
||||
await page.write(selectors.clientBasicData.nameInput, 'Ptonomy Wallace');
|
||||
await page.clearInput(selectors.clientBasicData.contactInput);
|
||||
await page.write(selectors.clientBasicData.contactInput, 'David Haller');
|
||||
await page.clearInput(selectors.clientBasicData.emailInput);
|
||||
await page.write(selectors.clientBasicData.emailInput, 'PWallace@verdnatura.es');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.channelAutocomplete, 'Rumors on the streets');
|
||||
await page.clearInput(selectors.clientBasicData.name);
|
||||
await page.write(selectors.clientBasicData.name, 'Ptonomy Wallace');
|
||||
await page.clearInput(selectors.clientBasicData.contact);
|
||||
await page.write(selectors.clientBasicData.contact, 'David Haller');
|
||||
await page.clearInput(selectors.clientBasicData.email);
|
||||
await page.write(selectors.clientBasicData.email, 'PWallace@verdnatura.es');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.channel, 'Rumors on the streets');
|
||||
await page.waitToClick(selectors.clientBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -42,28 +42,28 @@ describe('Client Edit basicData path', () => {
|
|||
|
||||
it('should confirm the name have been edited', async() => {
|
||||
await page.reloadSection('client.card.basicData');
|
||||
const result = await page.waitToGetProperty(selectors.clientBasicData.nameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientBasicData.name, 'value');
|
||||
|
||||
expect(result).toEqual('Ptonomy Wallace');
|
||||
});
|
||||
|
||||
it('should confirm the contact name have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.contactInput, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.contact, 'value');
|
||||
|
||||
expect(result).toEqual('David Haller');
|
||||
});
|
||||
|
||||
it('should confirm the email have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.emailInput, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.email, 'value');
|
||||
|
||||
expect(result).toEqual('PWallace@verdnatura.es');
|
||||
});
|
||||
|
||||
it('should confirm the channel have been selected', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.channelAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.channel, 'value');
|
||||
|
||||
expect(result).toEqual('Rumors on the streets');
|
||||
});
|
||||
|
@ -77,23 +77,23 @@ describe('Client Edit basicData path', () => {
|
|||
});
|
||||
|
||||
it('should be able to change the salesPerson', async() => {
|
||||
await page.wait(selectors.clientBasicData.nameInput);
|
||||
await page.wait(selectors.clientBasicData.name);
|
||||
const result = await page.evaluate(selector => {
|
||||
return document.querySelector(selector).disabled;
|
||||
}, `${selectors.clientBasicData.salesPersonAutocomplete} input`);
|
||||
}, `${selectors.clientBasicData.salesPerson} input`);
|
||||
|
||||
expect(result).toBeFalsy();
|
||||
});
|
||||
|
||||
it('should edit the client basic data including salesPerson', async() => {
|
||||
await page.clearInput(selectors.clientBasicData.nameInput);
|
||||
await page.write(selectors.clientBasicData.nameInput, 'Ororo Munroe');
|
||||
await page.clearInput(selectors.clientBasicData.contactInput);
|
||||
await page.write(selectors.clientBasicData.contactInput, 'Black Panther');
|
||||
await page.clearInput(selectors.clientBasicData.emailInput);
|
||||
await page.write(selectors.clientBasicData.emailInput, 'Storm@verdnatura.es');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.salesPersonAutocomplete, 'replenisherNick');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.channelAutocomplete, 'Metropolis newspaper');
|
||||
await page.clearInput(selectors.clientBasicData.name);
|
||||
await page.write(selectors.clientBasicData.name, 'Ororo Munroe');
|
||||
await page.clearInput(selectors.clientBasicData.contact);
|
||||
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.autocompleteSearch(selectors.clientBasicData.salesPerson, 'replenisherNick');
|
||||
await page.autocompleteSearch(selectors.clientBasicData.channel, 'Metropolis newspaper');
|
||||
await page.waitToClick(selectors.clientBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -102,35 +102,35 @@ describe('Client Edit basicData path', () => {
|
|||
|
||||
it('should now confirm the name have been edited', async() => {
|
||||
await page.reloadSection('client.card.basicData');
|
||||
const result = await page.waitToGetProperty(selectors.clientBasicData.nameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientBasicData.name, 'value');
|
||||
|
||||
expect(result).toEqual('Ororo Munroe');
|
||||
});
|
||||
|
||||
it('should now confirm the contact name have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.contactInput, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.contact, 'value');
|
||||
|
||||
expect(result).toEqual('Black Panther');
|
||||
});
|
||||
|
||||
it('should now confirm the email have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.emailInput, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.email, 'value');
|
||||
|
||||
expect(result).toEqual('Storm@verdnatura.es');
|
||||
});
|
||||
|
||||
it('should confirm the sales person have been selected', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.salesPersonAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.salesPerson, 'value');
|
||||
|
||||
expect(result).toEqual('replenisherNick');
|
||||
});
|
||||
|
||||
it('should now confirm the channel have been selected', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.clientBasicData.channelAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.clientBasicData.channel, 'value');
|
||||
|
||||
expect(result).toEqual('Metropolis newspaper');
|
||||
});
|
||||
|
|
|
@ -58,26 +58,26 @@ describe('Client Edit fiscalData path', () => {
|
|||
});
|
||||
|
||||
it(`should edit the fiscal data but fail as the fiscal id ain't valid`, async() => {
|
||||
await page.wait(selectors.clientFiscalData.socialNameInput);
|
||||
await page.clearInput(selectors.clientFiscalData.socialNameInput);
|
||||
await page.write(selectors.clientFiscalData.socialNameInput, 'SMASH');
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalIdInput);
|
||||
await page.write(selectors.clientFiscalData.fiscalIdInput, 'INVALID!');
|
||||
await page.clearInput(selectors.clientFiscalData.addressInput);
|
||||
await page.write(selectors.clientFiscalData.addressInput, 'Somewhere edited');
|
||||
await page.autocompleteSearch(selectors.clientFiscalData.countryAutocomplete, 'España');
|
||||
await page.autocompleteSearch(selectors.clientFiscalData.provinceAutocomplete, 'Province one');
|
||||
await page.clearInput(selectors.clientFiscalData.cityInput);
|
||||
await page.write(selectors.clientFiscalData.cityInput, 'Valencia');
|
||||
await page.clearInput(selectors.clientFiscalData.postcodeInput);
|
||||
await page.write(selectors.clientFiscalData.postcodeInput, '46000');
|
||||
await page.wait(selectors.clientFiscalData.socialName);
|
||||
await page.clearInput(selectors.clientFiscalData.socialName);
|
||||
await page.write(selectors.clientFiscalData.socialName, 'SMASH');
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalId);
|
||||
await page.write(selectors.clientFiscalData.fiscalId, 'INVALID!');
|
||||
await page.clearInput(selectors.clientFiscalData.address);
|
||||
await page.write(selectors.clientFiscalData.address, 'Somewhere edited');
|
||||
await page.autocompleteSearch(selectors.clientFiscalData.country, 'España');
|
||||
await page.autocompleteSearch(selectors.clientFiscalData.province, 'Province one');
|
||||
await page.clearInput(selectors.clientFiscalData.city);
|
||||
await page.write(selectors.clientFiscalData.city, 'Valencia');
|
||||
await page.clearInput(selectors.clientFiscalData.postcode);
|
||||
await page.write(selectors.clientFiscalData.postcode, '46000');
|
||||
await page.waitToClick(selectors.clientFiscalData.activeCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.frozenCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.hasToInvoiceCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.viesCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.invoiceByMailCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.invoiceByAddressCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.equalizationTaxCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.equalizationTax);
|
||||
await page.waitToClick(selectors.clientFiscalData.verifiedDataCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
@ -86,8 +86,8 @@ describe('Client Edit fiscalData path', () => {
|
|||
}, 15000);
|
||||
|
||||
it(`should edit the fiscal this time with a valid fiscal id`, async() => {
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalIdInput);
|
||||
await page.write(selectors.clientFiscalData.fiscalIdInput, '94980061C');
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalId);
|
||||
await page.write(selectors.clientFiscalData.fiscalId, '94980061C');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -103,8 +103,8 @@ describe('Client Edit fiscalData path', () => {
|
|||
|
||||
it('should receive an error if the fiscal id contains A or B at the beginning', async() => {
|
||||
await page.waitToClick(selectors.clientFiscalData.viesCheckbox);
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalIdInput);
|
||||
await page.write(selectors.clientFiscalData.fiscalIdInput, 'A94980061C');
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalId);
|
||||
await page.write(selectors.clientFiscalData.fiscalId, 'A94980061C');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -112,8 +112,8 @@ describe('Client Edit fiscalData path', () => {
|
|||
});
|
||||
|
||||
it('should finally edit the fixcal data correctly as VIES isnt checked and fiscal id is valid for EQtax', async() => {
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalIdInput);
|
||||
await page.write(selectors.clientFiscalData.fiscalIdInput, '94980061C');
|
||||
await page.clearInput(selectors.clientFiscalData.fiscalId);
|
||||
await page.write(selectors.clientFiscalData.fiscalId, '94980061C');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -151,7 +151,7 @@ describe('Client Edit fiscalData path', () => {
|
|||
it('should navigate back to fiscal data and uncheck EQtax then check VIES', async() => {
|
||||
await page.waitToClick(selectors.clientFiscalData.fiscalDataButton);
|
||||
await page.waitToClick(selectors.clientFiscalData.viesCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.equalizationTaxCheckbox);
|
||||
await page.waitToClick(selectors.clientFiscalData.equalizationTax);
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -167,44 +167,44 @@ describe('Client Edit fiscalData path', () => {
|
|||
|
||||
it('should confirm its name have been edited', async() => {
|
||||
await page.waitToClick(selectors.clientFiscalData.fiscalDataButton);
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialNameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialName, 'value');
|
||||
|
||||
expect(result).toEqual('SMASH');
|
||||
});
|
||||
|
||||
it('should confirm the fiscal id have been edited', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.fiscalIdInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.fiscalId, 'value');
|
||||
|
||||
expect(result).toEqual('94980061C');
|
||||
});
|
||||
|
||||
it('should confirm the address have been edited', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.addressInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.address, 'value');
|
||||
|
||||
expect(result).toEqual('Somewhere edited');
|
||||
});
|
||||
|
||||
it('should confirm the postcode have been edited', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.postcodeInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.postcode, 'value');
|
||||
|
||||
expect(result).toContain('46000');
|
||||
});
|
||||
|
||||
it('should confirm the city have been autocompleted', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.cityInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.city, 'value');
|
||||
|
||||
expect(result).toEqual('Valencia');
|
||||
});
|
||||
|
||||
|
||||
it(`should confirm the province have been autocompleted`, async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.provinceAutocomplete, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.province, 'value');
|
||||
|
||||
expect(result).toEqual('Province one');
|
||||
});
|
||||
|
||||
it('should confirm the country have been autocompleted', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.countryAutocomplete, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.country, 'value');
|
||||
|
||||
expect(result).toEqual('España');
|
||||
});
|
||||
|
@ -246,7 +246,7 @@ describe('Client Edit fiscalData path', () => {
|
|||
});
|
||||
|
||||
it('should confirm Equalization tax checkbox is unchecked', async() => {
|
||||
const result = await page.checkboxState(selectors.clientFiscalData.equalizationTaxCheckbox);
|
||||
const result = await page.checkboxState(selectors.clientFiscalData.equalizationTax);
|
||||
|
||||
expect(result).toBe('unchecked');
|
||||
});
|
||||
|
@ -269,7 +269,7 @@ describe('Client Edit fiscalData path', () => {
|
|||
// confirm invoice by address checkbox gets checked if the EQtax differs between addresses step 2
|
||||
it(`should click on the 1st edit icon to access the address details and uncheck EQtax checkbox`, async() => {
|
||||
await page.waitToClick(selectors.clientAddresses.firstEditAddress);
|
||||
await page.waitForTextInField(selectors.clientAddresses.cityInput, 'Silla');
|
||||
await page.waitForTextInField(selectors.clientAddresses.city, 'Silla');
|
||||
await page.waitToClick(selectors.clientAddresses.equalizationTaxCheckbox);
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
|
|
@ -17,11 +17,11 @@ describe('Client Edit billing data path', () => {
|
|||
});
|
||||
|
||||
it(`should attempt to edit the billing data without an IBAN but fail`, async() => {
|
||||
await page.autocompleteSearch(selectors.clientBillingData.payMethodAutocomplete, 'PayMethod with IBAN');
|
||||
await page.autocompleteSearch(selectors.clientBillingData.swiftBicAutocomplete, 'BBKKESMMMMM');
|
||||
await page.clearInput(selectors.clientBillingData.dueDayInput);
|
||||
await page.write(selectors.clientBillingData.dueDayInput, '60');
|
||||
await page.waitForTextInField(selectors.clientBillingData.dueDayInput, '60');
|
||||
await page.autocompleteSearch(selectors.clientBillingData.payMethod, 'PayMethod with IBAN');
|
||||
await page.autocompleteSearch(selectors.clientBillingData.swiftBic, 'BBKKESMMMMM');
|
||||
await page.clearInput(selectors.clientBillingData.dueDay);
|
||||
await page.write(selectors.clientBillingData.dueDay, '60');
|
||||
await page.waitForTextInField(selectors.clientBillingData.dueDay, '60');
|
||||
await page.waitToClick(selectors.clientBillingData.receivedCoreLCRCheckbox);
|
||||
await page.waitToClick(selectors.clientBillingData.receivedCoreVNLCheckbox);
|
||||
await page.waitToClick(selectors.clientBillingData.receivedB2BVNLCheckbox);
|
||||
|
@ -37,30 +37,30 @@ describe('Client Edit billing data path', () => {
|
|||
await page.write(selectors.clientBillingData.newBankEntityCode, '9999');
|
||||
await page.write(selectors.clientBillingData.newBankEntityBIC, 'GTHMCT');
|
||||
await page.waitToClick(selectors.clientBillingData.acceptBankEntityButton);
|
||||
await page.waitForTextInField(selectors.clientBillingData.swiftBicAutocomplete, 'Gotham City Bank');
|
||||
let newcode = await page.waitToGetProperty(selectors.clientBillingData.swiftBicAutocomplete, 'value');
|
||||
await page.waitForTextInField(selectors.clientBillingData.swiftBic, 'Gotham City Bank');
|
||||
let newcode = await page.waitToGetProperty(selectors.clientBillingData.swiftBic, 'value');
|
||||
|
||||
expect(newcode).toEqual('GTHMCT Gotham City Bank');
|
||||
});
|
||||
|
||||
it(`should confirm the IBAN pay method was sucessfully saved`, async() => {
|
||||
let payMethod = await page.waitToGetProperty(selectors.clientBillingData.payMethodAutocomplete, 'value');
|
||||
let payMethod = await page.waitToGetProperty(selectors.clientBillingData.payMethod, 'value');
|
||||
|
||||
expect(payMethod).toEqual('PayMethod with IBAN');
|
||||
});
|
||||
|
||||
it(`should clear the BIC code field, update the IBAN to see how he BIC code autocompletes`, async() => {
|
||||
await page.write(selectors.clientBillingData.IBANInput, 'ES9121000418450200051332');
|
||||
await page.write(selectors.clientBillingData.IBAN, 'ES9121000418450200051332');
|
||||
await page.keyboard.press('Tab');
|
||||
await page.keyboard.press('Tab');
|
||||
await page.waitForTextInField(selectors.clientBillingData.swiftBicAutocomplete, 'caixesbb');
|
||||
let automaticCode = await page.waitToGetProperty(selectors.clientBillingData.swiftBicAutocomplete, 'value');
|
||||
await page.waitForTextInField(selectors.clientBillingData.swiftBic, 'caixesbb');
|
||||
let automaticCode = await page.waitToGetProperty(selectors.clientBillingData.swiftBic, 'value');
|
||||
|
||||
expect(automaticCode).toEqual('CAIXESBB Caixa Bank');
|
||||
});
|
||||
|
||||
it(`should save the form with all its new data`, async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitFor(3000);
|
||||
await page.waitForWatcherData(selectors.clientBillingData.watcher);
|
||||
await page.waitToClick(selectors.clientBillingData.saveButton);
|
||||
let snackbarMessage = await page.waitForLastSnackbar();
|
||||
|
@ -69,19 +69,19 @@ describe('Client Edit billing data path', () => {
|
|||
});
|
||||
|
||||
it('should confirm the due day have been edited', async() => {
|
||||
let dueDate = await page.waitToGetProperty(selectors.clientBillingData.dueDayInput, 'value');
|
||||
let dueDate = await page.waitToGetProperty(selectors.clientBillingData.dueDay, 'value');
|
||||
|
||||
expect(dueDate).toEqual('60');
|
||||
});
|
||||
|
||||
it('should confirm the IBAN was saved', async() => {
|
||||
let IBAN = await page.waitToGetProperty(selectors.clientBillingData.IBANInput, 'value');
|
||||
let IBAN = await page.waitToGetProperty(selectors.clientBillingData.IBAN, 'value');
|
||||
|
||||
expect(IBAN).toEqual('ES9121000418450200051332');
|
||||
});
|
||||
|
||||
it('should confirm the swift / BIC code was saved', async() => {
|
||||
let code = await page.waitToGetProperty(selectors.clientBillingData.swiftBicAutocomplete, 'value');
|
||||
let code = await page.waitToGetProperty(selectors.clientBillingData.swiftBic, 'value');
|
||||
|
||||
expect(code).toEqual('CAIXESBB Caixa Bank');
|
||||
});
|
||||
|
|
|
@ -25,12 +25,12 @@ describe('Client Add address path', () => {
|
|||
});
|
||||
|
||||
it('should receive an error after clicking save button as consignee, street and town fields are empty', async() => {
|
||||
await page.waitToClick(selectors.clientAddresses.defaultCheckboxInput);
|
||||
await page.autocompleteSearch(selectors.clientAddresses.provinceAutocomplete, 'Province five');
|
||||
await page.write(selectors.clientAddresses.cityInput, 'Valencia');
|
||||
await page.write(selectors.clientAddresses.postcodeInput, '46000');
|
||||
await page.autocompleteSearch(selectors.clientAddresses.agencyAutocomplete, 'Entanglement');
|
||||
await page.write(selectors.clientAddresses.phoneInput, '999887744');
|
||||
await page.waitToClick(selectors.clientAddresses.defaultCheckbox);
|
||||
await page.autocompleteSearch(selectors.clientAddresses.province, 'Province five');
|
||||
await page.write(selectors.clientAddresses.city, 'Valencia');
|
||||
await page.write(selectors.clientAddresses.postcode, '46000');
|
||||
await page.autocompleteSearch(selectors.clientAddresses.agency, 'Entanglement');
|
||||
await page.write(selectors.clientAddresses.phone, '999887744');
|
||||
await page.write(selectors.clientAddresses.mobileInput, '999887744');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
@ -40,8 +40,8 @@ describe('Client Add address path', () => {
|
|||
|
||||
|
||||
it(`should receive an error after clicking save button as consignee, incoterms and customsAgent are empty`, async() => {
|
||||
await page.write(selectors.clientAddresses.consigneeInput, 'Bruce Bunner');
|
||||
await page.write(selectors.clientAddresses.streetAddressInput, '320 Park Avenue New York');
|
||||
await page.write(selectors.clientAddresses.consignee, 'Bruce Bunner');
|
||||
await page.write(selectors.clientAddresses.streetAddress, '320 Park Avenue New York');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -49,7 +49,7 @@ describe('Client Add address path', () => {
|
|||
});
|
||||
|
||||
it(`should receive an error after clicking save button as consignee, incoterms and customsAgent are empty`, async() => {
|
||||
await page.autocompleteSearch(selectors.clientAddresses.incotermsAutocomplete, 'Free Alongside Ship');
|
||||
await page.autocompleteSearch(selectors.clientAddresses.incoterms, 'Free Alongside Ship');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -57,7 +57,7 @@ describe('Client Add address path', () => {
|
|||
});
|
||||
|
||||
it(`should create a new address with all it's data`, async() => {
|
||||
await page.autocompleteSearch(selectors.clientAddresses.customsAgentAutocomplete, 'Agent one');
|
||||
await page.autocompleteSearch(selectors.clientAddresses.customsAgent, 'Agent one');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ describe('Client add address notes path', () => {
|
|||
|
||||
it('should not save a description without observation type', async() => {
|
||||
await page.waitToClick(selectors.clientAddresses.addObservationButton);
|
||||
await page.write(selectors.clientAddresses.firstObservationDescriptionInput, 'first description');
|
||||
await page.write(selectors.clientAddresses.firstObservationDescription, 'first description');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -35,8 +35,8 @@ describe('Client add address notes path', () => {
|
|||
});
|
||||
|
||||
it('should not save an observation type without description', async() => {
|
||||
await page.clearInput(selectors.clientAddresses.firstObservationDescriptionInput);
|
||||
await page.autocompleteSearch(selectors.clientAddresses.firstObservationTypeAutocomplete, 'comercial');
|
||||
await page.clearInput(selectors.clientAddresses.firstObservationDescription);
|
||||
await page.autocompleteSearch(selectors.clientAddresses.firstObservationType, 'comercial');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -44,10 +44,10 @@ describe('Client add address notes path', () => {
|
|||
});
|
||||
|
||||
it('should create two new observations', async() => {
|
||||
await page.write(selectors.clientAddresses.firstObservationDescriptionInput, 'first description');
|
||||
await page.write(selectors.clientAddresses.firstObservationDescription, 'first description');
|
||||
await page.waitToClick(selectors.clientAddresses.addObservationButton);
|
||||
await page.autocompleteSearch(selectors.clientAddresses.secondObservationTypeAutocomplete, 'observation one');
|
||||
await page.write(selectors.clientAddresses.secondObservationDescriptionInput, 'second description');
|
||||
await page.autocompleteSearch(selectors.clientAddresses.secondObservationType, 'observation one');
|
||||
await page.write(selectors.clientAddresses.secondObservationDescription, 'second description');
|
||||
await page.waitToClick(selectors.clientAddresses.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -18,8 +18,8 @@ describe('Client Edit web access path', () => {
|
|||
|
||||
it(`should uncheck the Enable web access checkbox and update the name`, async() => {
|
||||
await page.waitToClick(selectors.clientWebAccess.enableWebAccessCheckbox);
|
||||
await page.clearInput(selectors.clientWebAccess.userNameInput);
|
||||
await page.write(selectors.clientWebAccess.userNameInput, 'Hulk');
|
||||
await page.clearInput(selectors.clientWebAccess.userName);
|
||||
await page.write(selectors.clientWebAccess.userName, 'Hulk');
|
||||
await page.waitToClick(selectors.clientWebAccess.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -28,7 +28,7 @@ describe('Client Edit web access path', () => {
|
|||
|
||||
it('should confirm web access is now unchecked', async() => {
|
||||
await page.waitToClick(selectors.clientBasicData.basicDataButton);
|
||||
await page.wait(selectors.clientBasicData.nameInput);
|
||||
await page.wait(selectors.clientBasicData.name);
|
||||
await page.waitToClick(selectors.clientsIndex.othersButton);
|
||||
await page.waitToClick(selectors.clientWebAccess.webAccessButton);
|
||||
const result = await page.checkboxState(selectors.clientWebAccess.enableWebAccessCheckbox);
|
||||
|
@ -37,7 +37,7 @@ describe('Client Edit web access path', () => {
|
|||
});
|
||||
|
||||
it('should confirm web access name have been updated', async() => {
|
||||
const result = await page.waitToGetProperty(selectors.clientWebAccess.userNameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientWebAccess.userName, 'value');
|
||||
|
||||
expect(result).toEqual('Hulk');
|
||||
});
|
||||
|
|
|
@ -25,8 +25,8 @@ describe('Client Add notes path', () => {
|
|||
});
|
||||
|
||||
it(`should create a note`, async() => {
|
||||
await page.waitFor(selectors.clientNotes.noteInput);
|
||||
await page.type(`${selectors.clientNotes.noteInput} textarea`, 'Meeting with Black Widow 21st 9am');
|
||||
await page.waitFor(selectors.clientNotes.note);
|
||||
await page.type(`${selectors.clientNotes.note} textarea`, 'Meeting with Black Widow 21st 9am');
|
||||
await page.waitToClick(selectors.clientNotes.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -26,8 +26,8 @@ describe('Client Add credit path', () => {
|
|||
|
||||
it(`should edit the credit`, async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.clearInput(selectors.clientCredit.creditInput);
|
||||
await page.write(selectors.clientCredit.creditInput, '999');
|
||||
await page.clearInput(selectors.clientCredit.credit);
|
||||
await page.write(selectors.clientCredit.credit, '999');
|
||||
await page.waitToClick(selectors.clientCredit.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ describe('Client Add greuge path', () => {
|
|||
});
|
||||
|
||||
it(`should receive an error if all fields are empty but date and type on submit`, async() => {
|
||||
await page.autocompleteSearch(selectors.clientGreuge.typeAutocomplete, 'Diff');
|
||||
await page.autocompleteSearch(selectors.clientGreuge.type, 'Diff');
|
||||
await page.waitToClick(selectors.clientGreuge.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -33,9 +33,9 @@ describe('Client Add greuge path', () => {
|
|||
});
|
||||
|
||||
it(`should create a new greuge with all its data`, async() => {
|
||||
await page.write(selectors.clientGreuge.amountInput, '999');
|
||||
await page.waitForTextInField(selectors.clientGreuge.amountInput, '999');
|
||||
await page.write(selectors.clientGreuge.descriptionInput, 'new armor for Batman!');
|
||||
await page.write(selectors.clientGreuge.amount, '999');
|
||||
await page.waitForTextInField(selectors.clientGreuge.amount, '999');
|
||||
await page.write(selectors.clientGreuge.description, 'new armor for Batman!');
|
||||
await page.waitToClick(selectors.clientGreuge.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -26,9 +26,9 @@ describe('Client lock verified data path', () => {
|
|||
});
|
||||
|
||||
it('should edit the social name', async() => {
|
||||
await page.wait(selectors.clientFiscalData.socialNameInput);
|
||||
await page.clearInput(selectors.clientFiscalData.socialNameInput);
|
||||
await page.write(selectors.clientFiscalData.socialNameInput, 'Captain America Civil War');
|
||||
await page.wait(selectors.clientFiscalData.socialName);
|
||||
await page.clearInput(selectors.clientFiscalData.socialName);
|
||||
await page.write(selectors.clientFiscalData.socialName, 'Captain America Civil War');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -37,7 +37,7 @@ describe('Client lock verified data path', () => {
|
|||
|
||||
it('should confirm the social name have been edited', async() => {
|
||||
await page.reloadSection('client.card.fiscalData');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialNameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialName, 'value');
|
||||
|
||||
expect(result).toEqual('Captain America Civil War');
|
||||
});
|
||||
|
@ -72,9 +72,9 @@ describe('Client lock verified data path', () => {
|
|||
});
|
||||
|
||||
it('should again edit the social name', async() => {
|
||||
await page.wait(selectors.clientFiscalData.socialNameInput);
|
||||
await page.clearInput(selectors.clientFiscalData.socialNameInput);
|
||||
await page.write(selectors.clientFiscalData.socialNameInput, 'Ant man and the Wasp');
|
||||
await page.wait(selectors.clientFiscalData.socialName);
|
||||
await page.clearInput(selectors.clientFiscalData.socialName);
|
||||
await page.write(selectors.clientFiscalData.socialName, 'Ant man and the Wasp');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -83,7 +83,7 @@ describe('Client lock verified data path', () => {
|
|||
|
||||
it('should again confirm the social name have been edited', async() => {
|
||||
await page.reloadSection('client.card.fiscalData');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialNameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialName, 'value');
|
||||
|
||||
expect(result).toEqual('Ant man and the Wasp');
|
||||
});
|
||||
|
@ -103,8 +103,8 @@ describe('Client lock verified data path', () => {
|
|||
});
|
||||
|
||||
it('should not be able to save change throwing a verified data error', async() => {
|
||||
await page.clearInput(selectors.clientFiscalData.socialNameInput);
|
||||
await page.write(selectors.clientFiscalData.socialNameInput, 'This wont happen');
|
||||
await page.clearInput(selectors.clientFiscalData.socialName);
|
||||
await page.write(selectors.clientFiscalData.socialName, 'This wont happen');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -127,8 +127,8 @@ describe('Client lock verified data path', () => {
|
|||
});
|
||||
|
||||
it('should now edit the social name', async() => {
|
||||
await page.clearInput(selectors.clientFiscalData.socialNameInput);
|
||||
await page.write(selectors.clientFiscalData.socialNameInput, 'new social name edition');
|
||||
await page.clearInput(selectors.clientFiscalData.socialName);
|
||||
await page.write(selectors.clientFiscalData.socialName, 'new social name edition');
|
||||
await page.waitToClick(selectors.clientFiscalData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -137,7 +137,7 @@ describe('Client lock verified data path', () => {
|
|||
|
||||
it('should now confirm the social name have been edited once and for all', async() => {
|
||||
await page.reloadSection('client.card.fiscalData');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialNameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.clientFiscalData.socialName, 'value');
|
||||
|
||||
expect(result).toEqual('new social name edition');
|
||||
});
|
||||
|
@ -158,7 +158,7 @@ describe('Client lock verified data path', () => {
|
|||
});
|
||||
|
||||
it('should confirm the form is enabled for salesPerson', async() => {
|
||||
await page.wait(selectors.clientFiscalData.socialNameInput);
|
||||
await page.wait(selectors.clientFiscalData.socialName);
|
||||
const result = await page.evaluate(selector => {
|
||||
return document.querySelector(selector).disabled;
|
||||
}, 'vn-textfield[ng-model="$ctrl.client.socialName"] > div');
|
||||
|
|
|
@ -17,8 +17,8 @@ describe('Client log path', () => {
|
|||
});
|
||||
|
||||
it('should update the clients name', async() => {
|
||||
await page.clearInput(selectors.clientBasicData.nameInput);
|
||||
await page.write(selectors.clientBasicData.nameInput, 'this is a test');
|
||||
await page.clearInput(selectors.clientBasicData.name);
|
||||
await page.write(selectors.clientBasicData.name, 'this is a test');
|
||||
await page.waitToClick(selectors.clientBasicData.saveButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ describe('Client balance path', () => {
|
|||
|
||||
it('should access to the balance section to check the data shown matches the local settings', async() => {
|
||||
await page.accessToSection('client.card.balance.index');
|
||||
let result = await page.waitToGetProperty(selectors.clientBalance.companyAutocomplete, 'value');
|
||||
let result = await page.waitToGetProperty(selectors.clientBalance.company, 'value');
|
||||
|
||||
expect(result).toEqual('CCs');
|
||||
});
|
||||
|
@ -50,10 +50,9 @@ describe('Client balance path', () => {
|
|||
});
|
||||
|
||||
it('should create a new payment that clears the debt', async() => {
|
||||
await Promise.all([
|
||||
page.waitToClick(selectors.clientBalance.newPaymentButton),
|
||||
page.waitForSelector('.vn-dialog.vn-popup.shown', {visible: true})
|
||||
]);
|
||||
await page.waitToClick(selectors.clientBalance.newPaymentButton);
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitForSelector('.vn-dialog.vn-popup.shown', {visible: true});
|
||||
await page.autocompleteSearch(selectors.clientBalance.newPaymentBank, 'Pay on receipt');
|
||||
await page.waitToClick(selectors.clientBalance.saveButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
@ -64,7 +63,7 @@ describe('Client balance path', () => {
|
|||
it('should check balance is now 0 and the company is now VNL becouse the user local settings were removed', async() => {
|
||||
await page.waitForSpinnerLoad();
|
||||
let company = await page
|
||||
.waitToGetProperty(selectors.clientBalance.companyAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.clientBalance.company, 'value');
|
||||
|
||||
let firstBalanceLine = await page
|
||||
.waitToGetProperty(selectors.clientBalance.firstBalanceLine, 'innerText');
|
||||
|
@ -77,8 +76,8 @@ describe('Client balance path', () => {
|
|||
it('should create a new payment that sets the balance to positive value', async() => {
|
||||
await page.waitToClick(selectors.clientBalance.newPaymentButton);
|
||||
await page.waitFor(3000); // didn't manage to make this dynamic to allow clearInput to find the icon clear... :(
|
||||
await page.clearInput(selectors.clientBalance.newPaymentAmountInput);
|
||||
await page.write(selectors.clientBalance.newPaymentAmountInput, '100');
|
||||
await page.clearInput(selectors.clientBalance.newPaymentAmount);
|
||||
await page.write(selectors.clientBalance.newPaymentAmount, '100');
|
||||
await page.waitToClick(selectors.clientBalance.saveButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -96,8 +95,8 @@ describe('Client balance path', () => {
|
|||
await page.waitToClick(selectors.clientBalance.newPaymentButton);
|
||||
await page.waitFor(3000); // didn't manage to make this dynamic to allow clearInput to find the icon clear... :(
|
||||
await page.waitForSelector('.vn-dialog.vn-popup.shown', {visible: true});
|
||||
await page.clearInput(selectors.clientBalance.newPaymentAmountInput);
|
||||
await page.write(selectors.clientBalance.newPaymentAmountInput, '-150');
|
||||
await page.clearInput(selectors.clientBalance.newPaymentAmount);
|
||||
await page.write(selectors.clientBalance.newPaymentAmount, '-150');
|
||||
await page.waitToClick(selectors.clientBalance.saveButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -123,7 +122,7 @@ describe('Client balance path', () => {
|
|||
});
|
||||
|
||||
it('should now search for the user Petter Parker', async() => {
|
||||
await page.write(selectors.clientsIndex.searchClientInput, 'Petter Parker');
|
||||
await page.write(selectors.clientsIndex.topbarSearch, 'Petter Parker');
|
||||
await page.waitToClick(selectors.clientsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.clientsIndex.searchResult, 1);
|
||||
let resultCount = await page.countElement(selectors.clientsIndex.searchResult);
|
||||
|
|
|
@ -16,20 +16,22 @@ describe('User config', () => {
|
|||
describe('as salesPerson', () => {
|
||||
it('should login', async() => {
|
||||
await page.login('salesPerson');
|
||||
await page.waitForContentLoaded();
|
||||
});
|
||||
|
||||
it('should now open the user config form to check the settings', async() => {
|
||||
await page.waitToClick(selectors.globalItems.userMenuButton);
|
||||
await page.waitFor(1000);
|
||||
|
||||
let userLocalWarehouse = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalWarehouse, 'value');
|
||||
let expectedLocalWarehouse = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalWarehouse, 'value', '');
|
||||
|
||||
|
||||
let userLocalBank = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalBank, 'value');
|
||||
let expectedLocalBank = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalBank, 'value', '');
|
||||
|
||||
let userLocalCompany = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalCompany, 'value');
|
||||
let expectedLocalCompany = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalCompany, 'value', '');
|
||||
|
||||
let userWarehouse = await page
|
||||
.waitToGetProperty(selectors.globalItems.userWarehouse, 'value');
|
||||
|
@ -37,9 +39,9 @@ describe('User config', () => {
|
|||
let userCompany = await page
|
||||
.waitToGetProperty(selectors.globalItems.userCompany, 'value');
|
||||
|
||||
expect(userLocalWarehouse).toEqual('');
|
||||
expect(userLocalBank).toEqual('');
|
||||
expect(userLocalCompany).toEqual('');
|
||||
expect(expectedLocalWarehouse).toBeTruthy();
|
||||
expect(expectedLocalBank).toBeTruthy();
|
||||
expect(expectedLocalCompany).toBeTruthy();
|
||||
expect(userWarehouse).toEqual('Warehouse Three');
|
||||
expect(userCompany).toEqual('VNH');
|
||||
});
|
||||
|
@ -48,18 +50,21 @@ describe('User config', () => {
|
|||
describe('as employee', () => {
|
||||
it('should log in', async() => {
|
||||
await page.login('employee');
|
||||
await page.waitForContentLoaded();
|
||||
});
|
||||
|
||||
it('should open the user config form to check the settings', async() => {
|
||||
await page.waitToClick(selectors.globalItems.userMenuButton);
|
||||
let userLocalWarehouse = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalWarehouse, 'value');
|
||||
await page.waitFor(1000);
|
||||
let expectedLocalWarehouse = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalWarehouse, 'value', '');
|
||||
|
||||
let userLocalBank = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalBank, 'value');
|
||||
|
||||
let userLocalCompany = await page
|
||||
.waitToGetProperty(selectors.globalItems.userLocalCompany, 'value');
|
||||
let expectedLocalBank = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalBank, 'value', '');
|
||||
|
||||
let expectedLocalCompany = await page
|
||||
.expectPropertyValue(selectors.globalItems.userLocalCompany, 'value', '');
|
||||
|
||||
let userWarehouse = await page
|
||||
.waitToGetProperty(selectors.globalItems.userWarehouse, 'value');
|
||||
|
@ -67,9 +72,9 @@ describe('User config', () => {
|
|||
let userCompany = await page
|
||||
.waitToGetProperty(selectors.globalItems.userCompany, 'value');
|
||||
|
||||
expect(userLocalWarehouse).toEqual('');
|
||||
expect(userLocalBank).toEqual('');
|
||||
expect(userLocalCompany).toEqual('');
|
||||
expect(expectedLocalWarehouse).toBeTruthy();
|
||||
expect(expectedLocalBank).toBeTruthy();
|
||||
expect(expectedLocalCompany).toBeTruthy();
|
||||
expect(userWarehouse).toEqual('Warehouse Two');
|
||||
expect(userCompany).toEqual('CCs');
|
||||
});
|
||||
|
@ -87,6 +92,7 @@ describe('User config', () => {
|
|||
describe('as salesPerson 2nd run', () => {
|
||||
it('should log in once more', async() => {
|
||||
await page.login('salesPerson');
|
||||
await page.waitForContentLoaded();
|
||||
});
|
||||
|
||||
it('should again open the user config form to check the local settings', async() => {
|
||||
|
|
|
@ -17,8 +17,7 @@ describe('Worker pbx path', () => {
|
|||
});
|
||||
|
||||
it('should receive an error when the extension exceeds 4 characters', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.write(selectors.workerPbx.extensionInput, '55555');
|
||||
await page.write(selectors.workerPbx.extension, '55555');
|
||||
await page.waitToClick(selectors.workerPbx.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -26,8 +25,8 @@ describe('Worker pbx path', () => {
|
|||
});
|
||||
|
||||
it('should sucessfully save the changes', async() => {
|
||||
await page.clearInput(selectors.workerPbx.extensionInput);
|
||||
await page.write(selectors.workerPbx.extensionInput, '4444');
|
||||
await page.clearInput(selectors.workerPbx.extension);
|
||||
await page.write(selectors.workerPbx.extension, '4444');
|
||||
await page.waitToClick(selectors.workerPbx.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '07:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.mondayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfMonday, 'innerText');
|
||||
|
||||
|
@ -34,7 +34,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.mondayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfMonday, 'innerText');
|
||||
|
||||
|
@ -45,7 +45,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '18:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.mondayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfMonday, 'innerText');
|
||||
|
||||
|
@ -67,7 +67,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '14:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.mondayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfMonday, 'innerText');
|
||||
|
||||
|
@ -78,7 +78,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:20';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.mondayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.fourthEntryOfMonday, 'innerText');
|
||||
|
||||
|
@ -108,7 +108,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '08:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.tuesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfTuesday, 'innerText');
|
||||
|
||||
|
@ -119,7 +119,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.tuesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfTuesday, 'innerText');
|
||||
|
||||
|
@ -130,7 +130,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:20';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.tuesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfTuesday, 'innerText');
|
||||
|
||||
|
@ -141,7 +141,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '16:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.tuesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.fourthEntryOfTuesday, 'innerText');
|
||||
|
||||
|
@ -161,7 +161,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '09:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.wednesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfWednesday, 'innerText');
|
||||
|
||||
|
@ -172,7 +172,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.wednesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfWednesday, 'innerText');
|
||||
|
||||
|
@ -183,7 +183,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '10:20';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.wednesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfWednesday, 'innerText');
|
||||
|
||||
|
@ -194,7 +194,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '17:00';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.wednesdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.fourthEntryOfWednesday, 'innerText');
|
||||
|
||||
|
@ -214,7 +214,7 @@ xdescribe('Worker time control path', () => {
|
|||
const scanTime = '09:59';
|
||||
|
||||
await page.waitToClick(selectors.workerTimeControl.thursdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfThursday, 'innerText');
|
||||
|
||||
|
@ -224,7 +224,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should joyfully scan out Hank Pym for break`, async() => {
|
||||
const scanTime = '10:00';
|
||||
await page.waitToClick(selectors.workerTimeControl.thursdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfThursday, 'innerText');
|
||||
|
||||
|
@ -234,7 +234,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should joyfully scan in Hank Pym from the break`, async() => {
|
||||
const scanTime = '10:20';
|
||||
await page.waitToClick(selectors.workerTimeControl.thursdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfThursday, 'innerText');
|
||||
|
||||
|
@ -244,7 +244,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should joyfully scan out Hank Pym for the day`, async() => {
|
||||
const scanTime = '17:59';
|
||||
await page.waitToClick(selectors.workerTimeControl.thursdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.fourthEntryOfThursday, 'innerText');
|
||||
|
||||
|
@ -263,7 +263,7 @@ xdescribe('Worker time control path', () => {
|
|||
it('should smilingly scan in Hank Pym', async() => {
|
||||
const scanTime = '07:30';
|
||||
await page.waitToClick(selectors.workerTimeControl.fridayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfFriday, 'innerText');
|
||||
|
||||
|
@ -273,7 +273,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should smilingly scan out Hank Pym for break`, async() => {
|
||||
const scanTime = '10:00';
|
||||
await page.waitToClick(selectors.workerTimeControl.fridayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfFriday, 'innerText');
|
||||
|
||||
|
@ -283,7 +283,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should smilingly scan in Hank Pym from the break`, async() => {
|
||||
const scanTime = '10:20';
|
||||
await page.waitToClick(selectors.workerTimeControl.fridayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.thirdEntryOfFriday, 'innerText');
|
||||
|
||||
|
@ -293,7 +293,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should smilingly scan out Hank Pym for the day`, async() => {
|
||||
const scanTime = '15:30';
|
||||
await page.waitToClick(selectors.workerTimeControl.fridayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.fourthEntryOfFriday, 'innerText');
|
||||
|
||||
|
@ -324,7 +324,7 @@ xdescribe('Worker time control path', () => {
|
|||
it('should lovingly scan in Hank Pym', async() => {
|
||||
const scanTime = '06:00';
|
||||
await page.waitToClick(selectors.workerTimeControl.saturdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfSaturday, 'innerText');
|
||||
|
||||
|
@ -334,7 +334,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should lovingly scan out Hank Pym for the day with no break to leave a bit early`, async() => {
|
||||
const scanTime = '13:40';
|
||||
await page.waitToClick(selectors.workerTimeControl.saturdayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfSaturday, 'innerText');
|
||||
|
||||
|
@ -353,7 +353,7 @@ xdescribe('Worker time control path', () => {
|
|||
it('should gladly scan in Hank Pym', async() => {
|
||||
const scanTime = '05:00';
|
||||
await page.waitToClick(selectors.workerTimeControl.sundayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.firstEntryOfSunday, 'innerText');
|
||||
|
||||
|
@ -363,7 +363,7 @@ xdescribe('Worker time control path', () => {
|
|||
it(`should gladly scan out Hank Pym for the day with no break to leave a bit early`, async() => {
|
||||
const scanTime = '12:40';
|
||||
await page.waitToClick(selectors.workerTimeControl.sundayAddTimeButton);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialogInput, scanTime);
|
||||
await page.pickTime(selectors.workerTimeControl.timeDialog, scanTime);
|
||||
await page.waitToClick(selectors.workerTimeControl.confirmButton);
|
||||
const result = await page.waitToGetProperty(selectors.workerTimeControl.secondEntryOfSunday, 'innerText');
|
||||
|
||||
|
|
|
@ -15,8 +15,8 @@ describe('Item summary path', () => {
|
|||
});
|
||||
|
||||
it('should search for an item', async() => {
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Ranged weapon longbow 2m');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Ranged weapon longbow 2m');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -76,7 +76,7 @@ describe('Item summary path', () => {
|
|||
it('should search for other item', async() => {
|
||||
await page.clearInput('vn-searchbar');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Melee weapon combat fist 15cm');
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Melee weapon combat fist 15cm');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
|
|
@ -21,16 +21,16 @@ describe('Item Edit basic data path', () => {
|
|||
});
|
||||
|
||||
it(`should edit the item basic data`, async() => {
|
||||
await page.clearInput(selectors.itemBasicData.nameInput);
|
||||
await page.write(selectors.itemBasicData.nameInput, 'Rose of Purity');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.typeAutocomplete, 'Anthurium');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.intrastatAutocomplete, 'Coral y materiales similares');
|
||||
await page.clearInput(selectors.itemBasicData.relevancyInput);
|
||||
await page.write(selectors.itemBasicData.relevancyInput, '1');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.originAutocomplete, 'Spain');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.expenseAutocomplete, 'Alquiler VNH');
|
||||
await page.clearInput(selectors.itemBasicData.longNameInput);
|
||||
await page.write(selectors.itemBasicData.longNameInput, 'RS Rose of Purity');
|
||||
await page.clearInput(selectors.itemBasicData.name);
|
||||
await page.write(selectors.itemBasicData.name, 'Rose of Purity');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.type, 'Anthurium');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.intrastat, 'Coral y materiales similares');
|
||||
await page.clearInput(selectors.itemBasicData.relevancy);
|
||||
await page.write(selectors.itemBasicData.relevancy, '1');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.origin, 'Spain');
|
||||
await page.autocompleteSearch(selectors.itemBasicData.expense, 'Alquiler VNH');
|
||||
await page.clearInput(selectors.itemBasicData.longName);
|
||||
await page.write(selectors.itemBasicData.longName, 'RS Rose of Purity');
|
||||
await page.waitToClick(selectors.itemBasicData.isActiveCheckbox);
|
||||
await page.waitToClick(selectors.itemBasicData.priceInKgCheckbox);
|
||||
await page.waitToClick(selectors.itemBasicData.submitBasicDataButton);
|
||||
|
@ -42,49 +42,49 @@ 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.nameInput, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.itemBasicData.name, 'value');
|
||||
|
||||
expect(result).toEqual('Rose of Purity');
|
||||
});
|
||||
|
||||
it(`should confirm the item type was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.typeAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.type, 'value');
|
||||
|
||||
expect(result).toEqual('Anthurium');
|
||||
});
|
||||
|
||||
it(`should confirm the item intrastad was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.intrastatAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.intrastat, 'value');
|
||||
|
||||
expect(result).toEqual('5080000 Coral y materiales similares');
|
||||
});
|
||||
|
||||
it(`should confirm the item relevancy was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.relevancyInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.relevancy, 'value');
|
||||
|
||||
expect(result).toEqual('1');
|
||||
});
|
||||
|
||||
it(`should confirm the item origin was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.originAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.origin, 'value');
|
||||
|
||||
expect(result).toEqual('Spain');
|
||||
});
|
||||
|
||||
it(`should confirm the item expence was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.expenseAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.expense, 'value');
|
||||
|
||||
expect(result).toEqual('Alquiler VNH');
|
||||
});
|
||||
|
||||
it(`should confirm the item long name was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.longNameInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.longName, 'value');
|
||||
|
||||
expect(result).toEqual('RS Rose of Purity');
|
||||
});
|
||||
|
|
|
@ -17,9 +17,9 @@ describe('Item edit tax path', () => {
|
|||
});
|
||||
|
||||
it(`should add the item tax to all countries`, async() => {
|
||||
await page.autocompleteSearch(selectors.itemTax.firstClassAutocomplete, 'General VAT');
|
||||
await page.autocompleteSearch(selectors.itemTax.secondClassAutocomplete, 'General VAT');
|
||||
await page.autocompleteSearch(selectors.itemTax.thirdClassAutocomplete, 'General VAT');
|
||||
await page.autocompleteSearch(selectors.itemTax.firstClass, 'General VAT');
|
||||
await page.autocompleteSearch(selectors.itemTax.secondClass, 'General VAT');
|
||||
await page.autocompleteSearch(selectors.itemTax.thirdClass, 'General VAT');
|
||||
await page.waitToClick(selectors.itemTax.submitTaxButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -28,35 +28,35 @@ describe('Item edit tax path', () => {
|
|||
|
||||
it(`should confirm the first item tax class was edited`, async() => {
|
||||
await page.reloadSection('item.card.tax');
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClassAutocomplete, 'value');
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClass, 'value');
|
||||
|
||||
expect(firstVatType).toEqual('General VAT');
|
||||
});
|
||||
|
||||
it(`should confirm the second item tax class was edited`, async() => {
|
||||
const secondVatType = await page
|
||||
.waitToGetProperty(selectors.itemTax.secondClassAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemTax.secondClass, 'value');
|
||||
|
||||
expect(secondVatType).toEqual('General VAT');
|
||||
});
|
||||
|
||||
it(`should confirm the third item tax class was edited`, async() => {
|
||||
const thirdVatType = await page
|
||||
.waitToGetProperty(selectors.itemTax.thirdClassAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemTax.thirdClass, 'value');
|
||||
|
||||
expect(thirdVatType).toEqual('General VAT');
|
||||
});
|
||||
|
||||
it(`should edit the first class without saving the form`, async() => {
|
||||
await page.autocompleteSearch(selectors.itemTax.firstClassAutocomplete, 'Reduced VAT');
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClassAutocomplete, 'value');
|
||||
await page.autocompleteSearch(selectors.itemTax.firstClass, 'Reduced VAT');
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClass, 'value');
|
||||
|
||||
expect(firstVatType).toEqual('Reduced VAT');
|
||||
});
|
||||
|
||||
it(`should now click the undo changes button and see the changes works`, async() => {
|
||||
await page.waitToClick(selectors.itemTax.undoChangesButton);
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClassAutocomplete, 'value');
|
||||
const firstVatType = await page.waitToGetProperty(selectors.itemTax.firstClass, 'value');
|
||||
|
||||
expect(firstVatType).toEqual('General VAT');
|
||||
});
|
||||
|
|
|
@ -19,10 +19,10 @@ describe('Item create tags path', () => {
|
|||
it(`should create a new tag and delete a former one`, async() => {
|
||||
await page.waitToClick(selectors.itemTags.fourthRemoveTagButton);
|
||||
await page.waitToClick(selectors.itemTags.addItemTagButton);
|
||||
await page.autocompleteSearch(selectors.itemTags.seventhTagAutocomplete, 'Ancho de la base');
|
||||
await page.write(selectors.itemTags.seventhValueInput, '50');
|
||||
await page.clearInput(selectors.itemTags.seventhRelevancyInput);
|
||||
await page.write(selectors.itemTags.seventhRelevancyInput, '4');
|
||||
await page.autocompleteSearch(selectors.itemTags.seventhTag, 'Ancho de la base');
|
||||
await page.write(selectors.itemTags.seventhValue, '50');
|
||||
await page.clearInput(selectors.itemTags.seventhRelevancy);
|
||||
await page.write(selectors.itemTags.seventhRelevancy, '4');
|
||||
await page.waitToClick(selectors.itemTags.submitItemTagsButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -32,30 +32,30 @@ describe('Item create tags path', () => {
|
|||
it(`should confirm the fourth row data is the expected one`, async() => {
|
||||
await page.reloadSection('item.card.tags');
|
||||
await page.wait('vn-item-tags');
|
||||
let result = await page.waitToGetProperty(selectors.itemTags.fourthTagAutocomplete, 'value');
|
||||
let result = await page.waitToGetProperty(selectors.itemTags.fourthTag, 'value');
|
||||
|
||||
expect(result).toEqual('Ancho de la base');
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemTags.fourthValueInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.fourthValue, 'value');
|
||||
|
||||
expect(result).toEqual('50');
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemTags.fourthRelevancyInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.fourthRelevancy, 'value');
|
||||
|
||||
expect(result).toEqual('4');
|
||||
});
|
||||
|
||||
it(`should confirm the fifth row data is the expected one`, async() => {
|
||||
let tag = await page
|
||||
.waitToGetProperty(selectors.itemTags.fifthTagAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.fifthTag, 'value');
|
||||
|
||||
let value = await page
|
||||
.waitToGetProperty(selectors.itemTags.fifthValueInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.fifthValue, 'value');
|
||||
|
||||
let relevancy = await page
|
||||
.waitToGetProperty(selectors.itemTags.fifthRelevancyInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.fifthRelevancy, 'value');
|
||||
|
||||
expect(tag).toEqual('Color');
|
||||
expect(value).toEqual('Brown');
|
||||
|
@ -64,13 +64,13 @@ describe('Item create tags path', () => {
|
|||
|
||||
it(`should confirm the sixth row data is the expected one`, async() => {
|
||||
let tag = await page
|
||||
.waitToGetProperty(selectors.itemTags.sixthTagAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.sixthTag, 'value');
|
||||
|
||||
let value = await page
|
||||
.waitToGetProperty(selectors.itemTags.sixthValueInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.sixthValue, 'value');
|
||||
|
||||
let relevancy = await page
|
||||
.waitToGetProperty(selectors.itemTags.sixthRelevancyInput, 'value');
|
||||
.waitToGetProperty(selectors.itemTags.sixthRelevancy, 'value');
|
||||
|
||||
expect(tag).toEqual('Categoria');
|
||||
expect(value).toEqual('+1 precission');
|
||||
|
|
|
@ -17,11 +17,11 @@ describe('Item create niche path', () => {
|
|||
});
|
||||
|
||||
it(`should click create a new niche and delete a former one`, async() => {
|
||||
await page.waitForTextInField(selectors.itemNiches.firstWarehouseAutocomplete, 'Warehouse One');
|
||||
await page.waitForTextInField(selectors.itemNiches.firstWarehouse, 'Warehouse One');
|
||||
await page.waitToClick(selectors.itemNiches.addNicheButton);
|
||||
await page.waitToClick(selectors.itemNiches.secondNicheRemoveButton);
|
||||
await page.autocompleteSearch(selectors.itemNiches.thirdWarehouseAutocomplete, 'Warehouse Two');
|
||||
await page.write(selectors.itemNiches.thirdCodeInput, 'A4');
|
||||
await page.autocompleteSearch(selectors.itemNiches.thirdWarehouse, 'Warehouse Two');
|
||||
await page.write(selectors.itemNiches.thirdCode, 'A4');
|
||||
await page.waitToClick(selectors.itemNiches.submitNichesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -30,36 +30,36 @@ describe('Item create niche path', () => {
|
|||
|
||||
it(`should confirm the first niche is the expected one`, async() => {
|
||||
await page.reloadSection('item.card.niche');
|
||||
await page.waitForTextInField(selectors.itemNiches.firstWarehouseAutocomplete, 'Warehouse One');
|
||||
await page.waitForTextInField(selectors.itemNiches.firstWarehouse, 'Warehouse One');
|
||||
let result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.firstWarehouseAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.firstWarehouse, 'value');
|
||||
|
||||
expect(result).toEqual('Warehouse One');
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.firstCodeInput, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.firstCode, 'value');
|
||||
|
||||
expect(result).toEqual('A1');
|
||||
});
|
||||
|
||||
it(`should confirm the second niche is the expected one`, async() => {
|
||||
let result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.secondWarehouseAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.secondWarehouse, 'value');
|
||||
|
||||
expect(result).toEqual('Warehouse Three');
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.secondCodeInput, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.secondCode, 'value');
|
||||
|
||||
expect(result).toEqual('A3');
|
||||
});
|
||||
|
||||
it(`should confirm the third niche is the expected one`, async() => {
|
||||
let result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.thirdWarehouseAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.thirdWarehouse, 'value');
|
||||
|
||||
expect(result).toEqual('Warehouse Two');
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemNiches.thirdCodeInput, 'value');
|
||||
.waitToGetProperty(selectors.itemNiches.thirdCode, 'value');
|
||||
|
||||
expect(result).toEqual('A4');
|
||||
});
|
||||
|
|
|
@ -17,9 +17,9 @@ describe('Item Create botanical path', () => {
|
|||
});
|
||||
|
||||
it(`should create a new botanical for the item`, async() => {
|
||||
await page.write(selectors.itemBotanical.botanicalInput, 'Cicuta maculata');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.genusAutocomplete, 'Abelia');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.speciesAutocomplete, 'dealbata');
|
||||
await page.write(selectors.itemBotanical.botanical, 'Cicuta maculata');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.genus, 'Abelia');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.species, 'dealbata');
|
||||
await page.waitToClick(selectors.itemBotanical.submitBotanicalButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -28,33 +28,33 @@ describe('Item Create botanical path', () => {
|
|||
|
||||
it(`should confirm the botanical for the item was created`, async() => {
|
||||
await page.reloadSection('item.card.botanical');
|
||||
await page.waitForTextInField(selectors.itemBotanical.botanicalInput, 'Cicuta maculata');
|
||||
await page.waitForTextInField(selectors.itemBotanical.botanical, 'Cicuta maculata');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.botanicalInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.botanical, 'value');
|
||||
|
||||
expect(result).toEqual('Cicuta maculata');
|
||||
});
|
||||
|
||||
it(`should confirm the Genus for the item was created`, async() => {
|
||||
await page.waitForTextInField(selectors.itemBotanical.genusAutocomplete, 'Abelia');
|
||||
await page.waitForTextInField(selectors.itemBotanical.genus, 'Abelia');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.genusAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.genus, 'value');
|
||||
|
||||
expect(result).toEqual('Abelia');
|
||||
});
|
||||
|
||||
it(`should confirm the Species for the item was created`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.speciesAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.species, 'value');
|
||||
|
||||
expect(result).toEqual('dealbata');
|
||||
});
|
||||
|
||||
it(`should edit botanical for the item`, async() => {
|
||||
await page.clearInput(selectors.itemBotanical.botanicalInput);
|
||||
await page.write(selectors.itemBotanical.botanicalInput, 'Herp Derp');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.genusAutocomplete, 'Abies');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.speciesAutocomplete, 'decurrens');
|
||||
await page.clearInput(selectors.itemBotanical.botanical);
|
||||
await page.write(selectors.itemBotanical.botanical, 'Herp Derp');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.genus, 'Abies');
|
||||
await page.autocompleteSearch(selectors.itemBotanical.species, 'decurrens');
|
||||
await page.waitToClick(selectors.itemBotanical.submitBotanicalButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -63,24 +63,24 @@ describe('Item Create botanical path', () => {
|
|||
|
||||
it(`should confirm the botanical for the item was edited`, async() => {
|
||||
await page.reloadSection('item.card.botanical');
|
||||
await page.waitForTextInField(selectors.itemBotanical.botanicalInput, 'Herp Derp');
|
||||
await page.waitForTextInField(selectors.itemBotanical.botanical, 'Herp Derp');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.botanicalInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.botanical, 'value');
|
||||
|
||||
expect(result).toEqual('Herp Derp');
|
||||
});
|
||||
|
||||
it(`should confirm the Genus for the item was edited`, async() => {
|
||||
await page.waitForTextInField(selectors.itemBotanical.genusAutocomplete, 'Abies');
|
||||
await page.waitForTextInField(selectors.itemBotanical.genus, 'Abies');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.genusAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.genus, 'value');
|
||||
|
||||
expect(result).toEqual('Abies');
|
||||
});
|
||||
|
||||
it(`should confirm the Species for the item was edited`, async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBotanical.speciesAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBotanical.species, 'value');
|
||||
|
||||
expect(result).toEqual('decurrens');
|
||||
});
|
||||
|
|
|
@ -19,7 +19,7 @@ describe('Item Create barcodes path', () => {
|
|||
it(`should click create a new code and delete a former one`, async() => {
|
||||
await page.waitToClick(selectors.itemBarcodes.firstCodeRemoveButton);
|
||||
await page.waitToClick(selectors.itemBarcodes.addBarcodeButton);
|
||||
await page.write(selectors.itemBarcodes.thirdCodeInput, '5');
|
||||
await page.write(selectors.itemBarcodes.thirdCode, '5');
|
||||
await page.waitToClick(selectors.itemBarcodes.submitBarcodesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -28,9 +28,9 @@ describe('Item Create barcodes path', () => {
|
|||
|
||||
it(`should confirm the barcode 5 is created and it is now the third barcode as the first was deleted`, async() => {
|
||||
await page.reloadSection('item.card.itemBarcode');
|
||||
await page.waitForTextInField(selectors.itemBarcodes.thirdCodeInput, '5');
|
||||
await page.waitForTextInField(selectors.itemBarcodes.thirdCode, '5');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemBarcodes.thirdCodeInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBarcodes.thirdCode, 'value');
|
||||
|
||||
expect(result).toEqual('5');
|
||||
});
|
||||
|
|
|
@ -16,8 +16,8 @@ describe('Item Create/Clone path', () => {
|
|||
|
||||
describe('create', () => {
|
||||
it(`should search for the item Infinity Gauntlet to confirm it isn't created yet`, async() => {
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Infinity Gauntlet');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Infinity Gauntlet');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 0);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -52,9 +52,9 @@ describe('Item Create/Clone path', () => {
|
|||
|
||||
it('should create the Infinity Gauntlet item', async() => {
|
||||
await page.write(selectors.itemCreateView.temporalName, 'Infinity Gauntlet');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.typeAutocomplete, 'Crisantemo');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.intrastatAutocomplete, 'Coral y materiales similares');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.originAutocomplete, 'Holand');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.type, 'Crisantemo');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.intrastat, 'Coral y materiales similares');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.origin, 'Holand');
|
||||
await page.waitToClick(selectors.itemCreateView.createButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -63,23 +63,23 @@ describe('Item Create/Clone path', () => {
|
|||
|
||||
it('should confirm Infinity Gauntlet item was created', async() => {
|
||||
let result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.nameInput, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.name, 'value');
|
||||
|
||||
expect(result).toEqual('Infinity Gauntlet');
|
||||
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.typeAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.type, 'value');
|
||||
|
||||
expect(result).toEqual('Crisantemo');
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.intrastatAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.intrastat, 'value');
|
||||
|
||||
expect(result).toEqual('5080000 Coral y materiales similares');
|
||||
|
||||
result = await page
|
||||
.waitToGetProperty(selectors.itemBasicData.originAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.itemBasicData.origin, 'value');
|
||||
|
||||
expect(result).toEqual('Holand');
|
||||
});
|
||||
|
@ -96,8 +96,8 @@ describe('Item Create/Clone path', () => {
|
|||
});
|
||||
|
||||
it(`should search for the item Infinity Gauntlet`, async() => {
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Infinity Gauntlet');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Infinity Gauntlet');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -117,8 +117,8 @@ describe('Item Create/Clone path', () => {
|
|||
|
||||
it('should search for the item Infinity Gauntlet and find two', async() => {
|
||||
await page.waitToClick(selectors.itemTags.goToItemIndexButton);
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Infinity Gauntlet');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Infinity Gauntlet');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 2);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
|
|
@ -34,8 +34,8 @@ describe('Item regularize path', () => {
|
|||
});
|
||||
|
||||
it('should search for an specific item', async() => {
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Ranged weapon pistol 9mm');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Ranged weapon pistol 9mm');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 1);
|
||||
const resultCount = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -55,14 +55,14 @@ describe('Item regularize path', () => {
|
|||
it('should open the regularize dialog and check the warehouse matches the local user settings', async() => {
|
||||
await page.waitToClick(selectors.itemDescriptor.moreMenu);
|
||||
await page.waitToClick(selectors.itemDescriptor.moreMenuRegularizeButton);
|
||||
const result = await page.waitToGetProperty(selectors.itemDescriptor.regularizeWarehouseAutocomplete, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.itemDescriptor.regularizeWarehouse, 'value');
|
||||
|
||||
expect(result).toEqual('Warehouse Four');
|
||||
});
|
||||
|
||||
it('should regularize the item', async() => {
|
||||
await page.write(selectors.itemDescriptor.regularizeQuantityInput, '100');
|
||||
await page.autocompleteSearch(selectors.itemDescriptor.regularizeWarehouseAutocomplete, 'Warehouse One');
|
||||
await page.write(selectors.itemDescriptor.regularizeQuantity, '100');
|
||||
await page.autocompleteSearch(selectors.itemDescriptor.regularizeWarehouse, 'Warehouse One');
|
||||
await page.waitToClick(selectors.itemDescriptor.regularizeSaveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -92,7 +92,7 @@ describe('Item regularize path', () => {
|
|||
|
||||
it('should search for the ticket with alias missing', async() => {
|
||||
await page.keyboard.press('Escape');
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, 'missing');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, 'missing');
|
||||
await page.keyboard.press('Enter');
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
@ -128,15 +128,15 @@ describe('Item regularize path', () => {
|
|||
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
|
||||
await page.wait(selectors.globalItems.applicationsMenuVisible);
|
||||
await page.waitToClick(selectors.globalItems.itemsButton);
|
||||
await page.wait(selectors.itemsIndex.searchItemInput);
|
||||
await page.wait(selectors.itemsIndex.topbarSearch);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/item/index');
|
||||
});
|
||||
|
||||
it('should search for the item once again', async() => {
|
||||
await page.clearInput(selectors.itemsIndex.searchItemInput);
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Ranged weapon pistol 9mm');
|
||||
await page.clearInput(selectors.itemsIndex.topbarSearch);
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Ranged weapon pistol 9mm');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 1);
|
||||
const resultCount = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -156,8 +156,8 @@ describe('Item regularize path', () => {
|
|||
it('should regularize the item once more', async() => {
|
||||
await page.waitToClick(selectors.itemDescriptor.moreMenu);
|
||||
await page.waitToClick(selectors.itemDescriptor.moreMenuRegularizeButton);
|
||||
await page.write(selectors.itemDescriptor.regularizeQuantityInput, '100');
|
||||
await page.autocompleteSearch(selectors.itemDescriptor.regularizeWarehouseAutocomplete, 'Warehouse One');
|
||||
await page.write(selectors.itemDescriptor.regularizeQuantity, '100');
|
||||
await page.autocompleteSearch(selectors.itemDescriptor.regularizeWarehouse, 'Warehouse One');
|
||||
await page.waitToClick(selectors.itemDescriptor.regularizeSaveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -178,7 +178,7 @@ describe('Item regularize path', () => {
|
|||
});
|
||||
|
||||
it('should search for the ticket with id 25 once again', async() => {
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '25');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '25');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
|
|
@ -15,7 +15,7 @@ describe('Item log path', () => {
|
|||
});
|
||||
|
||||
it(`should search for the Knowledge artifact to confirm it isn't created yet`, async() => {
|
||||
await page.write(selectors.itemsIndex.searchItemInput, 'Knowledge artifact');
|
||||
await page.write(selectors.itemsIndex.topbarSearch, 'Knowledge artifact');
|
||||
await page.waitToClick(selectors.itemsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.itemsIndex.searchResult, 0);
|
||||
const result = await page.countElement(selectors.itemsIndex.searchResult);
|
||||
|
@ -33,9 +33,9 @@ describe('Item log path', () => {
|
|||
|
||||
it('should create the Knowledge artifact item', async() => {
|
||||
await page.write(selectors.itemCreateView.temporalName, 'Knowledge artifact');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.typeAutocomplete, 'Crisantemo');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.intrastatAutocomplete, 'Coral y materiales similares');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.originAutocomplete, 'Holand');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.type, 'Crisantemo');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.intrastat, 'Coral y materiales similares');
|
||||
await page.autocompleteSearch(selectors.itemCreateView.origin, 'Holand');
|
||||
await page.waitToClick(selectors.itemCreateView.createButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ describe('Ticket List sale path', () => {
|
|||
});
|
||||
|
||||
it('should confirm the first ticket sale contains the colour tag', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
const value = await page
|
||||
.waitToGetProperty(selectors.ticketSales.firstSaleColour, 'innerText');
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ xdescribe('Ticket Edit sale path', () => {
|
|||
it(`should click on the first sale claim icon to navigate over there`, async() => {
|
||||
const url = await nightmare
|
||||
.waitToClick(selectors.ticketSales.firstSaleClaimIcon)
|
||||
.wait(selectors.claimBasicData.claimStateAutocomplete)
|
||||
.wait(selectors.claimBasicData.claimState)
|
||||
.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/claim/2/basic-data');
|
||||
|
@ -32,7 +32,7 @@ xdescribe('Ticket Edit sale path', () => {
|
|||
.waitToClick(selectors.globalItems.applicationsMenuButton)
|
||||
.wait(selectors.globalItems.applicationsMenuVisible)
|
||||
.waitToClick(selectors.globalItems.ticketsButton)
|
||||
.wait(selectors.ticketsIndex.searchTicketInput)
|
||||
.wait(selectors.ticketsIndex.topbarSearch)
|
||||
.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/ticket/index');
|
||||
|
@ -196,7 +196,7 @@ xdescribe('Ticket Edit sale path', () => {
|
|||
.waitToClick(selectors.ticketSales.thirdSaleCheckbox)
|
||||
.waitToClick(selectors.ticketSales.moreMenu)
|
||||
.waitToClick(selectors.ticketSales.moreMenuCreateClaim)
|
||||
.wait(selectors.claimBasicData.claimStateAutocomplete)
|
||||
.wait(selectors.claimBasicData.claimState)
|
||||
.parsedUrl();
|
||||
|
||||
expect(url.hash).toContain('basic-data');
|
||||
|
@ -228,7 +228,7 @@ xdescribe('Ticket Edit sale path', () => {
|
|||
.waitToClick(selectors.globalItems.applicationsMenuButton)
|
||||
.wait(selectors.globalItems.applicationsMenuVisible)
|
||||
.waitToClick(selectors.globalItems.ticketsButton)
|
||||
.wait(selectors.ticketsIndex.searchTicketInput)
|
||||
.wait(selectors.ticketsIndex.topbarSearch)
|
||||
.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/ticket/index');
|
||||
|
|
|
@ -18,10 +18,9 @@ describe('Ticket Create notes path', () => {
|
|||
});
|
||||
|
||||
it('should create a new note', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitToClick(selectors.ticketNotes.addNoteButton);
|
||||
await page.autocompleteSearch(selectors.ticketNotes.firstNoteTypeAutocomplete, 'observation one');
|
||||
await page.write(selectors.ticketNotes.firstDescriptionInput, 'description');
|
||||
await page.autocompleteSearch(selectors.ticketNotes.firstNoteType, 'observation one');
|
||||
await page.write(selectors.ticketNotes.firstDescription, 'description');
|
||||
await page.waitToClick(selectors.ticketNotes.submitNotesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -31,12 +30,12 @@ describe('Ticket Create notes path', () => {
|
|||
it('should confirm the note is the expected one', async() => {
|
||||
await page.reloadSection('ticket.card.observation');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.ticketNotes.firstNoteTypeAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.ticketNotes.firstNoteType, 'value');
|
||||
|
||||
expect(result).toEqual('observation one');
|
||||
|
||||
const firstDescription = await page
|
||||
.waitToGetProperty(selectors.ticketNotes.firstDescriptionInput, 'value');
|
||||
.waitToGetProperty(selectors.ticketNotes.firstDescription, 'value');
|
||||
|
||||
expect(firstDescription).toEqual('description');
|
||||
});
|
||||
|
|
|
@ -20,7 +20,7 @@ describe('Ticket Create packages path', () => {
|
|||
it(`should attempt create a new package but receive an error if package is blank`, async() => {
|
||||
await page.waitToClick(selectors.ticketPackages.firstRemovePackageButton);
|
||||
await page.waitToClick(selectors.ticketPackages.addPackageButton);
|
||||
await page.write(selectors.ticketPackages.firstQuantityInput, '99');
|
||||
await page.write(selectors.ticketPackages.firstQuantity, '99');
|
||||
await page.waitToClick(selectors.ticketPackages.savePackagesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -28,8 +28,8 @@ describe('Ticket Create packages path', () => {
|
|||
});
|
||||
|
||||
it(`should delete the first package and receive and error to save a new one with blank quantity`, async() => {
|
||||
await page.clearInput(selectors.ticketPackages.firstQuantityInput);
|
||||
await page.autocompleteSearch(selectors.ticketPackages.firstPackageAutocomplete, 'Container medical box 1m');
|
||||
await page.clearInput(selectors.ticketPackages.firstQuantity);
|
||||
await page.autocompleteSearch(selectors.ticketPackages.firstPackage, 'Container medical box 1m');
|
||||
await page.waitToClick(selectors.ticketPackages.savePackagesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -40,14 +40,14 @@ describe('Ticket Create packages path', () => {
|
|||
const result = await page
|
||||
.evaluate(selector => {
|
||||
return document.querySelector(`${selector} input`).checkValidity();
|
||||
}, selectors.ticketPackages.firstQuantityInput);
|
||||
}, selectors.ticketPackages.firstQuantity);
|
||||
|
||||
expect(result).toBeTruthy();
|
||||
});
|
||||
|
||||
it(`should create a new package with correct data`, async() => {
|
||||
await page.clearInput(selectors.ticketPackages.firstQuantityInput);
|
||||
await page.write(selectors.ticketPackages.firstQuantityInput, '-99');
|
||||
await page.clearInput(selectors.ticketPackages.firstQuantity);
|
||||
await page.write(selectors.ticketPackages.firstQuantity, '-99');
|
||||
await page.waitToClick(selectors.ticketPackages.savePackagesButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -56,15 +56,15 @@ describe('Ticket Create packages path', () => {
|
|||
|
||||
it(`should confirm the first select is the expected one`, async() => {
|
||||
await page.reloadSection('ticket.card.package');
|
||||
await page.waitForTextInField(selectors.ticketPackages.firstPackageAutocomplete, 'Container medical box 1m');
|
||||
const result = await page.waitToGetProperty(selectors.ticketPackages.firstPackageAutocomplete, 'value');
|
||||
await page.waitForTextInField(selectors.ticketPackages.firstPackage, 'Container medical box 1m');
|
||||
const result = await page.waitToGetProperty(selectors.ticketPackages.firstPackage, 'value');
|
||||
|
||||
expect(result).toEqual('7 : Container medical box 1m');
|
||||
});
|
||||
|
||||
it(`should confirm the first quantity is just a number and the string part was ignored by the imput number`, async() => {
|
||||
await page.waitForTextInField(selectors.ticketPackages.firstQuantityInput, '-99');
|
||||
const result = await page.waitToGetProperty(selectors.ticketPackages.firstQuantityInput, 'value');
|
||||
await page.waitForTextInField(selectors.ticketPackages.firstQuantity, '-99');
|
||||
const result = await page.waitToGetProperty(selectors.ticketPackages.firstQuantity, 'value');
|
||||
|
||||
expect(result).toEqual('-99');
|
||||
});
|
||||
|
|
|
@ -19,9 +19,8 @@ describe('Ticket Create new tracking state path', () => {
|
|||
});
|
||||
|
||||
it('should access to the create state view by clicking the create floating button', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitToClick(selectors.ticketTracking.createStateButton);
|
||||
await page.waitForSelector(selectors.createStateView.stateAutocomplete, {visible: true});
|
||||
await page.waitForSelector(selectors.createStateView.state, {visible: true});
|
||||
let url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toContain('tracking/edit');
|
||||
|
@ -35,7 +34,7 @@ describe('Ticket Create new tracking state path', () => {
|
|||
});
|
||||
|
||||
it(`should create a new state`, async() => {
|
||||
await page.autocompleteSearch(selectors.createStateView.stateAutocomplete, '¿Fecha?');
|
||||
await page.autocompleteSearch(selectors.createStateView.state, '¿Fecha?');
|
||||
await page.waitToClick(selectors.createStateView.saveStateButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -60,7 +59,7 @@ describe('Ticket Create new tracking state path', () => {
|
|||
|
||||
it(`should attemp to create an state for which salesPerson doesn't have permissions`, async() => {
|
||||
await page.waitFor(1500);
|
||||
await page.autocompleteSearch(selectors.createStateView.stateAutocomplete, 'Encajado');
|
||||
await page.autocompleteSearch(selectors.createStateView.state, 'Encajado');
|
||||
await page.waitToClick(selectors.createStateView.saveStateButton);
|
||||
let result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -68,9 +67,9 @@ describe('Ticket Create new tracking state path', () => {
|
|||
});
|
||||
|
||||
it(`should make sure the worker gets autocomplete uppon selecting the assigned state`, async() => {
|
||||
await page.autocompleteSearch(selectors.createStateView.stateAutocomplete, 'asignado');
|
||||
await page.autocompleteSearch(selectors.createStateView.state, 'asignado');
|
||||
let result = await page
|
||||
.waitToGetProperty(selectors.createStateView.workerAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.createStateView.worker, 'value');
|
||||
|
||||
expect(result).toEqual('salesPersonNick');
|
||||
});
|
||||
|
|
|
@ -18,10 +18,10 @@ describe('Ticket Edit basic data path', () => {
|
|||
});
|
||||
|
||||
it(`should confirm the zone autocomplete is disabled unless your role is productionBoss`, async() => {
|
||||
await page.waitForSelector(selectors.ticketBasicData.zoneAutocomplete, {});
|
||||
await page.waitForSelector(selectors.ticketBasicData.zone, {});
|
||||
const disabled = await page.evaluate(selector => {
|
||||
return document.querySelector(selector).disabled;
|
||||
}, `${selectors.ticketBasicData.zoneAutocomplete} input`);
|
||||
}, `${selectors.ticketBasicData.zone} input`);
|
||||
|
||||
expect(disabled).toBeTruthy();
|
||||
});
|
||||
|
@ -34,33 +34,34 @@ describe('Ticket Edit basic data path', () => {
|
|||
|
||||
it(`should confirm the zone autocomplete is enabled for the role productionBoss`, async() => {
|
||||
await page.waitForSpinnerLoad();
|
||||
await page.wait(selectors.ticketBasicData.zoneAutocomplete);
|
||||
await page.wait(selectors.ticketBasicData.zone);
|
||||
const disabled = await page.evaluate(selector => {
|
||||
return document.querySelector(selector).disabled;
|
||||
}, `${selectors.ticketBasicData.zoneAutocomplete} input`);
|
||||
}, `${selectors.ticketBasicData.zone} input`);
|
||||
|
||||
expect(disabled).toBeFalsy();
|
||||
});
|
||||
|
||||
it(`should check the zone is for Silla247`, async() => {
|
||||
let zone = await page
|
||||
.waitToGetProperty(selectors.ticketBasicData.zoneAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.ticketBasicData.zone, 'value');
|
||||
|
||||
expect(zone).toContain('Zone 247 A');
|
||||
});
|
||||
|
||||
it(`should edit the ticket agency then check there are no zones for it`, async() => {
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.agencyAutocomplete, 'Entanglement');
|
||||
let zone = await page
|
||||
.waitToGetProperty(selectors.ticketBasicData.zoneAutocomplete, 'value');
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.agency, 'Entanglement');
|
||||
await page.waitFor(1000);
|
||||
let emptyZone = await page
|
||||
.expectPropertyValue(selectors.ticketBasicData.zone, 'value', '');
|
||||
|
||||
expect(zone.length).toEqual(0);
|
||||
expect(emptyZone).toBeTruthy();
|
||||
});
|
||||
|
||||
it(`should edit the ticket zone then check the agency is for the new zone`, async() => {
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.zoneAutocomplete, 'Zone expensive A');
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.zone, 'Zone expensive A');
|
||||
let zone = await page
|
||||
.waitToGetProperty(selectors.ticketBasicData.agencyAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.ticketBasicData.agency, 'value');
|
||||
|
||||
expect(zone).toContain('Silla247Expensive');
|
||||
});
|
||||
|
@ -89,7 +90,7 @@ describe('Ticket Edit basic data path', () => {
|
|||
});
|
||||
|
||||
it(`should select a new reason for the changes made then click on finalize`, async() => {
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.chargesReasonAutocomplete, 'Cambiar los precios en el ticket');
|
||||
await page.autocompleteSearch(selectors.ticketBasicData.chargesReason, 'Cambiar los precios en el ticket');
|
||||
await page.waitToClick(selectors.ticketBasicData.finalizeButton);
|
||||
await page.waitForURL('summary');
|
||||
let url = await page.parsedUrl();
|
||||
|
|
|
@ -69,7 +69,7 @@ describe('Ticket descriptor path', () => {
|
|||
|
||||
it('should now search for the ticket 11', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '11');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '11');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
@ -99,7 +99,7 @@ describe('Ticket descriptor path', () => {
|
|||
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
|
||||
await page.wait(selectors.globalItems.applicationsMenuVisible);
|
||||
await page.waitToClick(selectors.globalItems.ticketsButton);
|
||||
await page.wait(selectors.ticketsIndex.searchTicketInput);
|
||||
await page.wait(selectors.ticketsIndex.topbarSearch);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/ticket/index');
|
||||
|
@ -113,7 +113,7 @@ describe('Ticket descriptor path', () => {
|
|||
});
|
||||
|
||||
it('should now search for the weekly ticket 11', async() => {
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '11');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '11');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchWeeklyResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchWeeklyResult);
|
||||
|
|
|
@ -20,9 +20,9 @@ describe('Ticket purchase request path', () => {
|
|||
it(`should add a new request`, async() => {
|
||||
await page.waitToClick(selectors.ticketRequests.addRequestButton);
|
||||
await page.write(selectors.ticketRequests.descriptionInput, 'New stuff');
|
||||
await page.write(selectors.ticketRequests.quantityInput, '99');
|
||||
await page.autocompleteSearch(selectors.ticketRequests.atenderAutocomplete, 'buyerNick');
|
||||
await page.write(selectors.ticketRequests.priceInput, '999');
|
||||
await page.write(selectors.ticketRequests.quantity, '99');
|
||||
await page.autocompleteSearch(selectors.ticketRequests.atender, 'buyerNick');
|
||||
await page.write(selectors.ticketRequests.price, '999');
|
||||
await page.waitToClick(selectors.ticketRequests.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -38,7 +38,7 @@ describe('Ticket purchase request path', () => {
|
|||
|
||||
it(`should confirm the new request was added`, async() => {
|
||||
await page.reloadSection('ticket.card.request.index');
|
||||
const result = await page.waitToGetProperty(`${selectors.ticketRequests.firstDescription} input`, 'value');
|
||||
const result = await page.waitToGetProperty(selectors.ticketRequests.firstDescription, 'value');
|
||||
|
||||
expect(result).toEqual('New stuff');
|
||||
});
|
||||
|
|
|
@ -17,7 +17,7 @@ xdescribe('Ticket diary path', () => {
|
|||
});
|
||||
|
||||
it('should search for a specific ticket', async() => {
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '1');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '1');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
@ -59,7 +59,7 @@ xdescribe('Ticket diary path', () => {
|
|||
});
|
||||
|
||||
it(`should change to the warehouse two and check there are sales marked as negative balance`, async() => {
|
||||
await page.autocompleteSearch(selectors.itemDiary.warehouseAutocomplete, 'Warehouse Two');
|
||||
await page.autocompleteSearch(selectors.itemDiary.warehouse, 'Warehouse Two');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.itemDiary.firstBalance, 'className');
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ describe('Ticket descriptor path', () => {
|
|||
|
||||
describe('Delete ticket', () => {
|
||||
it('should search for an specific ticket', async() => {
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '18');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '18');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
@ -38,7 +38,7 @@ describe('Ticket descriptor path', () => {
|
|||
await page.waitForContentLoaded();
|
||||
await page.waitToClick(selectors.ticketDescriptor.moreMenu);
|
||||
await page.waitToClick(selectors.ticketDescriptor.moreMenuChangeShippedHour);
|
||||
await page.pickTime(selectors.ticketDescriptor.changeShippedHourInput, '08:15');
|
||||
await page.pickTime(selectors.ticketDescriptor.changeShippedHour, '08:15');
|
||||
await page.waitToClick(selectors.ticketDescriptor.acceptChangeHourButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -68,7 +68,7 @@ describe('Ticket descriptor path', () => {
|
|||
});
|
||||
|
||||
it(`should search for the deleted ticket and check it's date`, async() => {
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '18');
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '18');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
await page.wait(selectors.ticketsIndex.searchResultDate);
|
||||
|
@ -80,8 +80,8 @@ describe('Ticket descriptor path', () => {
|
|||
|
||||
describe('add stowaway', () => {
|
||||
it('should search for a ticket', async() => {
|
||||
await page.clearInput(selectors.ticketsIndex.searchTicketInput);
|
||||
await page.write(selectors.ticketsIndex.searchTicketInput, '16');
|
||||
await page.clearInput(selectors.ticketsIndex.topbarSearch);
|
||||
await page.write(selectors.ticketsIndex.topbarSearch, '16');
|
||||
await page.waitToClick(selectors.ticketsIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.ticketsIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.ticketsIndex.searchResult);
|
||||
|
|
|
@ -29,8 +29,8 @@ describe('Ticket services path', () => {
|
|||
}, 15000);
|
||||
|
||||
it('should receive an error if you attempt to save a service without access rights', async() => {
|
||||
await page.clearInput(selectors.ticketService.firstPriceInput);
|
||||
await page.write(selectors.ticketService.firstPriceInput, '999');
|
||||
await page.clearInput(selectors.ticketService.firstPrice);
|
||||
await page.write(selectors.ticketService.firstPrice, '999');
|
||||
await page.waitToClick(selectors.ticketService.saveServiceButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -54,7 +54,7 @@ describe('Ticket services path', () => {
|
|||
await page.waitForContentLoaded();
|
||||
await page.waitToClick(selectors.ticketService.addServiceButton);
|
||||
const result = await page
|
||||
.isVisible(selectors.ticketService.firstServiceTypeAutocomplete);
|
||||
.isVisible(selectors.ticketService.firstServiceType);
|
||||
|
||||
expect(result).toBeTruthy();
|
||||
});
|
||||
|
@ -69,7 +69,7 @@ describe('Ticket services path', () => {
|
|||
it('should click on the add new service type to open the dialog', async() => {
|
||||
await page.waitToClick(selectors.ticketService.firstAddServiceTypeButton);
|
||||
await page.wait('.vn-dialog.shown');
|
||||
const result = await page.isVisible(selectors.ticketService.newServiceTypeNameInput);
|
||||
const result = await page.isVisible(selectors.ticketService.newServiceTypeName);
|
||||
|
||||
expect(result).toBeTruthy();
|
||||
});
|
||||
|
@ -82,10 +82,10 @@ describe('Ticket services path', () => {
|
|||
});
|
||||
|
||||
it('should create a new service type then add price then create the service', async() => {
|
||||
await page.write(selectors.ticketService.newServiceTypeNameInput, 'Documentos');
|
||||
await page.autocompleteSearch(selectors.ticketService.newServiceTypeExpenseAutocomplete, 'Retencion');
|
||||
await page.write(selectors.ticketService.newServiceTypeName, 'Documentos');
|
||||
await page.autocompleteSearch(selectors.ticketService.newServiceTypeExpense, 'Retencion');
|
||||
await page.waitToClick(selectors.ticketService.saveServiceTypeButton);
|
||||
await page.write(selectors.ticketService.firstPriceInput, '999');
|
||||
await page.write(selectors.ticketService.firstPrice, '999');
|
||||
await page.waitToClick(selectors.ticketService.saveServiceButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -95,28 +95,28 @@ describe('Ticket services path', () => {
|
|||
it('should confirm the service description was created correctly', async() => {
|
||||
await page.reloadSection('ticket.card.service');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.ticketService.firstServiceTypeAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.ticketService.firstServiceType, 'value');
|
||||
|
||||
expect(result).toEqual('Documentos');
|
||||
});
|
||||
|
||||
it('should confirm the service quantity was created correctly', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.ticketService.firstQuantityInput, 'value');
|
||||
.waitToGetProperty(selectors.ticketService.firstQuantity, 'value');
|
||||
|
||||
expect(result).toEqual('1');
|
||||
});
|
||||
|
||||
it('should confirm the service price was created correctly', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.ticketService.firstPriceInput, 'value');
|
||||
.waitToGetProperty(selectors.ticketService.firstPrice, 'value');
|
||||
|
||||
expect(result).toEqual('999');
|
||||
});
|
||||
|
||||
it('should confirm the service VAT was created correctly', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.ticketService.firstVatTypeAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.ticketService.firstVatType, 'value');
|
||||
|
||||
expect(result).toEqual('General VAT');
|
||||
});
|
||||
|
|
|
@ -17,18 +17,18 @@ describe('Ticket create path', () => {
|
|||
|
||||
it('should open the new ticket form', async() => {
|
||||
await page.waitToClick(selectors.ticketsIndex.newTicketButton);
|
||||
await page.wait(selectors.createTicketView.clientAutocomplete);
|
||||
await page.wait(selectors.createTicketView.client);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/ticket/create');
|
||||
});
|
||||
|
||||
it('should succeed to create a ticket', async() => {
|
||||
await page.autocompleteSearch(selectors.createTicketView.clientAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.createTicketView.addressAutocomplete, 'Tony Stark');
|
||||
await page.datePicker(selectors.createTicketView.deliveryDateInput, 1, null);
|
||||
await page.autocompleteSearch(selectors.createTicketView.warehouseAutocomplete, 'Warehouse One');
|
||||
await page.autocompleteSearch(selectors.createTicketView.agencyAutocomplete, 'Silla247');
|
||||
await page.autocompleteSearch(selectors.createTicketView.client, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.createTicketView.address, 'Tony Stark');
|
||||
await page.datePicker(selectors.createTicketView.deliveryDate, 1, null);
|
||||
await page.autocompleteSearch(selectors.createTicketView.warehouse, 'Warehouse One');
|
||||
await page.autocompleteSearch(selectors.createTicketView.agency, 'Silla247');
|
||||
await page.waitToClick(selectors.createTicketView.createButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ 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);
|
||||
await page.waitForURL('#!/ticket/create?clientFk=102');
|
||||
|
@ -27,10 +28,10 @@ describe('Ticket create from client path', () => {
|
|||
|
||||
it('should check if the client details are the expected ones', async() => {
|
||||
const client = await page
|
||||
.waitToGetProperty(selectors.createTicketView.clientAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.createTicketView.client, 'value');
|
||||
|
||||
const address = await page
|
||||
.waitToGetProperty(selectors.createTicketView.addressAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.createTicketView.address, 'value');
|
||||
|
||||
|
||||
expect(client).toContain('Petter Parker');
|
||||
|
|
|
@ -21,9 +21,9 @@ describe('Claim edit basic data path', () => {
|
|||
});
|
||||
|
||||
it(`should edit claim state and observation fields`, async() => {
|
||||
await page.autocompleteSearch(selectors.claimBasicData.claimStateAutocomplete, 'Gestionado');
|
||||
await page.clearTextarea(selectors.claimBasicData.observationInput);
|
||||
await page.write(selectors.claimBasicData.observationInput, 'edited observation');
|
||||
await page.autocompleteSearch(selectors.claimBasicData.claimState, 'Gestionado');
|
||||
await page.clearTextarea(selectors.claimBasicData.observation);
|
||||
await page.write(selectors.claimBasicData.observation, 'edited observation');
|
||||
await page.waitToClick(selectors.claimBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -39,23 +39,23 @@ describe('Claim edit basic data path', () => {
|
|||
|
||||
it('should confirm the claim state was edited', async() => {
|
||||
await page.reloadSection('claim.card.basicData');
|
||||
await page.wait(selectors.claimBasicData.claimStateAutocomplete);
|
||||
const result = await page.waitToGetProperty(selectors.claimBasicData.claimStateAutocomplete, 'value');
|
||||
await page.wait(selectors.claimBasicData.claimState);
|
||||
const result = await page.waitToGetProperty(selectors.claimBasicData.claimState, 'value');
|
||||
|
||||
expect(result).toEqual('Gestionado');
|
||||
});
|
||||
|
||||
it('should confirm the claim observation was edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.claimBasicData.observationInput, 'value');
|
||||
.waitToGetProperty(selectors.claimBasicData.observation, 'value');
|
||||
|
||||
expect(result).toEqual('edited observation');
|
||||
});
|
||||
|
||||
it(`should edit the claim to leave it untainted`, async() => {
|
||||
await page.autocompleteSearch(selectors.claimBasicData.claimStateAutocomplete, 'Pendiente');
|
||||
await page.clearTextarea(selectors.claimBasicData.observationInput);
|
||||
await page.write(selectors.claimBasicData.observationInput, 'Observation one');
|
||||
await page.autocompleteSearch(selectors.claimBasicData.claimState, 'Pendiente');
|
||||
await page.clearTextarea(selectors.claimBasicData.observation);
|
||||
await page.write(selectors.claimBasicData.observation, 'Observation one');
|
||||
await page.waitToClick(selectors.claimBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -20,11 +20,11 @@ describe('Claim development', () => {
|
|||
it('should delete a development and create a new one', async() => {
|
||||
await page.waitToClick(selectors.claimDevelopment.firstDeleteDevelopmentButton);
|
||||
await page.waitToClick(selectors.claimDevelopment.addDevelopmentButton);
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimReasonAutocomplete, 'Baja calidad');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimResultAutocomplete, 'Deshidratacion');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimResponsibleAutocomplete, 'Calidad general');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimWorkerAutocomplete, 'deliveryNick');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimRedeliveryAutocomplete, 'Reparto');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimReason, 'Baja calidad');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimResult, 'Deshidratacion');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimResponsible, 'Calidad general');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimWorker, 'deliveryNick');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.secondClaimRedelivery, 'Reparto');
|
||||
await page.waitToClick(selectors.claimDevelopment.saveDevelopmentButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -40,11 +40,11 @@ describe('Claim development', () => {
|
|||
|
||||
it('should edit a development', async() => {
|
||||
await page.reloadSection('claim.card.development');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimReasonAutocomplete, 'Calor');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimResultAutocomplete, 'Cocido');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimResponsibleAutocomplete, 'Calidad general');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimWorkerAutocomplete, 'adminAssistantNick');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimRedeliveryAutocomplete, 'Cliente');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimReason, 'Calor');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimResult, 'Cocido');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimResponsible, 'Calidad general');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimWorker, 'adminAssistantNick');
|
||||
await page.autocompleteSearch(selectors.claimDevelopment.firstClaimRedelivery, 'Cliente');
|
||||
await page.waitToClick(selectors.claimDevelopment.saveDevelopmentButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -54,19 +54,19 @@ describe('Claim development', () => {
|
|||
it('should confirm the first development is the expected one', async() => {
|
||||
await page.reloadSection('claim.card.development');
|
||||
const reason = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimReasonAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimReason, 'value');
|
||||
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimResultAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimResult, 'value');
|
||||
|
||||
const responsible = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimResponsibleAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimResponsible, 'value');
|
||||
|
||||
const worker = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimWorkerAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimWorker, 'value');
|
||||
|
||||
const redelivery = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimRedeliveryAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.firstClaimRedelivery, 'value');
|
||||
|
||||
expect(reason).toEqual('Calor');
|
||||
expect(result).toEqual('Cocido');
|
||||
|
@ -77,19 +77,19 @@ describe('Claim development', () => {
|
|||
|
||||
it('should confirm the second development is the expected one', async() => {
|
||||
const reason = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimReasonAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimReason, 'value');
|
||||
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimResultAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimResult, 'value');
|
||||
|
||||
const responsible = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimResponsibleAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimResponsible, 'value');
|
||||
|
||||
const worker = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimWorkerAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimWorker, 'value');
|
||||
|
||||
const redelivery = await page
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimRedeliveryAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.claimDevelopment.secondClaimRedelivery, 'value');
|
||||
|
||||
expect(reason).toEqual('Baja calidad');
|
||||
expect(result).toEqual('Deshidratacion');
|
||||
|
|
|
@ -64,7 +64,7 @@ xdescribe('Claim detail', () => {
|
|||
|
||||
it('should edit de second item claimed discount', async() => {
|
||||
await page.waitToClick(selectors.claimDetail.secondItemDiscount);
|
||||
await page.write(selectors.claimDetail.discountInput, '100');
|
||||
await page.write(selectors.claimDetail.discount, '100');
|
||||
await page.keyboard.press('Enter');
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -21,8 +21,8 @@ describe('Order edit basic data path', () => {
|
|||
|
||||
describe('when confirmed order', () => {
|
||||
it('should not be able to change the client', async() => {
|
||||
await page.autocompleteSearch(selectors.orderBasicData.clientAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.addressAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.client, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.address, 'Tony Stark');
|
||||
await page.waitToClick(selectors.orderBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -40,7 +40,7 @@ describe('Order edit basic data path', () => {
|
|||
await page.accessToSearchResult(orderId);
|
||||
await page.accessToSection('order.card.basicData');
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitForSelector(selectors.orderBasicData.observationInput, {visible: true});
|
||||
await page.waitForSelector(selectors.orderBasicData.observation, {visible: true});
|
||||
await page.waitForURL('basic-data');
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
|
@ -48,7 +48,8 @@ describe('Order edit basic data path', () => {
|
|||
});
|
||||
|
||||
it('should not be able to change anything', async() => {
|
||||
await page.type(selectors.orderBasicData.observationInput, 'observation');
|
||||
await page.waitForContentLoaded();
|
||||
await page.write(selectors.orderBasicData.observation, 'observation');
|
||||
await page.waitToClick(selectors.orderBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -69,9 +70,9 @@ describe('Order edit basic data path', () => {
|
|||
});
|
||||
|
||||
it('should now create a new one', async() => {
|
||||
await page.autocompleteSearch(selectors.createOrderView.clientAutocomplete, 'Jessica Jones');
|
||||
await page.autocompleteSearch(selectors.createOrderView.client, 'Jessica Jones');
|
||||
await page.datePicker(selectors.createOrderView.landedDatePicker, 0, today);
|
||||
await page.autocompleteSearch(selectors.createOrderView.agencyAutocomplete, 'Other agency');
|
||||
await page.autocompleteSearch(selectors.createOrderView.agency, 'Other agency');
|
||||
await page.waitToClick(selectors.createOrderView.createButton);
|
||||
await page.waitForURL('/catalog');
|
||||
const url = await page.parsedUrl();
|
||||
|
@ -81,17 +82,17 @@ describe('Order edit basic data path', () => {
|
|||
|
||||
it('should navigate to the basic data section of the new order', async() => {
|
||||
await page.accessToSection('order.card.basicData');
|
||||
await page.wait(selectors.orderBasicData.observationInput);
|
||||
await page.wait(selectors.orderBasicData.observation);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toContain('/basic-data');
|
||||
});
|
||||
|
||||
it('should be able to modify all the properties', async() => {
|
||||
await page.autocompleteSearch(selectors.orderBasicData.clientAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.addressAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.agencyAutocomplete, 'Silla247');
|
||||
await page.type(selectors.orderBasicData.observationInput, 'my observation');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.client, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.address, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.orderBasicData.agency, 'Silla247');
|
||||
await page.write(selectors.orderBasicData.observation, 'my observation');
|
||||
await page.waitToClick(selectors.orderBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -101,21 +102,21 @@ describe('Order edit basic data path', () => {
|
|||
it('should now confirm the client have been edited', async() => {
|
||||
await page.reloadSection('order.card.basicData');
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.orderBasicData.clientAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.orderBasicData.client, 'value');
|
||||
|
||||
expect(result).toEqual('104: Tony Stark');
|
||||
});
|
||||
|
||||
it('should now confirm the agency have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.orderBasicData.agencyAutocomplete, 'value');
|
||||
.waitToGetProperty(selectors.orderBasicData.agency, 'value');
|
||||
|
||||
expect(result).toEqual('7: Silla247');
|
||||
});
|
||||
|
||||
it('should now confirm the observations have been edited', async() => {
|
||||
const result = await page
|
||||
.waitToGetProperty(selectors.orderBasicData.observationInput, 'value');
|
||||
.waitToGetProperty(selectors.orderBasicData.observation, 'value');
|
||||
|
||||
expect(result).toEqual('my observation');
|
||||
});
|
||||
|
|
|
@ -26,9 +26,9 @@ describe('Order catalog', () => {
|
|||
it('should create a new order', async() => {
|
||||
let today = new Date().getDate();
|
||||
|
||||
await page.autocompleteSearch(selectors.createOrderView.clientAutocomplete, 'Tony Stark');
|
||||
await page.autocompleteSearch(selectors.createOrderView.client, 'Tony Stark');
|
||||
await page.datePicker(selectors.createOrderView.landedDatePicker, 0, today);
|
||||
await page.autocompleteSearch(selectors.createOrderView.agencyAutocomplete, 'Other agency');
|
||||
await page.autocompleteSearch(selectors.createOrderView.agency, 'Other agency');
|
||||
await page.waitToClick(selectors.createOrderView.createButton);
|
||||
await page.waitForURL('/catalog');
|
||||
const url = await page.parsedUrl();
|
||||
|
@ -40,7 +40,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.autocompleteSearch(selectors.orderCatalog.typeAutocomplete, 'Anthurium');
|
||||
await page.autocompleteSearch(selectors.orderCatalog.type, 'Anthurium');
|
||||
await page.waitForNumberOfElements('section.product', 4);
|
||||
const result = await page.countElement('section.product');
|
||||
|
||||
|
@ -48,7 +48,7 @@ describe('Order catalog', () => {
|
|||
});
|
||||
|
||||
it('should search for the item tag value +1 and find two results', async() => {
|
||||
await page.write(selectors.orderCatalog.itemTagValueInput, '+1');
|
||||
await page.write(selectors.orderCatalog.itemTagValue, '+1');
|
||||
await page.keyboard.press('Enter');
|
||||
await page.waitForNumberOfElements('section.product', 2);
|
||||
const result = await page.countElement('section.product');
|
||||
|
@ -58,8 +58,8 @@ describe('Order catalog', () => {
|
|||
|
||||
it('should search for the item tag categoria +1 and find two results', async() => {
|
||||
await page.waitToClick(selectors.orderCatalog.openTagSearch);
|
||||
await page.autocompleteSearch(selectors.orderCatalog.tagAutocomplete, 'categoria');
|
||||
await page.write(selectors.orderCatalog.tagValueInput, '+1');
|
||||
await page.autocompleteSearch(selectors.orderCatalog.tag, 'categoria');
|
||||
await page.write(selectors.orderCatalog.tagValue, '+1');
|
||||
await page.waitToClick(selectors.orderCatalog.searchTagButton);
|
||||
await page.waitForNumberOfElements('section.product', 1);
|
||||
const result = await page.countElement('section.product');
|
||||
|
@ -78,7 +78,7 @@ describe('Order catalog', () => {
|
|||
});
|
||||
|
||||
it('should search for an item by id', async() => {
|
||||
await page.write(selectors.orderCatalog.itemIdInput, '2');
|
||||
await page.write(selectors.orderCatalog.itemId, '2');
|
||||
await page.keyboard.press('Enter');
|
||||
await page.waitForNumberOfElements('section.product', 1);
|
||||
const result = await page.countElement('section.product');
|
||||
|
|
|
@ -19,14 +19,14 @@ describe('Route create path', () => {
|
|||
it('should click on the add new route button and open the creation form', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.waitToClick(selectors.routeIndex.addNewRouteButton);
|
||||
await page.wait(selectors.createRouteView.workerAutocomplete);
|
||||
await page.wait(selectors.createRouteView.worker);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/route/create');
|
||||
});
|
||||
|
||||
it(`should attempt to create a new route but fail since employee has no access rights`, async() => {
|
||||
await page.write(selectors.createRouteView.descriptionInput, 'faster faster!!');
|
||||
await page.write(selectors.createRouteView.description, 'faster faster!!');
|
||||
await page.waitToClick(selectors.createRouteView.submitButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -43,18 +43,18 @@ describe('Route create path', () => {
|
|||
|
||||
it('should again click on the add new route button and open the creation form', async() => {
|
||||
await page.waitToClick(selectors.routeIndex.addNewRouteButton);
|
||||
await page.wait(selectors.createRouteView.workerAutocomplete);
|
||||
await page.wait(selectors.createRouteView.worker);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/route/create');
|
||||
});
|
||||
|
||||
it(`should create a new route`, async() => {
|
||||
await page.autocompleteSearch(selectors.createRouteView.workerAutocomplete, 'teamManagerNick');
|
||||
await page.autocompleteSearch(selectors.createRouteView.worker, 'teamManagerNick');
|
||||
await page.datePicker(selectors.createRouteView.createdDatePicker, 0, null);
|
||||
await page.autocompleteSearch(selectors.createRouteView.vehicleAutoComplete, '4444-IMK');
|
||||
await page.autocompleteSearch(selectors.createRouteView.agencyAutoComplete, 'Teleportation device');
|
||||
await page.write(selectors.createRouteView.descriptionInput, 'faster faster!!');
|
||||
await page.autocompleteSearch(selectors.createRouteView.vehicleAuto, '4444-IMK');
|
||||
await page.autocompleteSearch(selectors.createRouteView.agency, 'Teleportation device');
|
||||
await page.write(selectors.createRouteView.description, 'faster faster!!');
|
||||
await page.waitToClick(selectors.createRouteView.submitButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
|
|
@ -18,15 +18,15 @@ describe('Route basic Data path', () => {
|
|||
});
|
||||
|
||||
it('should edit the route basic data', async() => {
|
||||
await page.autocompleteSearch(selectors.routeBasicData.workerAutoComplete, 'adminBossNick');
|
||||
await page.autocompleteSearch(selectors.routeBasicData.vehicleAutoComplete, '1111-IMK');
|
||||
await page.datePicker(selectors.routeBasicData.createdDateInput, 1, null);
|
||||
await page.clearInput(selectors.routeBasicData.kmStartInput);
|
||||
await page.write(selectors.routeBasicData.kmStartInput, '1');
|
||||
await page.clearInput(selectors.routeBasicData.kmEndInput);
|
||||
await page.write(selectors.routeBasicData.kmEndInput, '2');
|
||||
await page.type(`${selectors.routeBasicData.startedHourInput} input`, '0800');
|
||||
await page.type(`${selectors.routeBasicData.finishedHourInput} input`, '1230');
|
||||
await page.autocompleteSearch(selectors.routeBasicData.worker, 'adminBossNick');
|
||||
await page.autocompleteSearch(selectors.routeBasicData.vehicle, '1111-IMK');
|
||||
await page.datePicker(selectors.routeBasicData.createdDate, 1, null);
|
||||
await page.clearInput(selectors.routeBasicData.kmStart);
|
||||
await page.write(selectors.routeBasicData.kmStart, '1');
|
||||
await page.clearInput(selectors.routeBasicData.kmEnd);
|
||||
await page.write(selectors.routeBasicData.kmEnd, '2');
|
||||
await page.type(`${selectors.routeBasicData.startedHour} input`, '0800');
|
||||
await page.type(`${selectors.routeBasicData.finishedHour} input`, '1230');
|
||||
await page.waitToClick(selectors.routeBasicData.saveButton);
|
||||
const result = await page.waitForLastSnackbar();
|
||||
|
||||
|
@ -35,26 +35,26 @@ describe('Route basic Data path', () => {
|
|||
|
||||
it('should confirm the worker was edited', async() => {
|
||||
await page.reloadSection('route.card.basicData');
|
||||
const worker = await page.waitToGetProperty(selectors.routeBasicData.workerAutoComplete, 'value');
|
||||
const worker = await page.waitToGetProperty(selectors.routeBasicData.worker, 'value');
|
||||
|
||||
|
||||
expect(worker).toEqual('adminBoss - adminBossNick');
|
||||
});
|
||||
|
||||
it('should confirm the vehicle was edited', async() => {
|
||||
const vehicle = await page.waitToGetProperty(selectors.routeBasicData.vehicleAutoComplete, 'value');
|
||||
const vehicle = await page.waitToGetProperty(selectors.routeBasicData.vehicle, 'value');
|
||||
|
||||
expect(vehicle).toEqual('1111-IMK');
|
||||
});
|
||||
|
||||
it('should confirm the km start was edited', async() => {
|
||||
const kmStart = await page.waitToGetProperty(selectors.routeBasicData.kmStartInput, 'value');
|
||||
const kmStart = await page.waitToGetProperty(selectors.routeBasicData.kmStart, 'value');
|
||||
|
||||
expect(kmStart).toEqual('1');
|
||||
});
|
||||
|
||||
it('should confirm the km end was edited', async() => {
|
||||
const kmEnd = await page.waitToGetProperty(selectors.routeBasicData.kmEndInput, 'value');
|
||||
const kmEnd = await page.waitToGetProperty(selectors.routeBasicData.kmEnd, 'value');
|
||||
|
||||
expect(kmEnd).toEqual('2');
|
||||
});
|
||||
|
|
|
@ -30,7 +30,7 @@ describe('InvoiceOut descriptor path', () => {
|
|||
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
|
||||
await page.wait(selectors.globalItems.applicationsMenuVisible);
|
||||
await page.waitToClick(selectors.globalItems.invoiceOutButton);
|
||||
await page.wait(selectors.invoiceOutIndex.searchInvoiceOutInput);
|
||||
await page.wait(selectors.invoiceOutIndex.topbarSearch);
|
||||
await page.waitForURL('#!/invoice-out/index');
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
|
@ -39,7 +39,7 @@ describe('InvoiceOut descriptor path', () => {
|
|||
|
||||
it('should search for the target invoiceOut', async() => {
|
||||
await page.waitForContentLoaded();
|
||||
await page.write(selectors.invoiceOutIndex.searchInvoiceOutInput, 'T2222222');
|
||||
await page.write(selectors.invoiceOutIndex.topbarSearch, 'T2222222');
|
||||
await page.waitToClick(selectors.invoiceOutIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.invoiceOutIndex.searchResult, 1);
|
||||
const result = await page.countElement(selectors.invoiceOutIndex.searchResult);
|
||||
|
@ -71,7 +71,7 @@ describe('InvoiceOut descriptor path', () => {
|
|||
});
|
||||
|
||||
it(`should search for the deleted invouceOut to find no results`, async() => {
|
||||
await page.write(selectors.invoiceOutIndex.searchInvoiceOutInput, 'T2222222');
|
||||
await page.write(selectors.invoiceOutIndex.topbarSearch, 'T2222222');
|
||||
await page.waitToClick(selectors.invoiceOutIndex.searchButton);
|
||||
await page.waitForNumberOfElements(selectors.invoiceOutIndex.searchResult, 0);
|
||||
const result = await page.countElement(selectors.invoiceOutIndex.searchResult);
|
||||
|
@ -83,7 +83,7 @@ describe('InvoiceOut descriptor path', () => {
|
|||
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
|
||||
await page.wait(selectors.globalItems.applicationsMenuVisible);
|
||||
await page.waitToClick(selectors.globalItems.ticketsButton);
|
||||
await page.wait(selectors.ticketsIndex.searchTicketInput);
|
||||
await page.wait(selectors.ticketsIndex.topbarSearch);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/ticket/index');
|
||||
|
@ -105,7 +105,7 @@ describe('InvoiceOut descriptor path', () => {
|
|||
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
|
||||
await page.wait(selectors.globalItems.applicationsMenuVisible);
|
||||
await page.waitToClick(selectors.globalItems.invoiceOutButton);
|
||||
await page.wait(selectors.invoiceOutIndex.searchInvoiceOutInput);
|
||||
await page.wait(selectors.invoiceOutIndex.topbarSearch);
|
||||
const url = await page.parsedUrl();
|
||||
|
||||
expect(url.hash).toEqual('#!/invoice-out/index');
|
||||
|
|
Loading…
Reference in New Issue