mirror of
https://github.com/vitest-dev/vitest.git
synced 2026-01-18 16:31:32 +00:00
32 lines
832 B
TypeScript
32 lines
832 B
TypeScript
import Hello from '../components/Hello.marko'
|
|
|
|
let host: HTMLElement
|
|
|
|
afterEach(() => {
|
|
host.remove()
|
|
})
|
|
|
|
test('mount component', async () => {
|
|
host = document.createElement('div')
|
|
host.setAttribute('id', 'host')
|
|
document.body.appendChild(host)
|
|
const instance = Hello
|
|
.renderSync({ count: 4 })
|
|
.appendTo(host)
|
|
.getComponent()
|
|
expect(instance).toBeTruthy()
|
|
expect(host.innerHTML).toContain('4 x 2 = 8')
|
|
expect(host.innerHTML).toMatchSnapshot()
|
|
const btn = host.getElementsByTagName('button')[0]
|
|
btn.click() // or btn.dispatchEvent(new window.Event('click', { bubbles: true }))
|
|
await tick()
|
|
expect(host.innerHTML).toContain('4 x 3 = 12')
|
|
btn.click()
|
|
await tick()
|
|
expect(host.innerHTML).toContain('4 x 4 = 16')
|
|
})
|
|
|
|
async function tick() {
|
|
await new Promise(resolve => setTimeout(resolve))
|
|
}
|