import { expect, test } from '@playwright/test'; import { expectCtaHierarchy, expectDisclosureLayer, expectFooterLinks, expectNavigationVsCtaDifferentiation, expectPageFamily, expectPrimaryNavigation, expectShell, visitPage, } from './smoke-helpers'; test('home uses the landing foundation to explain the product category with one clear action hierarchy', async ({ page, }) => { await visitPage(page, '/'); await expectShell(page, /TenantAtlas/); await expectPageFamily(page, 'landing'); await expectDisclosureLayer(page, '1'); await expectDisclosureLayer(page, '2'); await expectPrimaryNavigation(page); await expectNavigationVsCtaDifferentiation(page); await expectFooterLinks(page); await expect( page.getByRole('heading', { name: 'Understand the product, the trust posture, and the next step without route sprawl.', }), ).toBeVisible(); await expectCtaHierarchy(page, 'See the product model', 'Review the trust posture'); await expect(page.getByRole('main').getByRole('link', { name: 'Read the changelog' }).first()).toBeVisible(); await expect(page.getByRole('main').getByRole('link', { name: 'Start the working session' }).first()).toBeVisible(); const skipLink = page.getByRole('link', { name: 'Skip to content' }); await page.keyboard.press('Tab'); await expect(skipLink).toBeFocused(); }); test('product keeps the connected operating model readable without collapsing into a feature list', async ({ page, }) => { await visitPage(page, '/product'); await expectShell(page, /operating model|restore posture|governance/i); await expectPageFamily(page, 'landing'); await expectDisclosureLayer(page, '1'); await expectDisclosureLayer(page, '2'); await expectPrimaryNavigation(page); await expectNavigationVsCtaDifferentiation(page); await expectFooterLinks(page); await expect( page.getByRole('heading', { name: 'Explain what the product does before asking for buyer trust.' }), ).toBeVisible(); await expectCtaHierarchy(page, 'Review the trust posture', 'Start the working session'); await expect(page.getByRole('main').getByRole('link', { name: 'Read the changelog' }).first()).toBeVisible(); });