mirror of
https://github.com/bringout/oca-ocb-pos.git
synced 2026-04-24 02:02:02 +02:00
19.0 vanilla
This commit is contained in:
parent
6e54c1af6c
commit
3ca647e428
1087 changed files with 132065 additions and 108499 deletions
|
|
@ -0,0 +1,74 @@
|
|||
import { test, describe, expect } from "@odoo/hoot";
|
||||
import { setupPosEnv, getFilledOrder } from "@point_of_sale/../tests/unit/utils";
|
||||
import { definePosModels } from "@point_of_sale/../tests/unit/data/generate_model_definitions";
|
||||
|
||||
definePosModels();
|
||||
|
||||
describe("pos.order restaurant patches", () => {
|
||||
test("customer count and amount per guest", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = await getFilledOrder(store);
|
||||
order.setCustomerCount(3);
|
||||
expect(order.getCustomerCount()).toBe(3);
|
||||
order.setCustomerCount(4);
|
||||
expect(order.amountPerGuest()).toBe(4.4625);
|
||||
});
|
||||
|
||||
test("isDirectSale", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = store.addNewOrder();
|
||||
expect(order.isDirectSale).toBe(true);
|
||||
});
|
||||
|
||||
test("setPartner", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = store.addNewOrder();
|
||||
const partner = store.models["res.partner"].get(18);
|
||||
order.setPartner(partner);
|
||||
expect(order.floating_order_name).toBe("Public user");
|
||||
});
|
||||
|
||||
test("cleanCourses", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = await getFilledOrder(store);
|
||||
const course1 = store.addCourse();
|
||||
const line = order.lines[0];
|
||||
line.course_id = course1;
|
||||
const course2 = store.addCourse();
|
||||
course1.fired = true;
|
||||
order.cleanCourses();
|
||||
expect(order.course_ids.includes(course2)).toBe(false);
|
||||
expect(order.course_ids.includes(course1)).toBe(true);
|
||||
});
|
||||
|
||||
test("getNextCourseIndex", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = await getFilledOrder(store);
|
||||
store.addCourse();
|
||||
store.addCourse();
|
||||
expect(order.getNextCourseIndex()).toBe(4);
|
||||
});
|
||||
|
||||
test("getName returns formatted name for table + children", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const table = store.models["restaurant.table"].get(2);
|
||||
const order = store.addNewOrder({ table_id: table });
|
||||
const child = store.models["restaurant.table"].get(3);
|
||||
let name = order.getName();
|
||||
expect(name).toBe("T 1");
|
||||
child.parent_id = table;
|
||||
name = order.getName();
|
||||
expect(name).toBe("T 1 & 2");
|
||||
});
|
||||
|
||||
test("ensureCourseSelection and getSelectedCourse", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = store.addNewOrder();
|
||||
const course1 = store.addCourse();
|
||||
course1.fired = false;
|
||||
const course2 = store.addCourse();
|
||||
course2.fired = true;
|
||||
order.ensureCourseSelection();
|
||||
expect(order.getSelectedCourse().uuid).toBe(course1.uuid);
|
||||
});
|
||||
});
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
import { test, expect } from "@odoo/hoot";
|
||||
import { setupPosEnv, getFilledOrder } from "@point_of_sale/../tests/unit/utils";
|
||||
import { definePosModels } from "@point_of_sale/../tests/unit/data/generate_model_definitions";
|
||||
|
||||
definePosModels();
|
||||
|
||||
test("name returns localized name with index", async () => {
|
||||
const store = await setupPosEnv();
|
||||
store.addNewOrder();
|
||||
const course = store.addCourse();
|
||||
expect(course.name).toBe("Course 1");
|
||||
});
|
||||
|
||||
test("isSelected", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = store.addNewOrder();
|
||||
const course = store.addCourse();
|
||||
order.selectCourse(course);
|
||||
expect(course.isSelected()).toBe(true);
|
||||
});
|
||||
|
||||
test("isEmpty", async () => {
|
||||
const store = await setupPosEnv();
|
||||
store.addNewOrder();
|
||||
const course = store.addCourse();
|
||||
course.line_ids = [];
|
||||
expect(course.isEmpty()).toBe(true);
|
||||
});
|
||||
|
||||
test("isReadyToFire", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const order = await getFilledOrder(store);
|
||||
const course = store.addCourse();
|
||||
const line = order.lines[0];
|
||||
line.course_id = course;
|
||||
course.line_ids = [line];
|
||||
expect(course.isReadyToFire()).toBe(true);
|
||||
});
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
import { test, expect } from "@odoo/hoot";
|
||||
import { setupPosEnv } from "@point_of_sale/../tests/unit/utils";
|
||||
import { definePosModels } from "@point_of_sale/../tests/unit/data/generate_model_definitions";
|
||||
|
||||
definePosModels();
|
||||
|
||||
test("getOrders", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const table = store.models["restaurant.table"].get(2);
|
||||
const order = store.addNewOrder({ table_id: table });
|
||||
const tableOrders = table.getOrders();
|
||||
expect(tableOrders.length).toBe(1);
|
||||
expect(tableOrders[0].id).toBe(order.id);
|
||||
});
|
||||
|
||||
test("getParent and isParent", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const models = store.models;
|
||||
const parent = models["restaurant.table"].get(2);
|
||||
const child = models["restaurant.table"].get(3);
|
||||
child.parent_id = parent;
|
||||
const result = child.getParent();
|
||||
expect(parent.isParent(child)).toBe(true);
|
||||
expect(result.id).toBe(2);
|
||||
});
|
||||
|
||||
test("getParentSide", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const models = store.models;
|
||||
const parent = models["restaurant.table"].get(2);
|
||||
const child = models["restaurant.table"].get(3);
|
||||
child.parent_id = parent;
|
||||
child.position_h = parent.position_h + 50;
|
||||
child.position_v = parent.position_v;
|
||||
const side = child.getParentSide();
|
||||
expect(side).toBe("left");
|
||||
});
|
||||
|
||||
test("getX and getY", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const table1 = store.models["restaurant.table"].get(2);
|
||||
const table2 = store.models["restaurant.table"].get(3);
|
||||
expect(table1.getX()).toBe(407);
|
||||
expect(table1.getY()).toBe(88);
|
||||
table2.parent_id = table1;
|
||||
table2.parent_side = "left";
|
||||
expect(table2.getX()).toBe(497);
|
||||
expect(table2.getY()).toBe(88);
|
||||
table2.parent_side = "top";
|
||||
expect(table2.getX()).toBe(407);
|
||||
expect(table2.getY()).toBe(-2);
|
||||
});
|
||||
|
||||
test("rootTable", async () => {
|
||||
const store = await setupPosEnv();
|
||||
const table1 = store.models["restaurant.table"].get(2);
|
||||
const table2 = store.models["restaurant.table"].get(3);
|
||||
const table3 = store.models["restaurant.table"].get(4);
|
||||
table2.parent_id = table1;
|
||||
table3.parent_id = table2;
|
||||
expect(table3.rootTable.id).toBe(table1.id);
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue