mirror of https://github.com/sveltejs/svelte
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.
70 lines
1.2 KiB
70 lines
1.2 KiB
export default {
|
|
props: {
|
|
visible: false,
|
|
things: ['a', 'b', 'c', 'd']
|
|
},
|
|
|
|
// intro: true,
|
|
|
|
html: `
|
|
<p>waiting...</p>
|
|
`,
|
|
|
|
async test({ assert, component, target, raf }) {
|
|
component.visible = true;
|
|
|
|
assert.htmlEqual(target.innerHTML, `
|
|
<p>introstart</p>
|
|
<p>a</p>
|
|
<p>b</p>
|
|
<p>c</p>
|
|
<p>d</p>
|
|
`);
|
|
|
|
raf.tick(50);
|
|
assert.deepEqual(component.intros.sort(), ['a', 'b', 'c', 'd']);
|
|
assert.equal(component.intro_count, 4);
|
|
|
|
await raf.tick(100);
|
|
assert.equal(component.intro_count, 0);
|
|
|
|
assert.htmlEqual(target.innerHTML, `
|
|
<p>introend</p>
|
|
<p>a</p>
|
|
<p>b</p>
|
|
<p>c</p>
|
|
<p>d</p>
|
|
`);
|
|
|
|
component.visible = false;
|
|
|
|
assert.htmlEqual(target.innerHTML, `
|
|
<p>outrostart</p>
|
|
<p>a</p>
|
|
<p>b</p>
|
|
<p>c</p>
|
|
<p>d</p>
|
|
`);
|
|
|
|
raf.tick(150);
|
|
assert.deepEqual(component.outros.sort(), ['a', 'b', 'c', 'd']);
|
|
assert.equal(component.outro_count, 4);
|
|
|
|
raf.tick(200);
|
|
assert.equal(component.outro_count, 0);
|
|
|
|
component.visible = true;
|
|
|
|
await raf.tick(250);
|
|
assert.deepEqual(component.intros.sort(), ['a', 'a', 'b', 'b', 'c', 'c', 'd', 'd']);
|
|
assert.equal(component.intro_count, 4);
|
|
|
|
assert.htmlEqual(target.innerHTML, `
|
|
<p>introstart</p>
|
|
<p>a</p>
|
|
<p>b</p>
|
|
<p>c</p>
|
|
<p>d</p>
|
|
`);
|
|
}
|
|
}; |