137 lines
5.6 KiB
JavaScript
137 lines
5.6 KiB
JavaScript
/** @odoo-module */
|
|
|
|
import * as ProductScreen from "@point_of_sale/../tests/tours/helpers/ProductScreenTourMethods";
|
|
import * as ReceiptScreen from "@point_of_sale/../tests/tours/helpers/ReceiptScreenTourMethods";
|
|
import * as PaymentScreen from "@point_of_sale/../tests/tours/helpers/PaymentScreenTourMethods";
|
|
import * as TicketScreen from "@point_of_sale/../tests/tours/helpers/TicketScreenTourMethods";
|
|
import * as Chrome from "@point_of_sale/../tests/tours/helpers/ChromeTourMethods";
|
|
import * as Utils from "@point_of_sale/../tests/tours/helpers/utils";
|
|
import { registry } from "@web/core/registry";
|
|
|
|
registry.category("web_tour.tours").add("ChromeTour", {
|
|
test: true,
|
|
url: "/pos/ui",
|
|
steps: () =>
|
|
[
|
|
ProductScreen.confirmOpeningPopup(),
|
|
Chrome.clickMenuButton(),
|
|
Chrome.isCashMoveButtonShown(),
|
|
Chrome.clickMenuButton(),
|
|
|
|
// Order 1 is at Product Screen
|
|
ProductScreen.clickHomeCategory(),
|
|
ProductScreen.addOrderline("Desk Pad", "1", "2", "2.0"),
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.checkStatus("-0001", "Ongoing"),
|
|
|
|
// Order 2 is at Payment Screen
|
|
TicketScreen.clickNewTicket(),
|
|
ProductScreen.addOrderline("Monitor Stand", "3", "4", "12.0"),
|
|
ProductScreen.clickPayButton(),
|
|
PaymentScreen.isShown(),
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.checkStatus("-0002", "Payment"),
|
|
|
|
// Order 3 is at Receipt Screen
|
|
TicketScreen.clickNewTicket(),
|
|
ProductScreen.addOrderline("Whiteboard Pen", "5", "6", "30.0"),
|
|
ProductScreen.clickPayButton(),
|
|
PaymentScreen.clickPaymentMethod("Bank"),
|
|
PaymentScreen.remainingIs("0.0"),
|
|
PaymentScreen.validateButtonIsHighlighted(true),
|
|
PaymentScreen.clickValidate(),
|
|
ReceiptScreen.isShown(),
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.checkStatus("-0003", "Receipt"),
|
|
|
|
// Select order 1, should be at Product Screen
|
|
TicketScreen.selectOrder("-0001"),
|
|
TicketScreen.loadSelectedOrder(),
|
|
ProductScreen.productIsDisplayed("Desk Pad"),
|
|
ProductScreen.selectedOrderlineHas("Desk Pad", "1.0", "2.0"),
|
|
|
|
// Select order 2, should be at Payment Screen
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.selectOrder("-0002"),
|
|
TicketScreen.loadSelectedOrder(),
|
|
PaymentScreen.emptyPaymentlines("12.0"),
|
|
PaymentScreen.validateButtonIsHighlighted(false),
|
|
|
|
// Select order 3, should be at Receipt Screen
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.selectOrder("-0003"),
|
|
TicketScreen.loadSelectedOrder(),
|
|
ReceiptScreen.totalAmountContains("30.0"),
|
|
|
|
// Pay order 1, with change
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.selectOrder("-0001"),
|
|
TicketScreen.loadSelectedOrder(),
|
|
ProductScreen.isShown(),
|
|
ProductScreen.clickPayButton(),
|
|
PaymentScreen.clickPaymentMethod("Cash"),
|
|
PaymentScreen.enterPaymentLineAmount("Cash", "20"),
|
|
PaymentScreen.changeIs("18.0"),
|
|
PaymentScreen.remainingIs("0.0"),
|
|
PaymentScreen.validateButtonIsHighlighted(true),
|
|
PaymentScreen.clickValidate(),
|
|
ReceiptScreen.totalAmountContains("2.0"),
|
|
|
|
// Order 1 now should have Receipt status
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.checkStatus("-0001", "Receipt"),
|
|
|
|
// Select order 3, should still be at Receipt Screen
|
|
// and the total amount doesn't change.
|
|
TicketScreen.selectOrder("-0003"),
|
|
TicketScreen.loadSelectedOrder(),
|
|
ReceiptScreen.totalAmountContains("30.0"),
|
|
|
|
// click next screen on order 3
|
|
// then delete the new empty order
|
|
ReceiptScreen.clickNextOrder(),
|
|
ProductScreen.orderIsEmpty(),
|
|
Chrome.clickMenuButton(),
|
|
Chrome.clickTicketButton(),
|
|
TicketScreen.deleteOrder("-0004"),
|
|
TicketScreen.deleteOrder("-0001"),
|
|
|
|
// After deleting order 1 above, order 2 became
|
|
// the 2nd-row order and it has payment status
|
|
TicketScreen.nthRowContains(2, "Payment"),
|
|
TicketScreen.deleteOrder("-0002"),
|
|
Chrome.confirmPopup(),
|
|
TicketScreen.clickNewTicket(),
|
|
|
|
// Invoice an order
|
|
ProductScreen.addOrderline("Whiteboard Pen", "5", "6"),
|
|
ProductScreen.clickPartnerButton(),
|
|
ProductScreen.clickCustomer("Partner Test 1"),
|
|
ProductScreen.clickPayButton(),
|
|
PaymentScreen.clickPaymentMethod("Bank"),
|
|
PaymentScreen.clickInvoiceButton(),
|
|
PaymentScreen.clickValidate(),
|
|
ReceiptScreen.isShown(),
|
|
].flat(),
|
|
});
|
|
|
|
registry.category("web_tour.tours").add("SearchMoreCustomer", {
|
|
test: true,
|
|
steps: () =>
|
|
[
|
|
ProductScreen.confirmOpeningPopup(),
|
|
ProductScreen.clickPartnerButton(),
|
|
ProductScreen.inputCustomerSearchbar("1111"),
|
|
Utils.selectButton("Search more"),
|
|
ProductScreen.clickCustomer("BPartner"),
|
|
ProductScreen.isShown(),
|
|
].flat(),
|
|
});
|