Browse Source

Test for first-words

pull/748/head
Marie Malarme 3 years ago committed by Clément
parent
commit
a1af327f7a
  1. 46
      dom/first-words_test.js

46
dom/first-words_test.js

@ -0,0 +1,46 @@
export const tests = []
tests.push(async ({ eq, page }) => {
// check the class words has been added in the CSS
await eq.css('.words', { textAlign: 'center', fontFamily: 'sans-serif' })
})
tests.push(async ({ eq, page }) => {
// check the torso element is initially empty
const isEmpty = await page.$eval('#torso', (node) => !node.children.length)
eq(isEmpty, true)
})
tests.push(async ({ eq, page }) => {
// click on the button
const button = await page.$('button#speak-button')
await button.click()
// check a new text element is added in the torso
const torsoChildren = await page.$eval('#torso', (node) =>
[...node.children].map((child) => ({
tag: child.tagName,
text: child.textContent,
class: child.className,
})),
)
eq(torsoChildren, [textNode])
})
tests.push(async ({ eq, page }) => {
// click a second time on the button
const button = await page.$('button#speak-button')
await button.click()
// check a second new text element is added in the torso
const torsoChildren = await page.$eval('#torso', (node) =>
[...node.children].map((child) => ({
tag: child.tagName,
text: child.textContent,
class: child.className,
})),
)
eq(torsoChildren, [textNode, textNode])
})
const textNode = { tag: 'DIV', text: 'Hello there!', class: 'words' }
Loading…
Cancel
Save