import { loginWithFixtures } from '../support/intercept'; describe('My Account Page', () => { beforeEach(() => { loginWithFixtures(); cy.visit('/my-account'); cy.wait('@getUserDetail'); }); it('displays user name heading', () => { cy.get('#general_acct_info_user_name').should('exist'); cy.get('#general_acct_info_user_name').should('contain', 'Test Admin'); }); it('shows Admin badge for admin user', () => { cy.contains('Admin').should('exist'); }); it('shows visit count info', () => { cy.get('#general_account_visit_info').should('exist'); cy.get('#general_account_visit_info').should('contain', 'Total visits'); }); it('displays account username (read-only)', () => { cy.contains('Test Admin').should('exist'); }); it('shows Edit button for name field', () => { cy.contains('button', 'Edit').should('exist'); }); it('clicking Edit shows input field and Save/Cancel buttons', () => { cy.contains('button', 'Edit').first().click(); cy.get('#input_name_field').should('exist'); cy.contains('button', 'Save').should('exist'); cy.contains('button', 'Cancel').should('exist'); }); it('clicking Cancel reverts name field to read-only', () => { cy.contains('button', 'Edit').first().click(); cy.get('#input_name_field').should('exist'); cy.contains('button', 'Cancel').click(); cy.get('#input_name_field').should('not.exist'); }); it('shows Reset button for password field', () => { cy.contains('button', 'Reset').should('exist'); }); it('clicking Reset shows password input and Save/Cancel', () => { cy.contains('button', 'Reset').click(); cy.get('input[type="password"]').should('exist'); cy.contains('button', 'Save').should('exist'); cy.contains('button', 'Cancel').should('exist'); }); it('clicking Cancel on password field hides the input', () => { cy.contains('button', 'Reset').click(); cy.get('input[type="password"]').should('exist'); // The Cancel button for password is the second one cy.get('.cancel-btn').click(); cy.get('input[type="password"]').should('not.exist'); }); it('shows Session section', () => { cy.contains('Session').should('exist'); }); });