const tasks = [ { description: 'put your left leg in', done: false }, { description: 'your left leg out', done: false }, { description: 'in, out, in, out', done: false }, { description: 'shake it all about', done: false } ]; export default { skip_if_ssr: true, props: { tasks, selected: tasks[0] }, html: `
put your left leg in
your left leg out
in, out, in, out
shake it all about
`, async test({ assert, component, target, window }) { const input = target.querySelector('input'); const select = target.querySelector('select'); const options = target.querySelectorAll('option'); const change = new window.Event('change'); input.checked = true; await input.dispatchEvent(change); assert.ok(component.tasks[0].done); assert.htmlEqual(target.innerHTML, `your left leg out
in, out, in, out
shake it all about
`); options[1].selected = true; await select.dispatchEvent(change); assert.equal(component.selected, tasks[1]); assert.ok(!input.checked); input.checked = true; await input.dispatchEvent(change); assert.ok(component.tasks[1].done); assert.htmlEqual(target.innerHTML, `in, out, in, out
shake it all about
`); } };