diff --git a/client/cypress/integration/frontend/rooms/room-page.spec.js b/client/cypress/integration/frontend/rooms/room-page.spec.js index 0515ddf2..d6f5f8c2 100644 --- a/client/cypress/integration/frontend/rooms/room-page.spec.js +++ b/client/cypress/integration/frontend/rooms/room-page.spec.js @@ -246,29 +246,38 @@ describe('The Room Page', () => { it.only('changes class while on room page', () => { const {me} = MeQuery; const otherClass = { - id: btoa('SchoolClassNode:34'), - name: 'Other Class', - readOnly: false - }; + id: btoa('SchoolClassNode:34'), + name: 'Other Class', + readOnly: false + }; + let selectedClass = me.selectedClass; const operations = { - MeQuery: { + MeQuery: () => { + return { me: { ...me, schoolClasses: [...me.schoolClasses, otherClass], + selectedClass }, + }; }, RoomEntriesQuery, - UpdateSettings: { - updateSettings: { - success: true - } + UpdateSettings() { + selectedClass = otherClass; + return { + updateSettings: { + success: true + } + }; }, - ModuleDetailsQuery: { - me: { - selectedClass: otherClass - } + ModuleDetailsQuery: {}, + MySchoolClassQuery: () => { + return { + me: { + selectedClass + } + }; }, - MySchoolClassQuery: {}, RoomsQuery: { rooms: [] } @@ -281,6 +290,6 @@ describe('The Room Page', () => { cy.getByDataCy('room-title').should('contain', 'A Room'); cy.selectClass('Other Class'); cy.url().should('include', 'rooms'); - cy.getByDataCy('selected-class-name').should('contain', 'Other Class'); + cy.getByDataCy('current-class-name').should('contain', 'Other Class'); }); }); diff --git a/client/src/components/school-class/ClassSelectionWidget.vue b/client/src/components/school-class/ClassSelectionWidget.vue index bb138f1c..e02e334e 100644 --- a/client/src/components/school-class/ClassSelectionWidget.vue +++ b/client/src/components/school-class/ClassSelectionWidget.vue @@ -104,7 +104,7 @@ updateSelectedClassAndHidePopover(selectedClass) { this.updateSelectedClass(selectedClass); this.showPopover = false; - this.closeSidebar(); + this.closeSidebar('profile'); } },