TenantAtlas/apps/website/tests/smoke/changelog-core-ia.spec.ts
ahmido 2000c17f33 feat: transition website product page to platform (#391)
## Summary
- rename the website product page to `/platform`
- add a redirect from `/product` to `/platform` and update navigation/content links
- refresh footer/layout metadata and align smoke tests with the new route
- add spec artifacts for 401-tenantial-platform-page

## Testing
- not run in this step

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #391
2026-05-19 21:34:31 +00:00

48 lines
2.4 KiB
TypeScript

import { expect, test } from '@playwright/test';
import {
expectDisclosureLayer,
expectFooterLinks,
expectNavigationVsCtaDifferentiation,
expectPageFamily,
expectPrimaryNavigation,
expectShell,
visitPage,
} from './smoke-helpers';
test('changelog publishes dated progress without displacing the contact path', async ({ page }) => {
await visitPage(page, '/changelog');
await expectShell(page, /changelog|product progress|visible progress/i);
await expectPageFamily(page, 'content');
await expectDisclosureLayer(page, '1');
await expectDisclosureLayer(page, '2');
await expectPrimaryNavigation(page);
await expectNavigationVsCtaDifferentiation(page);
await expectFooterLinks(page);
await expect(page.getByText('Initial core pages and IA realignment')).toBeVisible();
await expect(page.getByRole('main').getByRole('link', { name: 'Start the working session' }).first()).toBeVisible();
});
test('core IA publishes Tenantial homepage navigation without dead template routes', async ({ page }) => {
await visitPage(page, '/');
const header = page.getByRole('banner');
const footer = page.getByRole('contentinfo');
await expect(header.getByRole('link', { name: 'Platform', exact: true })).toHaveAttribute('href', '/platform');
await expect(header.getByRole('link', { name: 'Solutions', exact: true })).toHaveAttribute('href', '/solutions');
await expect(header.getByRole('link', { name: 'Resources', exact: true })).toHaveAttribute('href', '/changelog');
await expect(header.getByRole('link', { name: 'Pricing', exact: true })).toHaveAttribute('href', '/contact');
await expect(header.getByRole('link', { name: 'Company', exact: true })).toHaveAttribute('href', '/contact');
await expect(header.getByRole('link', { name: 'Book a demo', exact: true })).toHaveAttribute('href', '/contact');
await expect(header.locator('[data-nav-state="deferred"]').filter({ hasText: 'Sign in' }).first()).toBeVisible();
await expect(header.getByRole('link', { name: 'Security & Trust' })).toHaveCount(0);
for (const group of ['Platform', 'Solutions', 'Resources', 'Pricing', 'Company', 'Contact', 'Legal', 'Privacy', 'Security']) {
await expect(footer.getByText(group, { exact: true }).first()).toBeVisible();
}
await expect(footer.getByRole('link', { name: 'Articles' })).toHaveCount(0);
await expect(footer.getByRole('link', { name: 'Security & Trust' })).toHaveCount(0);
});