Rabbi_Gerzi/frontend/rabbi_gerzi/cypress/e2e/home.cy.ts

70 lines
2.4 KiB
TypeScript

describe('homepage hero', () => {
beforeEach(() => {
cy.visit('/')
})
it('renders the header navigation', () => {
cy.get('header').within(() => {
cy.contains('Torah Media').should('be.visible')
cy.contains('About').should('be.visible')
cy.contains('Contact').should('be.visible')
cy.contains('Donate').should('be.visible')
})
})
it('renders the hero headline with italic emphasis', () => {
cy.get('[data-cy="hero"]').within(() => {
cy.contains('upgrade our lives').should('be.visible')
cy.contains('em', 'healthy').should('be.visible')
cy.contains('em', 'integrated').should('be.visible')
cy.contains('em', 'balanced').should('be.visible')
cy.contains('Torah existence').should('be.visible')
cy.contains('Rabbi Yehoshua Gerzi').should('be.visible')
})
})
it('renders the rabbi portrait image', () => {
cy.get('[data-cy="hero-portrait"]')
.should('be.visible')
.and('have.attr', 'alt')
.and('match', /Rabbi Yehoshua Gerzi/i)
})
})
describe('homepage discover path section', () => {
beforeEach(() => {
cy.visit('/')
})
it('renders the heading and body copy', () => {
cy.get('[data-cy="discover-path"]').within(() => {
cy.contains('h2', 'Discover a Path to a Holistically Engaged Life')
.should('be.visible')
cy.contains('Rabbi Yehoshua Gerzi has dedicated his life')
.should('be.visible')
cy.contains('Healthy, Integrated and Balanced Torah Living')
.should('be.visible')
cy.contains('Ramat Beit Shemesh').should('be.visible')
cy.contains('Pilzno Institute of Higher Learning').should('be.visible')
})
})
})
describe('homepage core teachings grid', () => {
beforeEach(() => {
cy.visit('/')
})
it('renders the heading and six teaching tiles', () => {
cy.get('[data-cy="core-teachings"]').within(() => {
cy.contains('h2', 'Baderech HaAvodah').should('be.visible')
cy.contains('Core Teachings').should('be.visible')
cy.contains('1) Introduction').should('be.visible')
cy.contains('2) Foundations').should('be.visible')
cy.contains('3) Divine Plan').should('be.visible')
cy.contains('4) Architecture of the Soul').should('be.visible')
cy.contains('5) Arba Yesodot').should('be.visible')
cy.contains('6) Fluid Integration').should('be.visible')
})
})
})