Files
raven-test/e2e/tests/regression/2-report/001-run-report.cy.js
2026-02-15 17:36:39 -08:00

30 lines
1.0 KiB
JavaScript

describe("Report generation", () => {
it("Customer report opens without error", () => {
cy.ayLogin("bizadmin");
cy.visit("/cust-customers/1");
cy.url().should("include", "/cust-customers/1");
cy.get("[data-cy=generalerror]").should("not.exist");
cy.get("[data-cy=name]");
// Stub window.open AFTER the page has loaded
cy.window().then(win => {
cy.stub(win, "open").as("windowOpen");
});
cy.get("[data-cy=contextmenu]").click();
cy.get("[data-cy='customer-edit:report']").click();
cy.get(".v-list > :nth-child(1) > .v-list-item__title").click();
// The render job is async — give it time to complete and call window.open
// Adjust timeout if your reports take longer to render
cy.get("@windowOpen", { timeout: 30000 }).should("have.been.calledOnce");
// Verify the URL passed to window.open looks like a PDF download
cy.get("@windowOpen").should(
"have.been.calledWithMatch",
/\/api\/v8\.0\/report\/download\/.+\.pdf/
);
});
});