diff --git a/cypress/e2e/Settings/SettingsAccountView.cy.ts b/cypress/e2e/Settings/SettingsAccountView.cy.ts new file mode 100644 index 0000000000000000000000000000000000000000..f24d8dfcaef6d74a77a6e5b4c43c091049aab407 --- /dev/null +++ b/cypress/e2e/Settings/SettingsAccountView.cy.ts @@ -0,0 +1,35 @@ +describe('SettingsAccount Test', () => { + beforeEach(() => { + cy.visit('/login'); + cy.get('#emailInput input').type('user@example.com'); + cy.get('#passwordInput input').type('John1'); + cy.get('form').submit(); + cy.wait(1000); + cy.visit('/settings/account') + cy.wait(1000) + }); + + it('update email of user', () => { + cy.get('[data-cy="email-input"]').find('[data-cy="bi-input"]') + .should('have.value','user@example.com') + cy.get('[data-cy="email-input"]').find('[data-cy="bi-input"]').clear() + cy.get('[data-cy="email-input"]').find('[data-cy="bi-input"]').type('NewEmailforUser@NewExample.com') + cy.get('[data-cy="change-email-btn"]').click() + cy.wait(1000) + cy.get('[data-cy="change-email-msg-confirm"]').should('include.text', 'Email updated successfully!') + + cy.get('[data-cy="menu"]').get('[data-cy="user"]').click(); + cy.get('[data-testid="logout"]').click(); + + cy.get('#emailInput input').type('NewEmailforUser@NewExample.com'); + cy.get('#passwordInput input').type('John1'); + cy.get('form').submit(); + cy.wait(1000); + cy.visit('/settings/account') + cy.wait(1000) + + cy.get('[data-cy="email-input"]').find('[data-cy="bi-input"]').clear() + cy.get('[data-cy="email-input"]').find('[data-cy="bi-input"]').type('user@example.com') + cy.get('[data-cy="change-email-btn"]').click() + }) +}) \ No newline at end of file diff --git a/src/views/Settings/SettingsAccountView.vue b/src/views/Settings/SettingsAccountView.vue index 50c2bfe464d5d4be9269cbb63fb9a452cd825b00..51b570cb6735dead3bff0f9e57ae0efd73906895 100644 --- a/src/views/Settings/SettingsAccountView.vue +++ b/src/views/Settings/SettingsAccountView.vue @@ -55,14 +55,16 @@ onMounted(() => { <hr> <form @submit.prevent="handleSubmit"> <div class="form-group"> - <BaseInput :model-value="emailRef" @input-change-event="handleEmailInputEvent" id="emailInput-change" + <BaseInput data-cy="email-input" :model-value="emailRef" + @input-change-event="handleEmailInputEvent" id="emailInput-change" input-id="email-new" type="email" label="E-post" placeholder="Skriv inn din e-post" invalid-message="Ugyldig e-post"/> </div> - <p class="text-danger">{{ errorMsg }}</p> - <p class="text-success">{{ confirmationMsg }}</p> + <p data-cy="change-email-msg-error" class="text-danger">{{ errorMsg }}</p> + <p data-cy="change-email-msg-confirm" class="text-success">{{ confirmationMsg }}</p> <br> - <button type="submit" class="btn btn-primary">Endre Informasjon</button> + <button data-cy="change-email-btn" type="submit" class="btn btn-primary">Endre + Informasjon</button> <hr> <div class="form-group"> <label class="d-block text-danger">Slett Bruker</label>