avoid timeouts in tests, they add up quickly

pull/16542/head
Rich Harris 1 month ago
parent 1fd17a2ec3
commit 201bf3704b

@ -1,16 +1,12 @@
import { tick } from 'svelte';
import { test } from '../../test';
export default test({
html: `<h1>Loading...</h1>`,
async test({ assert, target }) {
await new Promise((resolve) => setTimeout(resolve, 100));
assert.htmlEqual(
target.innerHTML,
`
<h1>Hello, world!</h1>
<input type="text"/>
`
);
await tick();
assert.htmlEqual(target.innerHTML, `<h1>Hello, world!</h1>`);
}
});

@ -1,23 +1,16 @@
<script>
let name = $state('world');
/**
* @template T
* @param {T} value
* @param {number} ms
* @returns {Promise<T>}
*/
function wait(value, ms) {
return new Promise(resolve => setTimeout(resolve, ms, value));
}
</script>
<svelte:boundary>
{#snippet pending()}
<h1>Loading...</h1>
{/snippet}
{#snippet greet()}
{@const greeting = await wait(`Hello, ${name}!`, 50)}
{@const greeting = await `Hello, ${name}!`}
<h1>{greeting}</h1>
<input type="text" bind:value={name} />
{/snippet}
{@render greet()}
</svelte:boundary>

Loading…
Cancel
Save