2
0
mirror of https://github.com/frappe/frappe.git synced 2024-06-13 04:02:22 +00:00
frappe/cypress/integration/query_report.js
2022-08-04 14:51:01 +05:30

92 lines
3.0 KiB
JavaScript

context("Query Report", () => {
before(() => {
cy.login();
cy.visit("/app/website");
cy.insert_doc(
"Report",
{
report_name: "Test ToDo Report",
ref_doctype: "ToDo",
report_type: "Query Report",
query: "select * from tabToDo",
},
true
).as("doc");
cy.create_records({
doctype: "ToDo",
description: "this is a test todo for query report",
}).as("todos");
});
it("add custom column in report", () => {
cy.visit("/app/query-report/Permitted Documents For User");
cy.get(".page-form.flex", { timeout: 60000 })
.should("have.length", 1)
.then(() => {
cy.get('#page-query-report input[data-fieldname="user"]').as("input-user");
cy.get("@input-user").focus().type("test@erpnext.com", { delay: 100 }).blur();
cy.wait(300);
cy.get('#page-query-report input[data-fieldname="doctype"]').as("input-role");
cy.get("@input-role").focus().type("Role", { delay: 100 }).blur();
cy.get(".datatable").should("exist");
cy.get("#page-query-report .page-actions .menu-btn-group button").click({
force: true,
});
cy.get("#page-query-report .menu-btn-group .dropdown-menu")
.contains("Add Column")
.click({ force: true });
cy.get_open_dialog().get(".modal-title").should("contain", "Add Column");
cy.get('select[data-fieldname="doctype"]').select("Role", { force: true });
cy.get('select[data-fieldname="field"]').select("Role Name", { force: true });
cy.get('select[data-fieldname="insert_after"]').select("Name", { force: true });
cy.get_open_dialog()
.findByRole("button", { name: "Submit" })
.click({ force: true });
cy.get("#page-query-report .page-actions .menu-btn-group button").click({
force: true,
});
cy.get("#page-query-report .menu-btn-group .dropdown-menu")
.contains("Save")
.click({ timeout: 100, force: true });
cy.get_open_dialog().get(".modal-title").should("contain", "Save Report");
cy.get('input[data-fieldname="report_name"]').type("Test Report", {
delay: 100,
force: true,
});
cy.get_open_dialog()
.findByRole("button", { name: "Submit" })
.click({ timeout: 1000, force: true });
});
});
let save_report_and_open = (report, update_name) => {
cy.get("#page-query-report .page-actions .menu-btn-group button").click({ force: true });
cy.get("#page-query-report .menu-btn-group .dropdown-menu")
.contains("Save")
.click({ timeout: 100, force: true });
cy.get_open_dialog().get(".modal-title").should("contain", "Save Report");
cy.get('input[data-fieldname="report_name"]').type(update_name, {
delay: 100,
force: true,
});
cy.get_open_dialog()
.findByRole("button", { name: "Submit" })
.click({ timeout: 1000, force: true });
cy.visit("/app/query-report/" + report);
cy.get(".datatable").should("exist");
};
it("test multi level query report", () => {
cy.visit("/app/query-report/Test ToDo Report");
cy.get(".datatable").should("exist");
save_report_and_open("Test ToDo Report 1", " 1");
save_report_and_open("Test ToDo Report 11", "1");
});
});