26 lines
1.4 KiB
TypeScript
26 lines
1.4 KiB
TypeScript
import { test, expect } from '@playwright/test'
|
|
|
|
test('垂直布局', async ({ page }) => {
|
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
await page.goto('http://localhost:7130/pc/checkbox/vertical-checkbox')
|
|
const preview = page.locator('#preview')
|
|
const checkedLabelBJ = preview.getByRole('checkbox', { name: '北京' }).filter({ hasText: '北京' })
|
|
await checkedLabelBJ.click()
|
|
await expect(checkedLabelBJ).toHaveClass(/is-checked/)
|
|
const checkedLabelSH = preview.getByRole('checkbox', { name: '上海' }).filter({ hasText: '上海' })
|
|
await checkedLabelSH.click()
|
|
await expect(checkedLabelSH).not.toHaveClass(/is-checked/)
|
|
const checkedLabelGZ = preview.getByRole('checkbox', { name: '广州' }).filter({ hasText: '广州' })
|
|
await checkedLabelGZ.click()
|
|
await expect(checkedLabelGZ).toHaveClass(/is-checked/)
|
|
const checkedLabelSZ = preview.getByRole('checkbox', { name: '深圳' }).filter({ hasText: '深圳' })
|
|
await checkedLabelSZ.click()
|
|
await expect(checkedLabelSZ).toHaveClass(/is-checked/)
|
|
const parentWrapper = preview.locator('div.tiny-checkbox-group.is-vertical')
|
|
await expect(parentWrapper).toHaveCSS('display', 'inline-block')
|
|
await expect(checkedLabelBJ).toHaveCSS('display', 'block')
|
|
await expect(checkedLabelSH).toHaveCSS('display', 'block')
|
|
await expect(checkedLabelGZ).toHaveCSS('display', 'block')
|
|
await expect(checkedLabelSZ).toHaveCSS('display', 'block')
|
|
})
|