From 55ca97099c4717dea771277bfe9c855cb24837c5 Mon Sep 17 00:00:00 2001 From: Boodland Date: Tue, 27 Aug 2024 11:02:17 +0200 Subject: [PATCH 1/2] Add ids to form fields --- components/forms/CreatePartnerAdminForm.tsx | 6 ++++++ components/forms/UpdatePartnerAdminForm.tsx | 2 ++ 2 files changed, 8 insertions(+) diff --git a/components/forms/CreatePartnerAdminForm.tsx b/components/forms/CreatePartnerAdminForm.tsx index cbd1f97b..731b3c2e 100644 --- a/components/forms/CreatePartnerAdminForm.tsx +++ b/components/forms/CreatePartnerAdminForm.tsx @@ -107,6 +107,8 @@ const CreatePartnerAdminForm = () => { return (
{ setEmail(e.target.value)} label={t('emailAddressLabel')} @@ -134,6 +138,8 @@ const CreatePartnerAdminForm = () => { value={email} /> setName(e.target.value)} label={t('nameLabel')} diff --git a/components/forms/UpdatePartnerAdminForm.tsx b/components/forms/UpdatePartnerAdminForm.tsx index fd775b52..4551558c 100644 --- a/components/forms/UpdatePartnerAdminForm.tsx +++ b/components/forms/UpdatePartnerAdminForm.tsx @@ -152,6 +152,8 @@ const UpdatePartnerAdminForm = () => { return !formSubmitSuccess ? ( Date: Tue, 27 Aug 2024 11:02:34 +0200 Subject: [PATCH 2/2] Add admin dashboard tests --- .../integration/tests/admin-dashboard.cy.tsx | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 cypress/integration/tests/admin-dashboard.cy.tsx diff --git a/cypress/integration/tests/admin-dashboard.cy.tsx b/cypress/integration/tests/admin-dashboard.cy.tsx new file mode 100644 index 00000000..4eea1abe --- /dev/null +++ b/cypress/integration/tests/admin-dashboard.cy.tsx @@ -0,0 +1,56 @@ +describe('Admin dashboard page should display', () => { + const superAdminEmail = Cypress.env('CYPRESS_SUPER_ADMIN_EMAIL') as string; + const superAdminPassword = Cypress.env('CYPRESS_SUPER_ADMIN_PASSWORD'); + const adminDashboardUrl = '/admin/dashboard'; + + before(() => { + cy.cleanUpTestState(); + cy.logInWithEmailAndPassword(superAdminEmail, superAdminPassword); + }); + + beforeEach(() => { + cy.visit(adminDashboardUrl); + }); + + it('header section', () => { + cy.get('h2').should('contain', 'Superadmin dashboard'); + }); + + it('create an admin account panel', () => { + cy.get('h2').should('contain', 'Create an admin account'); + cy.get('p').should('contain', 'Admin accounts are able to generate therapy codes'); + + cy.get('label.Mui-required').contains('Select the partner'); + cy.get('input[name="selectPartner"]').should('exist'); + + cy.get('label.Mui-required').contains('Email address'); + cy.get('input[id="email"]').should('exist'); + + cy.get('label.Mui-required').contains('Name'); + cy.get('input[id="name"]').should('exist'); + + cy.get('button').contains('Create an admin account'); + }); + + it('update therapy sessions panel', () => { + cy.get('h2').should('contain', 'Update therapy sessions'); + + cy.get('label').contains(`Type a user's email address`); + cy.get('input[id="user-email-address-search"]').should('exist'); + + cy.get('button').contains('Update therapy sessions'); + }); + + it('update partner admin panel', () => { + cy.get('h2').should('contain', 'Update partner admin'); + + cy.get('label').contains('Type at least 4 letters'); + cy.get('input[id="partnerAdmin"]').should('exist'); + + cy.get('button').contains('Update partner admin'); + }); + + after(() => { + cy.logout(); + }); +});