2023-10-23 23:11:59 +02:00
|
|
|
describe("Common > Header", () => {
|
2022-09-04 20:40:58 +02:00
|
|
|
beforeEach(() => {
|
2023-10-23 23:11:59 +02:00
|
|
|
return cy.visit("/")
|
2022-09-04 20:40:58 +02:00
|
|
|
})
|
2021-08-13 15:48:29 +02:00
|
|
|
|
2023-10-23 23:11:59 +02:00
|
|
|
it("should redirect to /blog on click of the blog link", () => {
|
|
|
|
cy.get("[data-cy=header-blog-link]")
|
2021-11-08 15:10:26 +01:00
|
|
|
.click()
|
2023-10-23 23:11:59 +02:00
|
|
|
.location("pathname")
|
|
|
|
.should("eq", "/blog")
|
2021-11-08 15:10:26 +01:00
|
|
|
})
|
|
|
|
|
2023-10-23 23:11:59 +02:00
|
|
|
it("should always be visible (sticky header)", () => {
|
|
|
|
cy.scrollTo("bottom").get("header").should("be.visible")
|
2022-02-23 09:03:10 +01:00
|
|
|
})
|
|
|
|
|
2023-10-23 23:11:59 +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)",
|
2021-08-13 15:48:29 +02:00
|
|
|
)
|
|
|
|
|
2023-10-23 23:11:59 +02:00
|
|
|
cy.get("[data-cy=switch-theme-click]").click()
|
2021-08-13 15:48:29 +02:00
|
|
|
|
2023-10-23 23:11:59 +02:00
|
|
|
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)",
|
2021-08-13 15:48:29 +02:00
|
|
|
)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
2023-10-23 23:11:59 +02:00
|
|
|
describe("Switch Language", () => {
|
|
|
|
it("should switch locale from English (default) to French", () => {
|
|
|
|
cy.get("[data-cy=locale-flag-text]").contains("English")
|
|
|
|
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")
|
|
|
|
cy.get("[data-cy=locales-list] > li:first-child")
|
|
|
|
.contains("French")
|
2023-08-01 18:18:16 +02:00
|
|
|
.click()
|
2023-10-23 23:11:59 +02:00
|
|
|
cy.get("[data-cy=locales-list]").should("not.be.visible")
|
2023-12-28 06:21:24 +01:00
|
|
|
// cy.get("[data-cy=locale-flag-text]").contains("French")
|
2021-08-13 15:48:29 +02:00
|
|
|
})
|
|
|
|
|
2023-10-23 23:11:59 +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")
|
2024-01-28 16:13:02 +01:00
|
|
|
cy.get("main h1").click()
|
2023-10-23 23:11:59 +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 {}
|