diff --git a/packages/svelte/tests/runtime-runes/samples/async-expression/_config.js b/packages/svelte/tests/runtime-runes/samples/async-expression/_config.js
index 6cded1a1d1..17ca961fc6 100644
--- a/packages/svelte/tests/runtime-runes/samples/async-expression/_config.js
+++ b/packages/svelte/tests/runtime-runes/samples/async-expression/_config.js
@@ -6,30 +6,53 @@ import { test } from '../../test';
let d;
export default test({
- html: `
pending
`,
+ html: `
+
+
+
+ pending
+ `,
- get props() {
- d = deferred();
+ async test({ assert, target }) {
+ const [reset, hello, goodbye] = target.querySelectorAll('button');
- return {
- promise: d.promise
- };
- },
-
- async test({ assert, target, component }) {
- d.resolve('hello');
+ flushSync(() => hello.click());
await Promise.resolve();
await Promise.resolve();
await tick();
flushSync();
- assert.htmlEqual(target.innerHTML, 'hello
');
+ assert.htmlEqual(
+ target.innerHTML,
+ `
+
+
+
+ hello
+ `
+ );
- component.promise = (d = deferred()).promise;
+ flushSync(() => reset.click());
await tick();
- assert.htmlEqual(target.innerHTML, 'hello
');
+ assert.htmlEqual(
+ target.innerHTML,
+ `
+
+
+
+ hello
+ `
+ );
- d.resolve('wheee');
+ flushSync(() => goodbye.click());
await tick();
- assert.htmlEqual(target.innerHTML, 'wheee
');
+ assert.htmlEqual(
+ target.innerHTML,
+ `
+
+
+
+ goodbye
+ `
+ );
}
});
diff --git a/packages/svelte/tests/runtime-runes/samples/async-expression/main.svelte b/packages/svelte/tests/runtime-runes/samples/async-expression/main.svelte
index 3c6879caee..6fc90ff2df 100644
--- a/packages/svelte/tests/runtime-runes/samples/async-expression/main.svelte
+++ b/packages/svelte/tests/runtime-runes/samples/async-expression/main.svelte
@@ -1,9 +1,13 @@
+
+
+
+
- {await promise}
+ {await deferred.promise}
{#snippet pending()}
pending