summaryrefslogtreecommitdiff
path: root/addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js')
-rw-r--r--addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js70
1 files changed, 70 insertions, 0 deletions
diff --git a/addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js b/addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js
new file mode 100644
index 00000000..296fbd55
--- /dev/null
+++ b/addons/point_of_sale/static/tests/tours/PaymentScreen.tour.js
@@ -0,0 +1,70 @@
+odoo.define('point_of_sale.tour.PaymentScreen', function (require) {
+ 'use strict';
+
+ const { ProductScreen } = require('point_of_sale.tour.ProductScreenTourMethods');
+ const { PaymentScreen } = require('point_of_sale.tour.PaymentScreenTourMethods');
+ const { getSteps, startSteps } = require('point_of_sale.tour.utils');
+ var Tour = require('web_tour.tour');
+
+ startSteps();
+
+ ProductScreen.exec.addOrderline('Letter Tray', '10');
+ ProductScreen.check.selectedOrderlineHas('Letter Tray', '10.0');
+ ProductScreen.do.clickPayButton();
+ PaymentScreen.check.emptyPaymentlines('52.8');
+
+ PaymentScreen.do.clickPaymentMethod('Cash');
+ PaymentScreen.do.pressNumpad('1 1');
+ PaymentScreen.check.selectedPaymentlineHas('Cash', '11.00');
+ PaymentScreen.check.remainingIs('41.8');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(false);
+ // remove the selected paymentline with multiple backspace presses
+ PaymentScreen.do.pressNumpad('Backspace Backspace');
+ PaymentScreen.check.selectedPaymentlineHas('Cash', '0.00');
+ PaymentScreen.do.pressNumpad('Backspace');
+ PaymentScreen.check.emptyPaymentlines('52.8');
+
+ // Pay with bank, the selected line should have full amount
+ PaymentScreen.do.clickPaymentMethod('Bank');
+ PaymentScreen.check.remainingIs('0.0');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(true);
+ // remove the line using the delete button
+ PaymentScreen.do.clickPaymentlineDelButton('Bank', '52.8');
+
+ // Use +10 and +50 to increment the amount of the paymentline
+ PaymentScreen.do.clickPaymentMethod('Cash');
+ PaymentScreen.do.pressNumpad('+10');
+ PaymentScreen.check.remainingIs('42.8');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(false);
+ PaymentScreen.do.pressNumpad('+50');
+ PaymentScreen.check.remainingIs('0.0');
+ PaymentScreen.check.changeIs('7.2');
+ PaymentScreen.check.validateButtonIsHighlighted(true);
+ PaymentScreen.do.clickPaymentlineDelButton('Cash', '60.0');
+
+ // Multiple paymentlines
+ PaymentScreen.do.clickPaymentMethod('Cash');
+ PaymentScreen.do.pressNumpad('1');
+ PaymentScreen.check.remainingIs('51.8');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(false);
+ PaymentScreen.do.clickPaymentMethod('Cash');
+ PaymentScreen.do.pressNumpad('5');
+ PaymentScreen.check.remainingIs('46.8');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(false);
+ PaymentScreen.do.clickPaymentMethod('Bank');
+ PaymentScreen.do.pressNumpad('2 0');
+ PaymentScreen.check.remainingIs('26.8');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(false);
+ PaymentScreen.do.clickPaymentMethod('Bank');
+ PaymentScreen.check.remainingIs('0.0');
+ PaymentScreen.check.changeIs('0.0');
+ PaymentScreen.check.validateButtonIsHighlighted(true);
+
+ Tour.register('PaymentScreenTour', { test: true, url: '/pos/ui' }, getSteps());
+});