diff options
Diffstat (limited to 'addons/pos_restaurant/static/tests/tours/TicketScreen.tour.js')
| -rw-r--r-- | addons/pos_restaurant/static/tests/tours/TicketScreen.tour.js | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/addons/pos_restaurant/static/tests/tours/TicketScreen.tour.js b/addons/pos_restaurant/static/tests/tours/TicketScreen.tour.js new file mode 100644 index 00000000..278bbfc5 --- /dev/null +++ b/addons/pos_restaurant/static/tests/tours/TicketScreen.tour.js @@ -0,0 +1,61 @@ +odoo.define('pos_restaurant.tour.TicketScreen', function (require) { + 'use strict'; + + const { ProductScreen } = require('point_of_sale.tour.ProductScreenTourMethods'); + const { FloorScreen } = require('pos_restaurant.tour.FloorScreenTourMethods'); + const { TicketScreen } = require('point_of_sale.tour.TicketScreenTourMethods'); + const { Chrome } = require('pos_restaurant.tour.ChromeTourMethods'); + const { getSteps, startSteps } = require('point_of_sale.tour.utils'); + var Tour = require('web_tour.tour'); + + startSteps(); + + // New Ticket button should not be in the ticket screen if no table is selected. + Chrome.do.clickTicketButton(); + TicketScreen.check.noNewTicketButton(); + TicketScreen.do.clickDiscard(); + + // Deleting the last order in the table brings back to floorscreen + FloorScreen.do.clickTable('T4'); + ProductScreen.check.isShown(); + Chrome.do.clickTicketButton(); + TicketScreen.check.nthRowContains(2, '-0001'); + TicketScreen.do.deleteOrder('-0001'); + FloorScreen.check.isShown(); + + // Create 2 items in a table. From floorscreen, delete 1 item. Then select the other item. + // Correct order and screen should be displayed and the BackToFloorButton is shown. + FloorScreen.do.clickTable('T2'); + ProductScreen.exec.addOrderline('Minute Maid', '1', '2'); + ProductScreen.check.totalAmountIs('2.0'); + Chrome.do.clickTicketButton(); + TicketScreen.do.clickNewTicket(); + ProductScreen.exec.addOrderline('Coca-Cola', '2', '2'); + ProductScreen.check.totalAmountIs('4.0'); + Chrome.do.backToFloor(); + FloorScreen.check.orderCountSyncedInTableIs('T2', '2'); + Chrome.do.clickTicketButton(); + TicketScreen.do.deleteOrder('-0003'); + Chrome.do.confirmPopup(); + TicketScreen.do.selectOrder('-0002'); + ProductScreen.check.totalAmountIs('2.0'); + Chrome.check.backToFloorTextIs('Main Floor', 'T2'); + Chrome.do.backToFloor(); + + // Make sure that order is deleted properly. + FloorScreen.do.clickTable('T5'); + ProductScreen.exec.addOrderline('Minute Maid', '1', '3'); + ProductScreen.check.totalAmountIs('3.0'); + Chrome.do.backToFloor(); + FloorScreen.check.orderCountSyncedInTableIs('T5', '1'); + Chrome.do.clickTicketButton(); + TicketScreen.do.deleteOrder('-0004'); + Chrome.do.confirmPopup(); + TicketScreen.do.clickDiscard(); + FloorScreen.check.isShown(); + FloorScreen.check.orderCountSyncedInTableIs('T5', '0'); + FloorScreen.do.clickTable('T5'); + ProductScreen.check.orderIsEmpty(); + + Tour.register('PosResTicketScreenTour', { test: true, url: '/pos/ui' }, getSteps()); +}); |
