diff --git a/tests/e2e/admin-screen-headings.spec.ts b/tests/e2e/admin-screen-headings.spec.ts new file mode 100644 index 000000000..b658b18f9 --- /dev/null +++ b/tests/e2e/admin-screen-headings.spec.ts @@ -0,0 +1,27 @@ +import { expect, test } from '@playwright/test' +import { URLS } from './helpers/constants' + +const EXPECTED_H1_HEADING_COUNT = 1 + +const SCREENS = [ + { name: 'Manage Snippets', url: URLS.SNIPPETS_ADMIN }, + { name: 'Add Snippet', url: URLS.ADD_SNIPPET_ADMIN }, + { name: 'Community Cloud', url: URLS.COMMUNITY_CLOUD_ADMIN }, + { name: 'Blueprints', url: URLS.BLUEPRINTS_ADMIN }, + { name: 'Cloud Library', url: URLS.CLOUD_LIBRARY_ADMIN }, + { name: 'AI Agent', url: URLS.AI_AGENT_ADMIN }, + { name: 'Insights', url: URLS.INSIGHTS_ADMIN }, + { name: 'Import', url: URLS.IMPORT_SNIPPETS_ADMIN }, + { name: 'Settings', url: URLS.SETTINGS_ADMIN }, + { name: 'Welcome', url: URLS.WELCOME_SCREEN_ADMIN } +] + +test.describe('Admin screen h1 headings', () => { + for (const screen of SCREENS) { + test(`${screen.name} renders one page heading`, async ({ page }) => { + await page.goto(screen.url) + + await expect(page.getByRole('heading', { level: 1 })).toHaveCount(EXPECTED_H1_HEADING_COUNT) + }) + } +}) diff --git a/tests/e2e/cloud-download-eligibility.spec.ts b/tests/e2e/cloud-download-eligibility.spec.ts index 32b91b0e1..4e0cdeb71 100644 --- a/tests/e2e/cloud-download-eligibility.spec.ts +++ b/tests/e2e/cloud-download-eligibility.spec.ts @@ -68,7 +68,7 @@ const routeCloudSnippets = (page: Page, state: CloudRoutesState) => }) const openCommunityCloud = async (page: Page, view: 'table' | 'card') => { - await page.goto(URLS.COMMUNITY_CLOUD) + await page.goto(URLS.COMMUNITY_CLOUD_ADMIN) await expect(page.locator('.cloud-search')).toBeVisible() await page.getByTitle(`Switch to ${view} view`).click() } diff --git a/tests/e2e/code-snippets-community-featured.spec.ts b/tests/e2e/code-snippets-community-featured.spec.ts index 92c2d3bac..ffcf7b338 100644 --- a/tests/e2e/code-snippets-community-featured.spec.ts +++ b/tests/e2e/code-snippets-community-featured.spec.ts @@ -25,7 +25,7 @@ const closePreviewIfOpen = async (page: Page) => { } const openCommunityCloud = async (page: Page) => { - await page.goto(URLS.COMMUNITY_CLOUD) + await page.goto(URLS.COMMUNITY_CLOUD_ADMIN) await page.waitForLoadState('domcontentloaded') } diff --git a/tests/e2e/helpers/constants.ts b/tests/e2e/helpers/constants.ts index be716a87c..f3c0547d0 100644 --- a/tests/e2e/helpers/constants.ts +++ b/tests/e2e/helpers/constants.ts @@ -30,12 +30,14 @@ export const TIMEOUTS = { export const URLS = { SNIPPETS_ADMIN: '/wp-admin/admin.php?page=snippets', COMMUNITY_CLOUD_ADMIN: '/wp-admin/admin.php?page=snippets&subpage=cloud-community', + BLUEPRINTS_ADMIN: '/wp-admin/admin.php?page=snippets&subpage=blueprints', + CLOUD_LIBRARY_ADMIN: '/wp-admin/admin.php?page=snippets&subpage=cloud-library', + AI_AGENT_ADMIN: '/wp-admin/admin.php?page=snippets&subpage=ai-agent', ADD_SNIPPET_ADMIN: '/wp-admin/admin.php?page=add-snippet', + INSIGHTS_ADMIN: '/wp-admin/admin.php?page=code-snippets-insights', IMPORT_SNIPPETS_ADMIN: '/wp-admin/admin.php?page=import-code-snippets', SETTINGS_ADMIN: '/wp-admin/admin.php?page=snippets-settings', WELCOME_SCREEN_ADMIN: '/wp-admin/admin.php?page=code-snippets-welcome', - ADD_SNIPPET: '/wp-admin/admin.php?page=add-snippet', - COMMUNITY_CLOUD: '/wp-admin/admin.php?page=snippets&subpage=cloud-community', FRONTEND: '/' }