From ebd756c1e54ee2d988d995aa4c7e80373481259b Mon Sep 17 00:00:00 2001 From: Suraj Shetty Date: Tue, 1 Feb 2022 13:30:48 +0530 Subject: [PATCH] test: Update test case for default value in link field --- cypress/integration/control_link.js | 33 ++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/cypress/integration/control_link.js b/cypress/integration/control_link.js index 13ad52d237..bfa70ad338 100644 --- a/cypress/integration/control_link.js +++ b/cypress/integration/control_link.js @@ -142,14 +142,31 @@ context('Control Link', () => { }); it("should set default values", () => { + cy.insert_doc("Property Setter", { + "doctype_or_field": "DocField", + "doc_type": "ToDo", + "field_name": "assigned_by", + "property": "default", + "property_type": "Text", + "value": "Administrator" + }, true); + cy.reload(); cy.new_form("ToDo"); - cy.window() - .its("cur_frm") - .then(frm => { - frm.set_df_property("assigned_by", "default", "Administrator"); - cy.fill_field("description", "new", "Text Editor"); - cy.findByRole("button", {name: "Save"}).click(); - }); + cy.fill_field("description", "new", "Text Editor"); + cy.intercept("POST", "/api/method/frappe.desk.form.save.savedocs").as("save_form"); + cy.findByRole("button", {name: "Save"}).click(); + cy.wait("@save_form"); + cy.get(".frappe-control[data-fieldname=assigned_by_full_name] .control-value").should( + "contain", "Administrator" + ); + // if user clears default value explicitly, system should not reset default again + cy.get_field("assigned_by").clear().blur(); + cy.intercept("POST", "/api/method/frappe.desk.form.save.savedocs").as("save_form"); + cy.findByRole("button", {name: "Save"}).click(); + cy.wait("@save_form"); + cy.get_field("assigned_by").should("have.value", ""); + cy.get(".frappe-control[data-fieldname=assigned_by_full_name] .control-value").should( + "contain", "" + ); }); - });