Skip to content

Commit 7762f29

Browse files
committed
update test
1 parent 1dd383e commit 7762f29

File tree

2 files changed

+44
-17
lines changed

2 files changed

+44
-17
lines changed

packages/svelte/tests/runtime-runes/samples/async-expression/_config.js

Lines changed: 38 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,53 @@ import { test } from '../../test';
66
let d;
77

88
export default test({
9-
html: `<p>pending</p>`,
9+
html: `
10+
<button>reset</button>
11+
<button>hello</button>
12+
<button>goodbye</button>
13+
<p>pending</p>
14+
`,
1015

11-
get props() {
12-
d = deferred();
16+
async test({ assert, target }) {
17+
const [reset, hello, goodbye] = target.querySelectorAll('button');
1318

14-
return {
15-
promise: d.promise
16-
};
17-
},
18-
19-
async test({ assert, target, component }) {
20-
d.resolve('hello');
19+
flushSync(() => hello.click());
2120
await Promise.resolve();
2221
await Promise.resolve();
2322
await tick();
2423
flushSync();
25-
assert.htmlEqual(target.innerHTML, '<h1>hello</h1>');
24+
assert.htmlEqual(
25+
target.innerHTML,
26+
`
27+
<button>reset</button>
28+
<button>hello</button>
29+
<button>goodbye</button>
30+
<h1>hello</h1>
31+
`
32+
);
2633

27-
component.promise = (d = deferred()).promise;
34+
flushSync(() => reset.click());
2835
await tick();
29-
assert.htmlEqual(target.innerHTML, '<h1>hello</h1>');
36+
assert.htmlEqual(
37+
target.innerHTML,
38+
`
39+
<button>reset</button>
40+
<button>hello</button>
41+
<button>goodbye</button>
42+
<h1>hello</h1>
43+
`
44+
);
3045

31-
d.resolve('wheee');
46+
flushSync(() => goodbye.click());
3247
await tick();
33-
assert.htmlEqual(target.innerHTML, '<h1>wheee</h1>');
48+
assert.htmlEqual(
49+
target.innerHTML,
50+
`
51+
<button>reset</button>
52+
<button>hello</button>
53+
<button>goodbye</button>
54+
<h1>goodbye</h1>
55+
`
56+
);
3457
}
3558
});

packages/svelte/tests/runtime-runes/samples/async-expression/main.svelte

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
<script>
2-
let { promise } = $props();
2+
let deferred = $state(Promise.withResolvers());
33
</script>
44

5+
<button onclick={() => deferred = Promise.withResolvers()}>reset</button>
6+
<button onclick={() => deferred.resolve('hello')}>hello</button>
7+
<button onclick={() => deferred.resolve('goodbye')}>goodbye</button>
8+
59
<svelte:boundary>
6-
<h1>{await promise}</h1>
10+
<h1>{await deferred.promise}</h1>
711

812
{#snippet pending()}
913
<p>pending</p>

0 commit comments

Comments
 (0)