Skip to content

Commit fc18e26

Browse files
committed
failing test
1 parent a98b5ea commit fc18e26

File tree

2 files changed

+72
-0
lines changed

2 files changed

+72
-0
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import { flushSync, tick } from 'svelte';
2+
import { test } from '../../test';
3+
4+
export default test({
5+
html: `
6+
<button>resolve 1</button>
7+
<button>resolve 2</button>
8+
<hr>
9+
<p>pending</p>
10+
`,
11+
12+
async test({ assert, target }) {
13+
const [button1, button2] = target.querySelectorAll('button');
14+
15+
flushSync(() => button1.click());
16+
await Promise.resolve();
17+
await Promise.resolve();
18+
await Promise.resolve();
19+
await tick();
20+
flushSync();
21+
22+
assert.htmlEqual(
23+
target.innerHTML,
24+
`
25+
<button>resolve 1</button>
26+
<button>resolve 2</button>
27+
<hr>
28+
<p>pending</p>
29+
`
30+
);
31+
32+
flushSync(() => button2.click());
33+
await Promise.resolve();
34+
await Promise.resolve();
35+
await Promise.resolve();
36+
await tick();
37+
flushSync();
38+
39+
assert.htmlEqual(
40+
target.innerHTML,
41+
`
42+
<button>resolve 1</button>
43+
<button>resolve 2</button>
44+
<hr>
45+
<button>0</button>
46+
<p>true</p>
47+
`
48+
);
49+
}
50+
});
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<script>
2+
let d1 = Promise.withResolvers();
3+
let d2 = Promise.withResolvers();
4+
5+
let count = $state(0);
6+
</script>
7+
8+
<button onclick={() => d1.resolve(true)}>resolve 1</button>
9+
<button onclick={() => d2.resolve(true)}>resolve 2</button>
10+
11+
<hr>
12+
13+
<svelte:boundary>
14+
{#if await d1.promise}
15+
<button onclick={() => count += 1}>{count}</button>
16+
<p>{await d2.promise}</p>
17+
{/if}
18+
19+
{#snippet pending()}
20+
<p>pending</p>
21+
{/snippet}
22+
</svelte:boundary>

0 commit comments

Comments
 (0)