diff --git a/system/seeders/015_kalender.sql b/system/seeders/015_kalender.sql index 345e003a3..4aa274060 100644 --- a/system/seeders/015_kalender.sql +++ b/system/seeders/015_kalender.sql @@ -177,6 +177,17 @@ VALUES (51006, 31), (51004, 32); +-- Calendar setup for tags tests +INSERT INTO lehre.tbl_kalender +(von, bis, typ, status_kurzbz, vorgaenger_kalender_id, eindeutige_gruppen_id, insertamum, insertvon, updateamum, updatevon) +VALUES +(date_trunc('week', CURRENT_DATE) + INTERVAL '6 day' + TIME '16:55:00', date_trunc('week', CURRENT_DATE) + INTERVAL '6 day' + TIME '17:40:00', 'lehreinheit', 'live', NULL, 'ec1bd001-facf-4b21-a671-bcb2d4f037fd', now(), 'demoadmin', NULL, 'demoadmin'); + +INSERT INTO lehre.tbl_kalender_lehreinheit +(lehreinheit_id, kalender_id) +VALUES +(51004, 33); + -- INSERT INTO public.tbl_variablenname -- (name, defaultwert) -- VALUES('ignore_resources_collisions', 'false'); diff --git a/system/seeders/016_tag.sql b/system/seeders/016_tag.sql new file mode 100644 index 000000000..9fef2cf1c --- /dev/null +++ b/system/seeders/016_tag.sql @@ -0,0 +1,5 @@ +INSERT INTO public.tbl_notiz_typ +(typ_kurzbz, bezeichnung_mehrsprachig, beschreibung, automatisiert, aktiv, zuordnung, tag, style, vorrueckung, prioritaet/*, taglib*/) +VALUES +('prioone', '{Prio 1,Prio 1}', '', false, true, NULL, false, 'tag_rot', false, 1/*, NULL*/), +('priotwo', '{Prio 2,Prio 2}', '', false, true, NULL, false, 'tag_gelb', false, 2/*, NULL*/); \ No newline at end of file diff --git a/tests/cypress/cypress/e2e/specs/ui/tempus/tempus.smoke.cy.js b/tests/cypress/cypress/e2e/specs/ui/tempus/tempus.smoke.cy.js index 454c8686a..45fde5243 100644 --- a/tests/cypress/cypress/e2e/specs/ui/tempus/tempus.smoke.cy.js +++ b/tests/cypress/cypress/e2e/specs/ui/tempus/tempus.smoke.cy.js @@ -71,6 +71,20 @@ context("Tempus smoke tests", () => { tempusPage.getResourcesModal().should("be.visible"); }); + it("shows tags modal when selecting Tags from event context menu", () => { + tempusPage.waitForCalendarToFinishLoading(); + tempusPage + .getCalendarEventsByWeekdayAndStartTime("Sunday", "16:55:00") + .should("have.length.greaterThan", 0); + + tempusPage.getCalendarEventsByWeekdayAndStartTime("Sunday", "16:55:00").first().rightclick(); + tempusPage.getEventContextMenuOption("Tags").click({ force: true }); + waitForOk("@fetchTags"); + waitForOk("@fetchTagsByCalendar"); + + tempusPage.getTagsModal().should("be.visible"); + }); + it("shows history modal when selecting History from event context menu", () => { tempusPage.waitForCalendarToFinishLoading(); tempusPage.getCalendarEvents().should("have.length.greaterThan", 0); diff --git a/tests/cypress/cypress/support/pages/tempus.po.js b/tests/cypress/cypress/support/pages/tempus.po.js index 7eeeab146..3f8dd1e42 100644 --- a/tests/cypress/cypress/support/pages/tempus.po.js +++ b/tests/cypress/cypress/support/pages/tempus.po.js @@ -72,6 +72,14 @@ class TempusPage { method: "GET", url: "**/tempus/OperationalResourceToCalenderAPI/getAssignedResourcesByCalender/**", }).as("fetchAssignedResources"); + cy.intercept({ + method: "GET", + url: "**/tempus/Tags/getTags**", + }).as("fetchTags"); + cy.intercept({ + method: "GET", + url: "**/tempus/Tags/getTagsByCalendar/**", + }).as("fetchTagsByCalendar"); cy.intercept({ method: "POST", url: "**/tempus/coursepicker/getByStg**", @@ -345,6 +353,8 @@ class TempusPage { cy .get("[data-cy='resourcesAssignmentModal']") .closest(".bootstrap-modal.show"); + getTagsModal = () => + cy.get("[data-cy='tagsAssignmentModal']").closest(".bootstrap-modal.show") getCalendarEventRoom = (id) => this.getCalendarEventById(id).find("[data-cy='calendar-event-room']"); getStundenrasterToggle = () =>