mirror of https://github.com/01-edu/public.git
44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
export const tests = []
|
|
|
|
tests.push(async ({ eq, page }) => {
|
|
// check the JS script has been linked
|
|
await eq.$('script', { type: 'module' })
|
|
|
|
// check the JS script has a valid src
|
|
const source = await page.$eval(
|
|
'script',
|
|
(node) => node.src.includes('.js') && node.src,
|
|
)
|
|
if (!source.length) throw Error('missing script src')
|
|
})
|
|
|
|
tests.push(async ({ eq, page }) => {
|
|
// check the class 'eye-closed' has been added in the CSS
|
|
eq.css('.eye-closed', {
|
|
height: '4px',
|
|
padding: '0px 5px',
|
|
borderRadius: '10px',
|
|
})
|
|
})
|
|
|
|
tests.push(async ({ eq, page }) => {
|
|
// check the class of left eye before the JS is loaded
|
|
await page.setJavaScriptEnabled(false)
|
|
await page.reload()
|
|
await eq.$('p#eye-left', { className: 'eye' })
|
|
})
|
|
|
|
tests.push(async ({ eq, page }) => {
|
|
// check the class of left eye has been updated after the JS is loaded
|
|
await page.setJavaScriptEnabled(true)
|
|
await page.reload()
|
|
await eq.$('p#eye-left', { className: 'eye eye-closed' })
|
|
|
|
// check the background color of left eye has changed after the JS is loaded
|
|
const eyeLeftBg = await page.$eval(
|
|
'#eye-left',
|
|
(node) => node.style.backgroundColor,
|
|
)
|
|
eq(eyeLeftBg, 'black')
|
|
})
|