diff options
Diffstat (limited to 'cypress/e2e')
| -rw-r--r-- | cypress/e2e/event.cy.ts | 34 | ||||
| -rw-r--r-- | cypress/e2e/group.cy.ts | 78 | 
2 files changed, 68 insertions, 44 deletions
diff --git a/cypress/e2e/event.cy.ts b/cypress/e2e/event.cy.ts index 1160586..270ca0a 100644 --- a/cypress/e2e/event.cy.ts +++ b/cypress/e2e/event.cy.ts @@ -7,8 +7,6 @@ const eventData = {      hostName: "Your Name",      creatorEmail: "test@example.com",      eventGroupCheckbox: false, -    eventGroupID: "YourEventGroupID", -    eventGroupEditToken: "YourEventGroupEditToken",      interactionCheckbox: true,      joinCheckbox: true,      maxAttendeesCheckbox: true, @@ -28,7 +26,7 @@ describe("Events", () => {          cy.get("#eventStart").type(eventData.eventStart);          cy.get("#eventEnd").type(eventData.eventEnd); -        cy.get(".select2-container").click(); +        cy.get("select#timezone + span.select2").click();          cy.get(".select2-results__option")              .contains(eventData.timezone)              .click({ force: true }); @@ -177,7 +175,7 @@ describe("Events", () => {          cy.get("#editEventForm #eventStart").type("2030-12-01T00:00");          cy.get("#editEventForm #eventEnd").type("2030-12-01T01:00"); -        cy.get("#editEventForm .select2-container").click(); +        cy.get("#editEventForm select#timezone + span.select2").click();          cy.get(".select2-results__option")              .contains("Australia/Sydney")              .click({ force: true }); @@ -218,4 +216,32 @@ describe("Events", () => {          // Check that the attendee form is not visible          cy.get("#attendEvent").should("not.exist");      }); + +    it("sets a group for an event", function () { +        // For this we need to create a group first. This will load the group edit token +        // into our localStorage, and will then appear in the group select dropdown. +        // We then go back to the event page, edit the event, and set the group. +        cy.createGroup({ +            eventGroupName: "Test Group", +            eventGroupDescription: "Test Group Description", +            eventGroupURL: "testgroup", +            hostName: "Test Host", +            creatorEmail: "test@example.com", +        }); + +        cy.visit(`/${this.eventID}`); +        cy.url().should("include", this.editToken); + +        cy.get("#editEvent").click(); +        cy.get("#editEventForm #eventGroupCheckbox").check(); +        cy.get("select#eventGroupSelect + span.select2").click(); +        cy.get(".select2-results__option") +            .contains("Test Group") +            .click({ force: true }); +        cy.get("#editEventForm").submit(); + +        cy.get("#editModal").should("not.be.visible"); + +        cy.get("#event-group").should("contain.text", "Test Group"); +    });  }); diff --git a/cypress/e2e/group.cy.ts b/cypress/e2e/group.cy.ts index 8250179..279cb6c 100644 --- a/cypress/e2e/group.cy.ts +++ b/cypress/e2e/group.cy.ts @@ -8,28 +8,7 @@ const groupData = {  describe("Groups", () => {      beforeEach(() => { -        cy.visit("/new"); -        cy.get("#showNewEventGroupFormButton").click(); - -        // Fill in the form -        cy.get("#eventGroupName").type(groupData.eventGroupName); -        cy.get("#eventGroupDescription").type(groupData.eventGroupDescription); -        cy.get("#eventGroupURL").type(groupData.eventGroupURL); -        cy.get("#eventGroupHostName").type(groupData.hostName); -        cy.get("#eventGroupCreatorEmail").type(groupData.creatorEmail); - -        // Submit the form -        cy.get("#newEventGroupForm").submit(); - -        // Wait for the new page to load -        cy.url().should("not.include", "/new"); - -        // Get the new group ID from the URL -        cy.url().then((url) => { -            const [groupID, editToken] = url.split("/").pop().split("?"); -            cy.wrap(groupID).as("groupID"); -            cy.wrap(editToken.slice(2)).as("editToken"); -        }); +        cy.createGroup(groupData);      });      it("creates a new group", function () {          cy.get("#eventGroupName").should("have.text", groupData.eventGroupName); @@ -47,23 +26,42 @@ describe("Groups", () => {      });      it("edits a group", function () { -        // // Wait for the modal to not be visible -        // cy.get("#editModal").should("not.be.visible"); -        // // Check that all the data is correct -        // cy.get(".p-name").should("have.text", "Edited Event Name"); -        // cy.get(".p-location").should("have.text", "Edited Event Location"); -        // cy.get(".p-summary").should("contain.text", "Edited Event Description"); -        // cy.get("#hosted-by").should("contain.text", "Hosted by Edited Name"); -        // cy.get(".dt-duration").should( -        //     "contain.text", -        //     "Sunday 1 December 2030 from 12:00 am to 1:00 am", -        // ); -        // cy.get(".dt-duration") -        //     .invoke("text") -        //     .should("match", /AE(D|S)T/); -        // // Check that the comment form is not visible -        // cy.get("#postComment").should("not.exist"); -        // // Check that the attendee form is not visible -        // cy.get("#attendEvent").should("not.exist"); +        cy.get("#editGroup").click(); + +        cy.get("#editEventGroupForm #eventGroupName").focus().clear(); +        cy.get("#editEventGroupForm #eventGroupDescription").focus().clear(); +        cy.get("#editEventGroupForm #eventGroupURL").focus().clear(); +        cy.get("#editEventGroupForm #eventGroupHostName").focus().clear(); +        cy.get("#editEventGroupForm #eventGroupCreatorEmail").focus().clear(); + +        cy.get("#editEventGroupForm #eventGroupName").type("Edited Group Name"); +        cy.get("#editEventGroupForm #eventGroupDescription").type( +            "Edited Group Description", +        ); +        cy.get("#editEventGroupForm #eventGroupURL").type( +            "https://edited.example.com", +        ); +        cy.get("#editEventGroupForm #eventGroupHostName").type("Edited Name"); +        cy.get("#editEventGroupForm #eventGroupCreatorEmail").type( +            "edited@example.com", +        ); + +        // Submit the form +        cy.get("#editEventGroupForm").submit(); + +        // Wait for the modal to not be visible +        cy.get("#editModal").should("not.be.visible"); + +        // Check that all the data is correct +        cy.get("#eventGroupName").should("have.text", "Edited Group Name"); +        cy.get("#eventDescription").should( +            "contain.text", +            "Edited Group Description", +        ); +        cy.get("#eventGroupURL").should( +            "contain.text", +            "https://edited.example.com", +        ); +        cy.get("#hostName").should("contain.text", "Edited Name");      });  });  | 
