diff --git a/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/_config.js b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/_config.js new file mode 100644 index 0000000000..46d3198e99 --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/_config.js @@ -0,0 +1,38 @@ +import { test, ok } from '../../test'; +import { flushSync } from 'svelte'; + +const log = console.log; +/** @type {string[]} */ +let messages = []; + +export default test({ + before_test: () => { + console.log = (msg) => messages.push(msg); + messages = []; + }, + after_test: () => { + console.log = log; + }, + test({ assert, target, window }) { + const [button1, button2] = target.querySelectorAll('button'); + ok(button1); + ok(button2); + + button1.click(); + flushSync(); + button2.click(); + flushSync(); + + assert.deepEqual(messages, ['after update 0, 0', 'after update 1, 0', 'after update 1, 1']); + assert.htmlEqual( + target.innerHTML, + ` +
+ 1 + ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/main.svelte b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/main.svelte new file mode 100644 index 0000000000..748f4274a8 --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/main.svelte @@ -0,0 +1,21 @@ + + + + +
+ diff --git a/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/sub.svelte b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/sub.svelte new file mode 100644 index 0000000000..0666d5ae8b --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/lifecycle-render-afterUpdate2/sub.svelte @@ -0,0 +1,12 @@ + + +{count}