blob: 6c542e668587fb438d442e66d0122991884fabff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
odoo.define('pos_restaurant.tour.FloorScreen', function (require) {
'use strict';
const { Chrome } = require('pos_restaurant.tour.ChromeTourMethods');
const { FloorScreen } = require('pos_restaurant.tour.FloorScreenTourMethods');
const { TextInputPopup } = require('pos_restaurant.tour.TextInputPopupTourMethods');
const { NumberPopup } = require('point_of_sale.tour.NumberPopupTourMethods');
const { ProductScreen } = require('pos_restaurant.tour.ProductScreenTourMethods');
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();
// check floors if they contain their corresponding tables
FloorScreen.check.selectedFloorIs('Main Floor');
FloorScreen.check.hasTable('T2');
FloorScreen.check.hasTable('T4');
FloorScreen.check.hasTable('T5');
FloorScreen.do.clickFloor('Second Floor');
FloorScreen.check.hasTable('T3');
FloorScreen.check.hasTable('T1');
// clicking table in active mode does not open product screen
// instead, table is selected
FloorScreen.do.clickEdit();
FloorScreen.check.editModeIsActive(true);
FloorScreen.do.clickTable('T3');
FloorScreen.check.selectedTableIs('T3');
FloorScreen.do.clickTable('T1');
FloorScreen.check.selectedTableIs('T1');
// switching floor in edit mode deactivates edit mode
FloorScreen.do.clickFloor('Main Floor');
FloorScreen.check.editModeIsActive(false);
FloorScreen.do.clickEdit();
FloorScreen.check.editModeIsActive(true);
// test add table
FloorScreen.do.clickAddTable();
FloorScreen.check.selectedTableIs('T1');
FloorScreen.do.clickRename();
TextInputPopup.check.isShown();
TextInputPopup.do.inputText('T100');
TextInputPopup.do.clickConfirm();
FloorScreen.check.selectedTableIs('T100');
// test duplicate table
FloorScreen.do.clickDuplicate();
// new table is already named T101
FloorScreen.check.selectedTableIs('T101');
FloorScreen.do.clickRename();
TextInputPopup.check.isShown();
TextInputPopup.do.inputText('T1111');
TextInputPopup.do.clickConfirm();
FloorScreen.check.selectedTableIs('T1111');
// switch floor, switch back and check if
// the new tables are still there
FloorScreen.do.clickFloor('Second Floor');
FloorScreen.check.editModeIsActive(false);
FloorScreen.check.hasTable('T3');
FloorScreen.check.hasTable('T1');
FloorScreen.do.clickFloor('Main Floor');
FloorScreen.check.hasTable('T2');
FloorScreen.check.hasTable('T4');
FloorScreen.check.hasTable('T5');
FloorScreen.check.hasTable('T100');
FloorScreen.check.hasTable('T1111');
// test delete table
FloorScreen.do.clickEdit();
FloorScreen.check.editModeIsActive(true);
FloorScreen.do.clickTable('T2');
FloorScreen.check.selectedTableIs('T2');
FloorScreen.do.clickTrash();
Chrome.do.confirmPopup();
// change number of seats
FloorScreen.do.clickTable('T4');
FloorScreen.check.selectedTableIs('T4');
FloorScreen.do.clickSeats();
NumberPopup.do.pressNumpad('Backspace 9');
NumberPopup.check.inputShownIs('9');
NumberPopup.do.clickConfirm();
FloorScreen.check.tableSeatIs('T4', '9');
// change shape
FloorScreen.do.changeShapeTo('round');
// Opening product screen in main floor should go back to main floor
FloorScreen.do.clickEdit();
FloorScreen.check.editModeIsActive(false);
FloorScreen.check.tableIsNotSelected('T4');
FloorScreen.do.clickTable('T4');
ProductScreen.check.isShown();
Chrome.check.backToFloorTextIs('Main Floor', 'T4');
Chrome.do.backToFloor();
// Opening product screen in second floor should go back to second floor
FloorScreen.do.clickFloor('Second Floor');
FloorScreen.check.hasTable('T3');
FloorScreen.do.clickTable('T3');
Chrome.check.backToFloorTextIs('Second Floor', 'T3');
Tour.register('FloorScreenTour', { test: true, url: '/pos/ui' }, getSteps());
});
|