You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

43 lines
1.2 KiB

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')
})