diff --git a/client/core/src/components/snackbar/snackbar.html b/client/core/src/components/snackbar/snackbar.html
index 60eff1e46d..66f777d7dc 100644
--- a/client/core/src/components/snackbar/snackbar.html
+++ b/client/core/src/components/snackbar/snackbar.html
@@ -1,4 +1,8 @@
-
+
+
+
+
\ No newline at end of file
diff --git a/client/core/src/components/snackbar/snackbar.js b/client/core/src/components/snackbar/snackbar.js
index aeec1f12fa..cf1418903b 100644
--- a/client/core/src/components/snackbar/snackbar.js
+++ b/client/core/src/components/snackbar/snackbar.js
@@ -9,11 +9,50 @@ export default class Controller extends Component {
constructor($element, $translate) {
super($element);
this.$translate = $translate;
- this.shown = false;
this.snackbar = $element[0].firstChild;
this.$snackbar = angular.element(this.snackbar);
- this.button = $element[0].querySelector('button');
- this.textNode = this.snackbar.querySelector('.text');
+ }
+
+ /**
+ * It creates a new snackbar notification
+ * @param {Object} data Snackbar data
+ * @return {Object} Created snackbar shape
+ */
+ createShape(data) {
+ let shape = document.createElement('div');
+ shape.className = 'shape';
+
+ let button = document.createElement('button');
+
+ let buttonText = data.actionText || this.$translate.instant('Hide');
+ buttonText = document.createTextNode(buttonText);
+ button.appendChild(buttonText);
+
+ button.addEventListener('click', () => {
+ this.onButtonClick(shape);
+ });
+
+ shape.appendChild(button);
+
+ let shapeText = document.createElement('div');
+ shapeText.setAttribute('class', 'text');
+ shape.appendChild(shapeText);
+
+ let text = document.createTextNode(data.message);
+ shapeText.appendChild(text);
+
+ if (data.shapeType)
+ shape.classList.add(data.shapeType);
+
+ let parent = this.snackbar.querySelectorAll('.shape')[0];
+
+ if (parent) {
+ this.snackbar.insertBefore(shape, parent);
+ } else {
+ this.snackbar.appendChild(shape);
+ }
+
+ return shape;
}
/**
@@ -22,24 +61,15 @@ export default class Controller extends Component {
* @param {Object} data The message data
*/
show(data) {
- if (this.shown) {
- this.hide();
- this.onTransitionEnd();
- }
-
- this.clearTimeouts();
- this.shown = true;
- this.textNode.textContent = data.message;
this.actionHandler = data.actionHandler;
- this.button.textContent =
- data.actionText || this.$translate.instant('Hide');
+ let shape = this.createShape(data);
- this.timeoutId = setTimeout(() =>
- this.hide(), data.timeout || 6000);
+ setTimeout(() =>
+ this.hide(shape), data.timeout || 6000);
- this.transitionTimeout = setTimeout(() =>
- this.$snackbar.addClass('shown'), 30);
+ setTimeout(() =>
+ shape.classList.add('shown'), 30);
}
/**
@@ -48,52 +78,41 @@ export default class Controller extends Component {
* @param {Object} data The message data
*/
showError(data) {
+ data.shapeType = 'error';
+
+ this.show(data);
+ }
+
+ /**
+ * Shows a success.
+ *
+ * @param {Object} data The message data
+ */
+ showSuccess(data) {
+ data.shapeType = 'success';
+
this.show(data);
- this.$snackbar.addClass('error');
}
/**
* Hides the snackbar.
+ * @param {Object} shape Snackbar element
*/
- hide() {
- if (!this.shown) return;
- clearTimeout(this.timeoutId);
- this.shown = false;
- this.hideTimeout = setTimeout(() => this.onTransitionEnd(), 250);
-
- this.transitionTimeout =
- setTimeout(() => this.$snackbar.removeClass('shown'), 30);
- }
-
- onTransitionEnd() {
- this.$snackbar.removeClass('error');
- this.textNode.textContent = '';
- this.button.textContent = '';
- this.actionHandler = null;
+ hide(shape) {
+ setTimeout(() => shape.classList.remove('shown'), 30);
+ setTimeout(() => shape.remove(), 250);
}
onSnackbarClick(event) {
this.event = event;
}
- onButtonClick() {
- if (this.actionHandler)
+ onButtonClick(shape) {
+ if (this.actionHandler) {
this.actionHandler();
- else
- this.hide();
- }
-
- clearTimeouts() {
- clearTimeout(this.timeoutId);
- clearTimeout(this.hideTimeout);
- clearTimeout(this.transitionTimeout);
- this.timeoutId = null;
- this.hideTimeout = null;
- this.transitionTimeout = null;
- }
-
- $onDestroy() {
- this.clearTimeouts();
+ } else {
+ this.hide(shape);
+ }
}
}
Controller.$inject = ['$element', '$translate'];
diff --git a/client/core/src/components/snackbar/style.scss b/client/core/src/components/snackbar/style.scss
index f3617fe5e6..b8f863b790 100644
--- a/client/core/src/components/snackbar/style.scss
+++ b/client/core/src/components/snackbar/style.scss
@@ -1,38 +1,50 @@
@import "colors";
-vn-snackbar > div {
- box-sizing: border-box;
- background-color: #333;
- color: white;
+
+vn-snackbar #shapes {
position: fixed;
bottom: 0;
- left: 50%;
+ right: 15px;
width: 20em;
- margin-left: -10em;
- padding: 1em;
- border-top-left-radius: .2em;
- border-top-right-radius: .2em;
- transform: translateY(10em);
- transition: transform 300ms ease-in-out;
+ max-height: 20.625em;
z-index: 100;
+}
+
+vn-snackbar .shape {
+ box-sizing: border-box;
+ background-color: rgba(1, 1, 1, 0.8);
+ color: white;
+ padding: 1em;
+ border-radius: .2em;
box-shadow: 0 0 .4em rgba(1,1,1,.4);
+ margin-bottom: 15px;
+ transform: translateX(20em);
+ transition: transform 300ms ease-in-out;
+
+ &.text {
+ text-align: center
+ }
&.shown {
- transform: translateY(0);
+ transform: translateX(0);
}
- &.notice {
- background-color: #1e88e5;
+
+ &.success {
+ background-color: rgba(163, 209, 49, 0.8);
+ color: #445911;
& > button {
color: rgba(1, 1, 1, 0.6);
}
}
+
&.error {
- background-color: #c62828;
+ background-color: rgba(198, 40, 40, 0.8);
& > button {
color: rgba(1, 1, 1, 0.6);
}
}
+
& > button {
cursor: pointer;
float: right;
diff --git a/client/core/src/components/watcher/watcher.js b/client/core/src/components/watcher/watcher.js
index 790f76870f..f890a1977c 100644
--- a/client/core/src/components/watcher/watcher.js
+++ b/client/core/src/components/watcher/watcher.js
@@ -177,7 +177,7 @@ export default class Watcher extends Component {
* Notifies the user that the data has been saved.
*/
notifySaved() {
- this.vnApp.showMessage(this._.instant('Data saved!'));
+ this.vnApp.showSuccess(this._.instant('Data saved!'));
}
writeData(json, resolve) {
diff --git a/client/core/src/lib/app.js b/client/core/src/lib/app.js
index 07822682ae..ac744be9d8 100644
--- a/client/core/src/lib/app.js
+++ b/client/core/src/lib/app.js
@@ -11,19 +11,28 @@ export default class App {
this.loaderStatus = 0;
this.loading = false;
}
+
showMessage(message) {
if (this.snackbar)
this.snackbar.show({message: message});
}
+
+ showSuccess(message) {
+ if (this.snackbar)
+ this.snackbar.showSuccess({message: message});
+ }
+
showError(message) {
if (this.snackbar)
this.snackbar.showError({message: message});
}
+
pushLoader() {
this.loaderStatus++;
if (this.loaderStatus === 1)
this.loading = true;
}
+
popLoader() {
this.loaderStatus--;
if (this.loaderStatus === 0)
diff --git a/client/core/src/styles/fontello-codes.css b/client/core/src/styles/fontello-codes.css
index d90a5615a7..34da979b0a 100644
--- a/client/core/src/styles/fontello-codes.css
+++ b/client/core/src/styles/fontello-codes.css
@@ -3,6 +3,7 @@
.icon-volume:before { content: '\e801'; } /* '' */
.icon-barcode:before { content: '\e802'; } /* '' */
.icon-bucket:before { content: '\e803'; } /* '' */
+.icon-reserva:before { content: '\e804'; } /* '' */
.icon-frozen:before { content: '\e808'; } /* '' */
.icon-disabled:before { content: '\e80b'; } /* '' */
.icon-invoices:before { content: '\e80c'; } /* '' */
diff --git a/client/core/src/styles/fontello.woff2 b/client/core/src/styles/fontello.woff2
index 50b83f934d..d1d21d7d87 100644
Binary files a/client/core/src/styles/fontello.woff2 and b/client/core/src/styles/fontello.woff2 differ
diff --git a/client/ticket/src/data/step-one/index.js b/client/ticket/src/data/step-one/index.js
index 7e96eb40a8..5a9d8ab5b8 100644
--- a/client/ticket/src/data/step-one/index.js
+++ b/client/ticket/src/data/step-one/index.js
@@ -44,7 +44,7 @@ class Controller {
return true;
}, res => {
if (res.data.error.message === 'NO_AGENCY_AVAILABLE')
- this.vnApp.showError(
+ this.vnApp.showSuccess(
this.$translate.instant(`There's no available agency for this landing date`)
);
});
diff --git a/e2e/helpers/extensions.js b/e2e/helpers/extensions.js
index 7f146d30ef..57c33f84d1 100644
--- a/e2e/helpers/extensions.js
+++ b/e2e/helpers/extensions.js
@@ -188,11 +188,9 @@ Nightmare.action('waitForSnackbarReset', function(done) {
});
Nightmare.action('waitForSnackbar', function(done) {
- this.wait(500)
- .waitForInnerText('vn-snackbar .text')
- .then(value => {
- this.waitForSnackbarReset()
- .then(() => done(null, value));
+ this.wait(500).waitForShapes('vn-snackbar .shape .text')
+ .then(shapes => {
+ done(null, shapes);
});
});
@@ -202,3 +200,17 @@ Nightmare.action('waitForURL', function(hashURL, done) {
}, hashURL)
.then(done);
});
+
+Nightmare.action('waitForShapes', function(selector, done) {
+ this.wait(selector)
+ .evaluate_now(selector => {
+ let shapes = document.querySelectorAll(selector);
+ let shapesList = [];
+
+ for (let shape of shapes) {
+ shapesList.push(shape.innerText);
+ }
+
+ return shapesList;
+ }, done, selector);
+});
diff --git a/e2e/paths/client-module/01_create_client.spec.js b/e2e/paths/client-module/01_create_client.spec.js
index 971d5842c3..531a41b005 100644
--- a/e2e/paths/client-module/01_create_client.spec.js
+++ b/e2e/paths/client-module/01_create_client.spec.js
@@ -67,7 +67,7 @@ describe('Client', () => {
.click(selectors.createClientView.createButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -81,7 +81,7 @@ describe('Client', () => {
.click(selectors.createClientView.createButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -94,7 +94,7 @@ describe('Client', () => {
.click(selectors.createClientView.createButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -105,7 +105,7 @@ describe('Client', () => {
.click(selectors.createClientView.createButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/02_edit_basic_data.spec.js b/e2e/paths/client-module/02_edit_basic_data.spec.js
index e8724c84af..c1645cc219 100644
--- a/e2e/paths/client-module/02_edit_basic_data.spec.js
+++ b/e2e/paths/client-module/02_edit_basic_data.spec.js
@@ -66,7 +66,7 @@ describe('Client', () => {
.click(selectors.clientBasicData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/03_edit_fiscal_data.spec.js b/e2e/paths/client-module/03_edit_fiscal_data.spec.js
index 70a7efbab9..09b020251a 100644
--- a/e2e/paths/client-module/03_edit_fiscal_data.spec.js
+++ b/e2e/paths/client-module/03_edit_fiscal_data.spec.js
@@ -109,7 +109,7 @@ describe('Client', () => {
.click(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -118,7 +118,7 @@ describe('Client', () => {
.waitToClick(selectors.clientFiscalData.acceptPropagationButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Equivalent tax spreaded');
+ expect(result).toEqual(jasmine.arrayContaining(['Equivalent tax spreaded']));
});
});
diff --git a/e2e/paths/client-module/04_edit_pay_method.spec.js b/e2e/paths/client-module/04_edit_pay_method.spec.js
index cc084d802e..e0e0cb0579 100644
--- a/e2e/paths/client-module/04_edit_pay_method.spec.js
+++ b/e2e/paths/client-module/04_edit_pay_method.spec.js
@@ -58,7 +58,7 @@ describe('Client', () => {
.waitToClick(selectors.clientPayMethod.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('requires an IBAN');
+ expect(result).toEqual(jasmine.arrayContaining(['requires an IBAN']));
});
});
@@ -69,7 +69,7 @@ describe('Client', () => {
.waitToClick(selectors.clientPayMethod.saveButton)
.waitForSnackbar()
.then(result => {
- expect((result === 'Notification sent!' || result === 'Data saved!')).toBeTruthy();
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!', 'Notification sent!']));
});
});
diff --git a/e2e/paths/client-module/05_add_address.spec.js b/e2e/paths/client-module/05_add_address.spec.js
index 8ab306fb05..63f58a1386 100644
--- a/e2e/paths/client-module/05_add_address.spec.js
+++ b/e2e/paths/client-module/05_add_address.spec.js
@@ -90,7 +90,7 @@ describe('Client', () => {
.waitToClick(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -102,7 +102,7 @@ describe('Client', () => {
.click(selectors.clientAddresses.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -143,7 +143,7 @@ describe('Client', () => {
.waitToClick(selectors.clientAddresses.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('The default consignee can not be unchecked');
+ expect(result).toEqual(jasmine.arrayContaining(['The default consignee can not be unchecked']));
});
});
});
diff --git a/e2e/paths/client-module/06_add_address_notes.spec.js b/e2e/paths/client-module/06_add_address_notes.spec.js
index 15e75b088d..e8f0df0d44 100644
--- a/e2e/paths/client-module/06_add_address_notes.spec.js
+++ b/e2e/paths/client-module/06_add_address_notes.spec.js
@@ -65,7 +65,7 @@ describe('Client', () => {
.waitToClick(selectors.clientAddresses.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('type cannot be blank');
+ expect(result).toEqual(jasmine.arrayContaining(['type cannot be blank']));
});
});
@@ -77,7 +77,7 @@ describe('Client', () => {
.waitToClick(selectors.clientAddresses.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -91,7 +91,7 @@ describe('Client', () => {
.waitToClick(selectors.clientAddresses.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
});
diff --git a/e2e/paths/client-module/07_edit_web_access.spec.js b/e2e/paths/client-module/07_edit_web_access.spec.js
index 3b20674bb4..d0b3f7e947 100644
--- a/e2e/paths/client-module/07_edit_web_access.spec.js
+++ b/e2e/paths/client-module/07_edit_web_access.spec.js
@@ -54,7 +54,7 @@ describe('Client', () => {
.waitToClick(selectors.clientWebAccess.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain(`Data saved!`);
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/08_add_notes.spec.js b/e2e/paths/client-module/08_add_notes.spec.js
index 5b3852b1a9..763bf8ea1d 100644
--- a/e2e/paths/client-module/08_add_notes.spec.js
+++ b/e2e/paths/client-module/08_add_notes.spec.js
@@ -62,7 +62,7 @@ describe('Client', () => {
.click(selectors.clientNotes.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/09_add_credit.spec.js b/e2e/paths/client-module/09_add_credit.spec.js
index fc5fe9560e..2f5366ead9 100644
--- a/e2e/paths/client-module/09_add_credit.spec.js
+++ b/e2e/paths/client-module/09_add_credit.spec.js
@@ -63,7 +63,7 @@ describe('Client', () => {
.click(selectors.clientCredit.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/10_add_greuge.spec.js b/e2e/paths/client-module/10_add_greuge.spec.js
index da6aea9e26..6af1c40732 100644
--- a/e2e/paths/client-module/10_add_greuge.spec.js
+++ b/e2e/paths/client-module/10_add_greuge.spec.js
@@ -63,7 +63,7 @@ describe('Client', () => {
.click(selectors.clientGreuge.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Some fields are invalid');
+ expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
});
});
@@ -74,7 +74,7 @@ describe('Client', () => {
.click(selectors.clientGreuge.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/client-module/12_lock_of_verified_data.spec.js b/e2e/paths/client-module/12_lock_of_verified_data.spec.js
index 4515e70234..f4bb173952 100644
--- a/e2e/paths/client-module/12_lock_of_verified_data.spec.js
+++ b/e2e/paths/client-module/12_lock_of_verified_data.spec.js
@@ -77,7 +77,7 @@ describe('Client', () => {
.click(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -164,7 +164,7 @@ describe('Client', () => {
.waitToClick(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -190,7 +190,7 @@ describe('Client', () => {
.click(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -353,7 +353,7 @@ describe('Client', () => {
.waitToClick(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -379,7 +379,7 @@ describe('Client', () => {
.click(selectors.clientFiscalData.saveButton)
.waitForSnackbar()
.then(result => {
- expect(result).toEqual('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/02_edit_item_basic_data.spec.js b/e2e/paths/item-module/02_edit_item_basic_data.spec.js
index 1edf433bec..506438feb5 100644
--- a/e2e/paths/item-module/02_edit_item_basic_data.spec.js
+++ b/e2e/paths/item-module/02_edit_item_basic_data.spec.js
@@ -61,7 +61,7 @@ describe('Item', () => {
.click(selectors.itemBasicData.submitBasicDataButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/03_edit_item_tax.spec.js b/e2e/paths/item-module/03_edit_item_tax.spec.js
index 9795074a7e..ce2160fb77 100644
--- a/e2e/paths/item-module/03_edit_item_tax.spec.js
+++ b/e2e/paths/item-module/03_edit_item_tax.spec.js
@@ -55,7 +55,7 @@ describe('Item', () => {
.click(selectors.itemTax.submitTaxButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/04_create_item_tags.spec.js b/e2e/paths/item-module/04_create_item_tags.spec.js
index ec9534d120..3310049e30 100644
--- a/e2e/paths/item-module/04_create_item_tags.spec.js
+++ b/e2e/paths/item-module/04_create_item_tags.spec.js
@@ -56,7 +56,7 @@ describe('Item', () => {
.click(selectors.itemTags.submitItemTagsButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/05_create_item_niche.spec.js b/e2e/paths/item-module/05_create_item_niche.spec.js
index 137ce2e4e5..cedd35d2df 100644
--- a/e2e/paths/item-module/05_create_item_niche.spec.js
+++ b/e2e/paths/item-module/05_create_item_niche.spec.js
@@ -54,7 +54,7 @@ describe('Item', () => {
.click(selectors.itemNiches.submitNichesButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/06_create_item_botanical.spec.js b/e2e/paths/item-module/06_create_item_botanical.spec.js
index 1d22748031..0df2171529 100644
--- a/e2e/paths/item-module/06_create_item_botanical.spec.js
+++ b/e2e/paths/item-module/06_create_item_botanical.spec.js
@@ -54,7 +54,7 @@ describe('Item', () => {
.waitToClick(selectors.itemBotanical.submitBotanicalButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -98,7 +98,7 @@ describe('Item', () => {
.waitToClick(selectors.itemBotanical.submitBotanicalButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/07_create_item_barcode.spec.js b/e2e/paths/item-module/07_create_item_barcode.spec.js
index c326d2ac1b..563eed7f64 100644
--- a/e2e/paths/item-module/07_create_item_barcode.spec.js
+++ b/e2e/paths/item-module/07_create_item_barcode.spec.js
@@ -53,7 +53,7 @@ describe('Item', () => {
.waitToClick(selectors.itemBarcodes.submitBarcodesButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/item-module/08_item_create_and_clone.spec.js b/e2e/paths/item-module/08_item_create_and_clone.spec.js
index 2a4e7b8cf2..91d624f75a 100644
--- a/e2e/paths/item-module/08_item_create_and_clone.spec.js
+++ b/e2e/paths/item-module/08_item_create_and_clone.spec.js
@@ -73,7 +73,7 @@ describe('Item', () => {
.click(selectors.itemCreateView.createButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/ticket-module/01_create_ticket_observations.spec.js b/e2e/paths/ticket-module/01_create_ticket_observations.spec.js
index 0e7b279750..0604abc4f1 100644
--- a/e2e/paths/ticket-module/01_create_ticket_observations.spec.js
+++ b/e2e/paths/ticket-module/01_create_ticket_observations.spec.js
@@ -55,7 +55,7 @@ describe('Ticket', () => {
.click(selectors.ticketNotes.submitNotesButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
diff --git a/e2e/paths/ticket-module/04_create_ticket_packages.spec.js b/e2e/paths/ticket-module/04_create_ticket_packages.spec.js
index c87b99705a..11fefba383 100644
--- a/e2e/paths/ticket-module/04_create_ticket_packages.spec.js
+++ b/e2e/paths/ticket-module/04_create_ticket_packages.spec.js
@@ -55,7 +55,7 @@
// .click(selectors.ticketPackages.savePackagesButton)
// .waitForSnackbar()
// .then(result => {
-// expect(result).toContain('Some fields are invalid');
+// expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
// });
// });
@@ -65,7 +65,7 @@
// .click(selectors.ticketPackages.savePackagesButton)
// .waitForSnackbar()
// .then(result => {
-// expect(result).toContain('Some fields are invalid');
+// expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
// });
// });
@@ -76,7 +76,7 @@
// .click(selectors.ticketPackages.savePackagesButton)
// .waitForSnackbar()
// .then(result => {
-// expect(result).toContain('Some fields are invalid');
+// expect(result).toEqual(jasmine.arrayContaining(['Some fields are invalid']));
// });
// });
@@ -88,7 +88,7 @@
// .click(selectors.ticketPackages.savePackagesButton)
// .waitForSnackbar()
// .then(result => {
-// expect(result).toContain('Package cannot be blank');
+// expect(result).toEqual(jasmine.arrayContaining(['Package cannot be blank']));
// });
// });
@@ -100,7 +100,7 @@
// .click(selectors.ticketPackages.savePackagesButton)
// .waitForSnackbar()
// .then(result => {
-// expect(result).toContain('Data saved!');
+// expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
// });
// });
diff --git a/e2e/paths/ticket-module/05_create_new_tracking_state.spec.js b/e2e/paths/ticket-module/05_create_new_tracking_state.spec.js
index ce44e1b266..ac7addc2ae 100644
--- a/e2e/paths/ticket-module/05_create_new_tracking_state.spec.js
+++ b/e2e/paths/ticket-module/05_create_new_tracking_state.spec.js
@@ -61,7 +61,7 @@ describe('Ticket', () => {
.click(selectors.createStateView.saveStateButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('No changes to save');
+ expect(result).toEqual(jasmine.arrayContaining(['No changes to save']));
});
});
@@ -73,7 +73,7 @@ describe('Ticket', () => {
.click(selectors.createStateView.saveStateButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
@@ -94,7 +94,7 @@ describe('Ticket', () => {
.click(selectors.createStateView.saveStateButton)
.waitForSnackbar()
.then(result => {
- expect(result).toContain('Data saved!');
+ expect(result).toEqual(jasmine.arrayContaining(['Data saved!']));
});
});
});