--- /dev/null
+---
+layout: cypress
+title: Layout/Hero
+---
+
+{% capture content %}
+ <div class="hero-body">
+ <p class="title">
+ Hero title
+ </p>
+ <p class="subtitle">
+ Hero subtitle
+ </p>
+ </div>
+{% endcapture %}
+
+<section id="hero" class="hero">
+ {{ content }}
+</section>
+
+<section id="hero-small" class="hero is-small">
+ {{ content }}
+</section>
+
+<section id="hero-medium" class="hero is-medium">
+ {{ content }}
+</section>
+
+<section id="hero-large" class="hero is-large">
+ {{ content }}
+</section>
+
+<section id="hero-halfheight" class="hero is-halfheight">
+ {{ content }}
+</section>
+
+<section id="hero-fullheight" class="hero is-fullheight">
+ {{ content }}
+</section>
+
+<section id="hero-with-container" class="hero is-halfheight">
+ <div class="container">
+ {{ content }}
+ </div>
+</section>
--- /dev/null
+describe("Layout/Footer", () => {
+ beforeEach(() => {
+ cy.visit("http://127.0.0.1:4000/cyp/layout/footer/");
+ });
+
+ it("has a Footer", () => {
+ cy.get(".footer").should("exist");
+ });
+
+ it("has a correct Footer", () => {
+ cy.get("#footer").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.backgroundColor).to.equal(Cypress.env("scheme-main-bis"));
+ expect(cs.padding).to.equal("48px 24px 96px");
+ });
+ });
+});
--- /dev/null
+import { setDesktop } from "../utils";
+
+describe("Layout/Hero", () => {
+ beforeEach(() => {
+ cy.visit("http://127.0.0.1:4000/cyp/layout/hero/");
+ setDesktop();
+ });
+
+ it("has a Hero", () => {
+ cy.get(".hero").should("exist");
+ });
+
+ it("has a correct Hero", () => {
+ cy.get("#hero").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.alignItems).to.equal("stretch");
+ expect(cs.display).to.equal("flex");
+ expect(cs.flexDirection).to.equal("column");
+ expect(cs.justifyContent).to.equal("space-between");
+ });
+ });
+
+ it("has a correct small Hero", () => {
+ cy.get("#hero-small .hero-body").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.padding).to.equal("24px");
+ });
+ });
+
+ it("has a correct medium Hero", () => {
+ cy.get("#hero-medium .hero-body").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.padding).to.equal("144px 72px");
+ });
+ });
+
+ it("has a correct large Hero", () => {
+ cy.get("#hero-large .hero-body").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.padding).to.equal("288px 96px");
+ });
+ });
+
+ it("has a correct halfheight Hero", () => {
+ cy.get("#hero-halfheight").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.minHeight).to.equal(`${Cypress.env("viewports").desktop[1] / 2}px`);
+ });
+
+ cy.get("#hero-halfheight .hero-body").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.alignItems).to.equal("center");
+ expect(cs.display).to.equal("flex");
+ });
+ });
+
+ it("has a correct fullheight Hero", () => {
+ cy.get("#hero-fullheight").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.minHeight).to.equal(`${Cypress.env("viewports").desktop[1]}px`);
+ });
+
+ cy.get("#hero-fullheight .hero-body").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.alignItems).to.equal("center");
+ expect(cs.display).to.equal("flex");
+ });
+ });
+
+ it("has a correct Hero with container", () => {
+ cy.get("#hero-with-container > .container").then(($) => {
+ const cs = window.getComputedStyle($[0]);
+ expect(cs.flexGrow).to.equal("1");
+ expect(cs.flexShrink).to.equal("1");
+ });
+ });
+});