@@ -145,53 +145,6 @@ describe('browser search', () => {
|
||||
})
|
||||
})
|
||||
|
||||
describe('large -> x-large viewports - 1012+', () => {
|
||||
jest.setTimeout(60 * 1000)
|
||||
it('version picker is visible in header', async () => {
|
||||
await page.setViewport({ width: 1013, height: 700 })
|
||||
await page.goto('http://localhost:4000/en/actions')
|
||||
await page.click('[data-testid=version-picker]')
|
||||
const versionItems = await page.$$('[data-testid=version-picker-item]')
|
||||
expect(versionItems.length).toBeGreaterThan(0)
|
||||
})
|
||||
|
||||
it('language picker is visible in header', async () => {
|
||||
await page.goto('http://localhost:4000/en/actions')
|
||||
const languagePickerElement = await page.$$('[data-testid=language-picker]')
|
||||
expect(languagePickerElement.length).toBe(1)
|
||||
})
|
||||
|
||||
it('sign up button is visible in header', async () => {
|
||||
const signUpElement = await page.$('[data-testid=header-signup]')
|
||||
const signUpValue = await signUpElement.evaluate((el) => el.textContent)
|
||||
expect(signUpValue).toBe('Sign up')
|
||||
})
|
||||
})
|
||||
|
||||
describe('large viewports - 1012-1279', () => {
|
||||
jest.setTimeout(60 * 1000)
|
||||
it('hamburger button for sidebar overlay is visible', async () => {
|
||||
await page.setViewport({ width: 1013, height: 700 })
|
||||
await page.goto('http://localhost:4000/en/actions')
|
||||
await page.click('[data-testid=sidebar-hamburger]')
|
||||
const sidebarElement = await page.$('[data-testid=sidebar-product-dialog]')
|
||||
const sideBarValue = await sidebarElement.evaluate((el) => el.textContent)
|
||||
expect(sideBarValue).toBe('GitHub Actions')
|
||||
})
|
||||
|
||||
it('breadcrumbs show up in the header', async () => {
|
||||
await page.goto(
|
||||
'http://localhost:4000/en/enterprise-cloud@latest/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise'
|
||||
)
|
||||
const breadcrumbsElement = await page.$$('[data-testid=breadcrumbs-header] ul li')
|
||||
const breadcrumbsMissingElement = await page.$$(
|
||||
'[data-testid=breadcrumbs-header] ul li .d-none'
|
||||
)
|
||||
expect(breadcrumbsMissingElement.length).toBe(0)
|
||||
expect(breadcrumbsElement.length).toBe(4)
|
||||
})
|
||||
})
|
||||
|
||||
describe('medium viewports - 768-1011', () => {
|
||||
jest.setTimeout(60 * 1000)
|
||||
it('version picker is visible', async () => {
|
||||
|
||||
@@ -253,3 +253,48 @@ test('x-large viewports - 1280+', async ({ page }) => {
|
||||
await expect(page.getByTestId('breadcrumbs-in-article').getByText('Foo')).toBeVisible()
|
||||
await expect(page.getByTestId('breadcrumbs-in-article').getByText('Bar')).not.toBeVisible()
|
||||
})
|
||||
|
||||
test('large -> x-large viewports - 1012+', async ({ page }) => {
|
||||
page.setViewportSize({
|
||||
width: 1013,
|
||||
height: 700,
|
||||
})
|
||||
await page.goto('/get-started/foo/bar')
|
||||
|
||||
// version picker should be visible
|
||||
await page
|
||||
.getByRole('button', {
|
||||
name: 'Select GitHub product version: current version is free-pro-team@latest',
|
||||
})
|
||||
.click()
|
||||
expect((await page.getByRole('menuitemradio').all()).length).toBeGreaterThan(0)
|
||||
await expect(page.getByRole('menuitemradio', { name: 'Enterprise Cloud' })).toBeVisible()
|
||||
|
||||
// language picker is visible
|
||||
// TODO: currently no languages enabled for headless tests
|
||||
// await page.getByRole('button', { name: 'Select language: current language is English' }).click()
|
||||
// await expect(page.getByRole('menuitemradio', { name: 'English' })).toBeVisible()
|
||||
|
||||
// header sign up button is visible
|
||||
await expect(page.getByTestId('header-signup')).toBeVisible()
|
||||
})
|
||||
|
||||
test('large viewports - 1012-1279', async ({ page }) => {
|
||||
page.setViewportSize({
|
||||
width: 1013,
|
||||
height: 700,
|
||||
})
|
||||
await page.goto('/get-started/foo/bar')
|
||||
|
||||
// breadcrumbs show up in the header, for this page we should have
|
||||
// 3 items 'Get Started / Foo / Bar'
|
||||
// in-article breadcrumbs don't show up
|
||||
await expect(page.getByTestId('breadcrumbs-header')).toBeVisible()
|
||||
expect(await page.getByTestId('breadcrumbs-header').getByRole('link').all()).toHaveLength(3)
|
||||
await expect(page.getByTestId('breadcrumbs-in-article')).not.toBeVisible()
|
||||
|
||||
// hamburger button for sidebar overlay is visible
|
||||
await expect(page.getByTestId('sidebar-hamburger')).toBeVisible()
|
||||
await page.getByTestId('sidebar-hamburger').click()
|
||||
await expect(page.getByTestId('sidebar-product-dialog')).toBeVisible()
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user