pull/16743/merge
Rich Harris 21 hours ago committed by GitHub
commit cd34bcdc6a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -0,0 +1,46 @@
import { tick } from 'svelte';
import { test } from '../../test';
export default test({
async test({ assert, target }) {
await tick();
assert.htmlEqual(
target.innerHTML,
`
<p>hello from server</p>
<p>hello from server</p>
<p>hello from server</p>
<p>hello from server</p>
`
);
const [button1, button2] = target.querySelectorAll('button');
button1.click();
await tick();
assert.htmlEqual(
target.innerHTML,
`
<p>hello from browser</p>
<p>hello from browser</p>
<p>hello from server</p>
<p>hello from server</p>
`
);
button2.click();
await tick();
assert.htmlEqual(
target.innerHTML,
`
<p>hello from browser</p>
<p>hello from browser</p>
<p>hello from browser</p>
<p>hello from browser</p>
`
);
}
});

@ -0,0 +1,35 @@
<script>
let browser = typeof window !== 'undefined';
let a = Promise.withResolvers();
let b = Promise.withResolvers();
if (!browser) {
a.resolve(true);
b.resolve(true);
}
</script>
<button onclick={() => a.resolve(true)}>
resolve a
</button>
<button onclick={() => b.resolve(true)}>
resolve b
</button>
<svelte:boundary>
{#if await a.promise}
<p>hello from {browser ? 'browser' : 'server'}</p>
{/if}
<p>hello from {browser ? 'browser' : 'server'}</p>
</svelte:boundary>
<svelte:boundary>
{#if await b.promise}
<p>hello from {browser ? 'browser' : 'server'}</p>
{/if}
<p>hello from {browser ? 'browser' : 'server'}</p>
</svelte:boundary>

@ -1,7 +1,11 @@
<script>
$effect(() => {
console.log('before');
});
await 1;
$effect(() => {
console.log('hello');
console.log('after');
});
</script>

@ -3,7 +3,8 @@ import { test } from '../../test';
export default test({
async test({ assert, logs }) {
assert.deepEqual(logs, []);
await tick();
assert.deepEqual(logs, ['hello']);
assert.deepEqual(logs, ['before', 'after']);
}
});

Loading…
Cancel
Save