2021-08-13 15:48:29 +02:00
|
|
|
describe('Common > Header', () => {
|
2022-09-04 20:40:58 +02:00
|
|
|
beforeEach(() => {
|
|
|
|
return cy.visit('/')
|
|
|
|
})
|
2021-08-13 15:48:29 +02:00
|
|
|
|
2021-11-08 15:10:26 +01:00
|
|
|
it('should redirect to /blog on click of the blog link', () => {
|
|
|
|
cy.get('[data-cy=header-blog-link]')
|
|
|
|
.click()
|
|
|
|
.location('pathname')
|
|
|
|
.should('eq', '/blog')
|
|
|
|
})
|
|
|
|
|
2022-02-23 09:03:10 +01:00
|
|
|
it('should always be visible (sticky header)', () => {
|
|
|
|
cy.scrollTo('bottom').get('header').should('be.visible')
|
|
|
|
})
|
|
|
|
|
2021-08-13 15:48:29 +02:00
|
|
|
describe('Switch theme color (dark/light)', () => {
|
|
|
|
it('should switch theme from `dark` (default) to `light`', () => {
|
|
|
|
cy.get('[data-cy=switch-theme-dark]').should('be.visible')
|
|
|
|
cy.get('[data-cy=switch-theme-light]').should('not.be.visible')
|
|
|
|
cy.get('body').should(
|
|
|
|
'not.have.css',
|
|
|
|
'background-color',
|
|
|
|
'rgb(255, 255, 255)'
|
|
|
|
)
|
|
|
|
|
|
|
|
cy.get('[data-cy=switch-theme-click]').click()
|
|
|
|
|
|
|
|
cy.get('[data-cy=switch-theme-dark]').should('not.be.visible')
|
|
|
|
cy.get('[data-cy=switch-theme-light]').should('be.visible')
|
|
|
|
cy.get('body').should(
|
|
|
|
'have.css',
|
|
|
|
'background-color',
|
|
|
|
'rgb(255, 255, 255)'
|
|
|
|
)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
describe('Switch Language', () => {
|
2023-08-01 18:18:16 +02:00
|
|
|
it('should switch locale from English (default) to French', () => {
|
2023-05-30 21:51:27 +02:00
|
|
|
cy.get('h1').contains('Théo LUDWIG')
|
2023-08-01 18:18:16 +02:00
|
|
|
cy.get('[data-cy=locale-flag-text]').contains('English')
|
2023-07-31 19:06:46 +02:00
|
|
|
cy.get('[data-cy=locales-list]').should('not.be.visible')
|
|
|
|
cy.get('[data-cy=locale-click]').click()
|
|
|
|
cy.get('[data-cy=locales-list]').should('be.visible')
|
2023-08-01 18:18:16 +02:00
|
|
|
cy.get('[data-cy=locales-list] > li:first-child')
|
|
|
|
.contains('French')
|
|
|
|
.click()
|
2023-07-31 19:06:46 +02:00
|
|
|
cy.get('[data-cy=locales-list]').should('not.be.visible')
|
2023-08-01 18:18:16 +02:00
|
|
|
cy.get('[data-cy=locale-flag-text]').contains('French')
|
2023-05-30 21:51:27 +02:00
|
|
|
cy.get('h1').contains('Théo LUDWIG')
|
2021-08-13 15:48:29 +02:00
|
|
|
})
|
|
|
|
|
2023-07-31 19:06:46 +02:00
|
|
|
it('should close the locale list menu when clicking outside', () => {
|
|
|
|
cy.get('[data-cy=locales-list]').should('not.be.visible')
|
|
|
|
cy.get('[data-cy=locale-click]').click()
|
|
|
|
cy.get('[data-cy=locales-list]').should('be.visible')
|
2021-08-13 15:48:29 +02:00
|
|
|
cy.get('h1').click()
|
2023-07-31 19:06:46 +02:00
|
|
|
cy.get('[data-cy=locales-list]').should('not.be.visible')
|
2021-08-13 15:48:29 +02:00
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|
2022-07-28 22:51:12 +02:00
|
|
|
|
|
|
|
export {}
|