You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

58 lines
2.2 KiB

  1. context("Table MultiSelect", () => {
  2. before(() => {
  3. cy.login();
  4. });
  5. let name = "table multiselect" + Math.random().toString().slice(2, 8);
  6. it("select value from multiselect dropdown", () => {
  7. cy.new_form("Assignment Rule");
  8. cy.fill_field("__newname", name);
  9. cy.fill_field("document_type", "Blog Post");
  10. cy.get(".section-head").contains("Assignment Rules").scrollIntoView();
  11. cy.fill_field("assign_condition", 'status=="Open"', "Code");
  12. cy.get('input[data-fieldname="users"]').focus().as("input");
  13. cy.get('input[data-fieldname="users"] + ul').should("be.visible");
  14. cy.get("@input").type("test{enter}", { delay: 100 });
  15. cy.get(
  16. '.frappe-control[data-fieldname="users"] .form-control .tb-selected-value .btn-link-to-form'
  17. ).as("selected-value");
  18. cy.get("@selected-value").should("contain", "test@erpnext.com");
  19. cy.intercept("POST", "/api/method/frappe.desk.form.save.savedocs").as("save_form");
  20. // trigger save
  21. cy.get(".primary-action").click();
  22. cy.wait("@save_form").its("response.statusCode").should("eq", 200);
  23. cy.get("@selected-value").should("contain", "test@erpnext.com");
  24. });
  25. it("delete value using backspace", () => {
  26. cy.go_to_list("Assignment Rule");
  27. cy.get(`.list-subject:contains("table multiselect")`).last().find("a").click();
  28. cy.get('input[data-fieldname="users"]').focus().type("{backspace}");
  29. cy.get('.frappe-control[data-fieldname="users"] .form-control .tb-selected-value').should(
  30. "not.exist"
  31. );
  32. });
  33. it("delete value using x", () => {
  34. cy.go_to_list("Assignment Rule");
  35. cy.get(`.list-subject:contains("table multiselect")`).last().find("a").click();
  36. cy.get('.frappe-control[data-fieldname="users"] .form-control .tb-selected-value').as(
  37. "existing_value"
  38. );
  39. cy.get("@existing_value").find(".btn-remove").click();
  40. cy.get("@existing_value").should("not.exist");
  41. });
  42. it("navigate to selected value", () => {
  43. cy.go_to_list("Assignment Rule");
  44. cy.get(`.list-subject:contains("table multiselect")`).last().find("a").click();
  45. cy.get('.frappe-control[data-fieldname="users"] .form-control .tb-selected-value').as(
  46. "existing_value"
  47. );
  48. cy.get("@existing_value").find(".btn-link-to-form").click();
  49. cy.location("pathname").should("contain", "/user/test@erpnext.com");
  50. });
  51. });