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.

kanban.js 2.9 KiB

2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. context("Kanban Board", () => {
  2. before(() => {
  3. cy.login();
  4. cy.visit("/app");
  5. });
  6. it("Create ToDo Kanban", () => {
  7. cy.visit("/app/todo");
  8. cy.get(".page-actions .custom-btn-group button").click();
  9. cy.get(".page-actions .custom-btn-group ul.dropdown-menu li").contains("Kanban").click();
  10. cy.focused().blur();
  11. cy.fill_field("board_name", "ToDo Kanban", "Data");
  12. cy.fill_field("field_name", "Status", "Select");
  13. cy.click_modal_primary_button("Save");
  14. cy.get(".title-text").should("contain", "ToDo Kanban");
  15. });
  16. it("Create ToDo from kanban", () => {
  17. cy.intercept({
  18. method: "POST",
  19. url: "api/method/xhiveframework.client.save",
  20. }).as("save-todo");
  21. cy.click_listview_primary_button("Add ToDo");
  22. cy.fill_field("description", "Test Kanban ToDo", "Text Editor").wait(300);
  23. cy.get(".modal-footer .btn-primary").last().click();
  24. cy.wait("@save-todo");
  25. });
  26. it("Add and Remove fields", () => {
  27. cy.visit("/app/todo/view/kanban/ToDo Kanban");
  28. cy.intercept(
  29. "POST",
  30. "/api/method/xhiveframework.desk.doctype.kanban_board.kanban_board.save_settings"
  31. ).as("save-kanban");
  32. cy.intercept(
  33. "POST",
  34. "/api/method/xhiveframework.desk.doctype.kanban_board.kanban_board.update_order"
  35. ).as("update-order");
  36. cy.get(".page-actions .menu-btn-group > .btn").click();
  37. cy.get(".page-actions .menu-btn-group .dropdown-menu li")
  38. .contains("Kanban Settings")
  39. .click();
  40. cy.get(".add-new-fields").click();
  41. cy.get(".checkbox-options .checkbox").contains("ID").click();
  42. cy.get(".checkbox-options .checkbox").contains("Status").first().click();
  43. cy.get(".checkbox-options .checkbox").contains("Priority").click();
  44. cy.get(".modal-footer .btn-primary").last().click();
  45. cy.get(".xhiveframework-control .label-area").contains("Show Labels").click();
  46. cy.click_modal_primary_button("Save");
  47. cy.wait("@save-kanban");
  48. cy.get('.kanban-column[data-column-value="Open"] .kanban-cards').as("open-cards");
  49. cy.get("@open-cards")
  50. .find(".kanban-card .kanban-card-doc")
  51. .first()
  52. .should("contain", "ID:");
  53. cy.get("@open-cards")
  54. .find(".kanban-card .kanban-card-doc")
  55. .first()
  56. .should("contain", "Status:");
  57. cy.get("@open-cards")
  58. .find(".kanban-card .kanban-card-doc")
  59. .first()
  60. .should("contain", "Priority:");
  61. cy.get(".page-actions .menu-btn-group > .btn").click();
  62. cy.get(".page-actions .menu-btn-group .dropdown-menu li")
  63. .contains("Kanban Settings")
  64. .click();
  65. cy.get_open_dialog()
  66. .find(
  67. '.xhiveframework-control[data-fieldname="fields_html"] div[data-label="ID"] .remove-field'
  68. )
  69. .click();
  70. cy.wait("@update-order");
  71. cy.get_open_dialog().find(".xhiveframework-control .label-area").contains("Show Labels").click();
  72. cy.get(".modal-footer .btn-primary").last().click();
  73. cy.wait("@save-kanban");
  74. cy.get("@open-cards")
  75. .find(".kanban-card .kanban-card-doc")
  76. .first()
  77. .should("not.contain", "ID:");
  78. });
  79. });