summaryrefslogtreecommitdiff
path: root/addons/pos_restaurant/static/tests/tours/SplitBillScreen.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/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js')
-rw-r--r--addons/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/addons/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js b/addons/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js
new file mode 100644
index 00000000..8b9c0f7d
--- /dev/null
+++ b/addons/pos_restaurant/static/tests/tours/SplitBillScreen.tour.js
@@ -0,0 +1,52 @@
+odoo.define('pos_restaurant.tour.SplitBillScreen', function (require) {
+ 'use strict';
+
+ const { PaymentScreen } = require('point_of_sale.tour.PaymentScreenTourMethods');
+ const { Chrome } = require('pos_restaurant.tour.ChromeTourMethods');
+ const { FloorScreen } = require('pos_restaurant.tour.FloorScreenTourMethods');
+ const { ProductScreen } = require('pos_restaurant.tour.ProductScreenTourMethods');
+ const { SplitBillScreen } = require('pos_restaurant.tour.SplitBillScreenTourMethods');
+ const { TicketScreen } = require('point_of_sale.tour.TicketScreenTourMethods');
+ const { getSteps, startSteps } = require('point_of_sale.tour.utils');
+ var Tour = require('web_tour.tour');
+
+ // signal to start generating steps
+ // when finished, steps can be taken from getSteps
+ startSteps();
+
+ FloorScreen.do.clickTable('T2');
+ ProductScreen.exec.addOrderline('Water', '5', '2', '10.0');
+ ProductScreen.exec.addOrderline('Minute Maid', '3', '2', '6.0');
+ ProductScreen.exec.addOrderline('Coca-Cola', '1', '2', '2.0');
+ ProductScreen.do.clickSplitBillButton();
+
+ // Check if the screen contains all the orderlines
+ SplitBillScreen.check.orderlineHas('Water', '5', '0');
+ SplitBillScreen.check.orderlineHas('Minute Maid', '3', '0');
+ SplitBillScreen.check.orderlineHas('Coca-Cola', '1', '0');
+
+ // split 3 water and 1 coca-cola
+ SplitBillScreen.do.clickOrderline('Water');
+ SplitBillScreen.check.orderlineHas('Water', '5', '1');
+ SplitBillScreen.do.clickOrderline('Water');
+ SplitBillScreen.do.clickOrderline('Water');
+ SplitBillScreen.check.orderlineHas('Water', '5', '3');
+ SplitBillScreen.check.subtotalIs('6.0')
+ SplitBillScreen.do.clickOrderline('Coca-Cola');
+ SplitBillScreen.check.orderlineHas('Coca-Cola', '1', '1');
+ SplitBillScreen.check.subtotalIs('8.0')
+
+ // click pay to split, go back to check the lines
+ SplitBillScreen.do.clickPay();
+ PaymentScreen.do.clickBack();
+ ProductScreen.do.clickOrderline('Water', '3.0')
+ ProductScreen.do.clickOrderline('Coca-Cola', '1.0')
+
+ // go back to the original order and see if the order is changed
+ Chrome.do.clickTicketButton();
+ TicketScreen.do.selectOrder('-0001');
+ ProductScreen.do.clickOrderline('Water', '2.0')
+ ProductScreen.do.clickOrderline('Minute Maid', '3.0')
+
+ Tour.register('SplitBillScreenTour', { test: true, url: '/pos/ui' }, getSteps());
+});