test: don't wait for cached request
This commit is contained in:
parent
cce23d6699
commit
68b18d8a93
3 changed files with 36 additions and 38 deletions
|
|
@ -58,13 +58,12 @@ context("Control Link", () => {
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("todo for link", { delay: 100 });
|
cy.get("@input").type("todo for link", { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
cy.get("@input").type("{enter}");
|
cy.get("@input").type("{enter}");
|
||||||
|
|
@ -81,10 +80,10 @@ context("Control Link", () => {
|
||||||
get_dialog_with_link().as("dialog");
|
get_dialog_with_link().as("dialog");
|
||||||
|
|
||||||
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("invalid value", { delay: 100 }).blur();
|
cy.get("@input").type("invalid value", { delay: 100 }).blur();
|
||||||
cy.wait("@validate_link");
|
cy.wait("@validate_link");
|
||||||
cy.get("@input").should("have.value", "");
|
cy.get("@input").should("have.value", "");
|
||||||
|
|
@ -94,11 +93,11 @@ context("Control Link", () => {
|
||||||
get_dialog_with_link().as("dialog");
|
get_dialog_with_link().as("dialog");
|
||||||
|
|
||||||
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type(" ", { delay: 100 }).blur();
|
cy.get("@input").type(" ", { delay: 100 }).blur();
|
||||||
cy.wait("@validate_link");
|
cy.wait("@validate_link");
|
||||||
cy.get("@input").should("have.value", "");
|
cy.get("@input").should("have.value", "");
|
||||||
|
|
@ -112,12 +111,11 @@ context("Control Link", () => {
|
||||||
it("should show open link button", () => {
|
it("should show open link button", () => {
|
||||||
get_dialog_with_link().as("dialog");
|
get_dialog_with_link().as("dialog");
|
||||||
|
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get("@todos").then((todos) => {
|
cy.get("@todos").then((todos) => {
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type(todos[0], { delay: 100 }).blur();
|
cy.get("@input").type(todos[0], { delay: 100 }).blur();
|
||||||
// not waiting for validate_link because it will not get called
|
// not waiting for validate_link because it will not get called
|
||||||
cy.get("@input").trigger("mouseover");
|
cy.get("@input").trigger("mouseover");
|
||||||
|
|
@ -156,13 +154,12 @@ context("Control Link", () => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("todo for link", { delay: 100 });
|
cy.get("@input").type("todo for link", { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
||||||
cy.get("@input").type("{enter}");
|
cy.get("@input").type("{enter}");
|
||||||
|
|
@ -182,7 +179,6 @@ context("Control Link", () => {
|
||||||
it("should update dependant fields (via fetch_from)", () => {
|
it("should update dependant fields (via fetch_from)", () => {
|
||||||
cy.get("@todos").then((todos) => {
|
cy.get("@todos").then((todos) => {
|
||||||
cy.visit(`/desk/todo/${todos[0]}`);
|
cy.visit(`/desk/todo/${todos[0]}`);
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
cy.intercept("/api/method/frappe.client.validate_link*").as("validate_link");
|
||||||
|
|
||||||
cy.fill_field("assigned_by", cy.config("testUser"), "Link");
|
cy.fill_field("assigned_by", cy.config("testUser"), "Link");
|
||||||
|
|
@ -211,7 +207,9 @@ context("Control Link", () => {
|
||||||
|
|
||||||
// set valid value again
|
// set valid value again
|
||||||
cy.get("@input").clear().focus();
|
cy.get("@input").clear().focus();
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type(cy.config("testUser"), { delay: 100 }).blur();
|
cy.get("@input").type(cy.config("testUser"), { delay: 100 }).blur();
|
||||||
cy.wait("@validate_link");
|
cy.wait("@validate_link");
|
||||||
|
|
||||||
|
|
@ -280,12 +278,13 @@ context("Control Link", () => {
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
|
|
||||||
get_dialog_with_gender_link().as("dialog");
|
get_dialog_with_gender_link().as("dialog");
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("Sonstiges", { delay: 100 });
|
cy.get("@input").type("Sonstiges", { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").type("{enter}");
|
cy.get(".frappe-control[data-fieldname=link] input").type("{enter}");
|
||||||
|
|
@ -312,12 +311,13 @@ context("Control Link", () => {
|
||||||
cy.wait(1000);
|
cy.wait(1000);
|
||||||
|
|
||||||
get_dialog_with_gender_link().as("dialog");
|
get_dialog_with_gender_link().as("dialog");
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
cy.get(".frappe-control[data-fieldname=link] input").focus().as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("Non-Conforming", { delay: 100 });
|
cy.get("@input").type("Non-Conforming", { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
cy.get(".frappe-control[data-fieldname=link] ul").should("be.visible");
|
||||||
cy.get(".frappe-control[data-fieldname=link] input").type("{enter}");
|
cy.get(".frappe-control[data-fieldname=link] input").type("{enter}");
|
||||||
|
|
|
||||||
|
|
@ -50,14 +50,14 @@ context("Form Builder", () => {
|
||||||
cy.get(".modal-body .filter-action-buttons .add-filter").click();
|
cy.get(".modal-body .filter-action-buttons .add-filter").click();
|
||||||
cy.wait(100);
|
cy.wait(100);
|
||||||
|
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
cy.get(".modal-body .filter-box .list_filter .filter-field .link-field input")
|
cy.get(".modal-body .filter-box .list_filter .filter-field .link-field input")
|
||||||
.focus()
|
.focus()
|
||||||
.as("input");
|
.as("input");
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached)
|
||||||
cy.wait(500);
|
cy.get("@input").parent().findByRole("listbox").should("be.visible");
|
||||||
|
cy.wait(200);
|
||||||
cy.get("@input").type("Male", { delay: 100 });
|
cy.get("@input").type("Male", { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.wait(500);
|
cy.wait(500);
|
||||||
cy.get("@input").type("{enter}", { delay: 100 });
|
cy.get("@input").type("{enter}", { delay: 100 });
|
||||||
cy.get("@input").blur();
|
cy.get("@input").blur();
|
||||||
|
|
@ -97,8 +97,6 @@ context("Form Builder", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it("Add Table field and check if columns are rendered", () => {
|
it("Add Table field and check if columns are rendered", () => {
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
|
|
||||||
cy.visit(`/app/doctype/${doctype_name}`);
|
cy.visit(`/app/doctype/${doctype_name}`);
|
||||||
cy.findByRole("tab", { name: "Form" }).click();
|
cy.findByRole("tab", { name: "Form" }).click();
|
||||||
|
|
||||||
|
|
@ -127,7 +125,8 @@ context("Form Builder", () => {
|
||||||
.click()
|
.click()
|
||||||
.as("input");
|
.as("input");
|
||||||
cy.get("@input").clear({ force: true }).type("Web Form Field", { delay: 200 });
|
cy.get("@input").clear({ force: true }).type("Web Form Field", { delay: 200 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear and selection to complete
|
||||||
|
cy.wait(500);
|
||||||
|
|
||||||
cy.get(last_field).click({ force: true });
|
cy.get(last_field).click({ force: true });
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -172,13 +172,12 @@ Cypress.Commands.add("fill_field", (fieldname, value, fieldtype = "Data") => {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (["Link", "Dynamic Link"].includes(fieldtype)) {
|
if (["Link", "Dynamic Link"].includes(fieldtype)) {
|
||||||
cy.intercept("POST", "/api/method/frappe.desk.search.search_link").as("search_link");
|
|
||||||
cy.get("@input").clear().focus();
|
cy.get("@input").clear().focus();
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to appear (request might be cached, so don't wait for network)
|
||||||
cy.get("@input").parent().findByRole("listbox").as("dropdown");
|
cy.get("@input").parent().findByRole("listbox").as("dropdown");
|
||||||
cy.get("@dropdown").should("be.visible");
|
cy.get("@dropdown").should("be.visible");
|
||||||
cy.get("@input").type(value, { delay: 100 });
|
cy.get("@input").type(value, { delay: 100 });
|
||||||
cy.wait("@search_link");
|
// Wait for dropdown to update with search results
|
||||||
cy.get("@dropdown")
|
cy.get("@dropdown")
|
||||||
.should("be.visible")
|
.should("be.visible")
|
||||||
.find("div[role='option']")
|
.find("div[role='option']")
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue