Files
pleno-vue/tests/unit/pos-mobile-popup-controls.spec.js
T

38 lines
1.2 KiB
JavaScript

// @vitest-environment jsdom
import { describe, expect, it } from "vitest";
import { popups } from "@/components/displays/department/pos/steps/mobile/objects/PosDepartmentStepMobileFlow.vue";
const visibleHeaderPopupIds = [
"select_customer",
"select_order_booking",
"select_vehicle",
"change_reference",
"customer_notes",
"image",
"add_customer",
];
describe("POS mobile popup controls", () => {
it("defines a dedicated header close button for select customer", () => {
const popup = popups.getByKey("select_customer");
expect(popup).not.toBeNull();
expect(popup?.showHeaderClose).toBe(true);
expect(popup?.headerCloseTestId).toBe("pos-mobile-select-customer-header-close");
});
it("provides a header close trigger for every visible-header popup", () => {
for (const popupId of visibleHeaderPopupIds) {
const popup = popups.getByKey(popupId);
expect(popup).not.toBeNull();
expect(popup?.hideHeader ?? false).toBe(false);
expect(popup?.showHeaderClose).toBe(true);
expect(typeof popup?.headerCloseTestId).toBe("string");
expect(popup?.headerCloseTestId.length).toBeGreaterThan(0);
}
});
});