From f80082c58a73ba6f9ea52449355b7773ebc8e4fd Mon Sep 17 00:00:00 2001 From: raythurnvoid <53383860+raythurnvoid@users.noreply.github.com> Date: Mon, 9 Jun 2025 00:10:09 +0100 Subject: [PATCH] Add test --- .../_config.js | 58 +++++++++++++++++++ .../main.svelte | 33 +++++++++++ 2 files changed, 91 insertions(+) create mode 100644 packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/main.svelte diff --git a/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/_config.js b/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/_config.js new file mode 100644 index 0000000000..20df2425f6 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/_config.js @@ -0,0 +1,58 @@ +import { test } from '../../test'; +import { flushSync, tick } from 'svelte'; + +export default test({ + async test({ assert, target }) { + assert.htmlEqual( + target.innerHTML, + ` + + + +

0

+ ` + ); + + const step1 = /** @type {HTMLButtonElement | null} */ (target.querySelector('#step1')); + const step2 = /** @type {HTMLButtonElement | null} */ (target.querySelector('#step2')); + const step3 = /** @type {HTMLButtonElement | null} */ (target.querySelector('#step3')); + + // Step 1: hide and reset data + step1?.click(); + await tick(); + assert.htmlEqual( + target.innerHTML, + ` + + + + ` + ); + + // Step 2: show again + step2?.click(); + await tick(); + assert.htmlEqual( + target.innerHTML, + ` + + + +

0

+ ` + ); + + // Step 3: update override - this should show 2, not 0 (the bug) + step3?.click(); + await tick(); + assert.htmlEqual( + target.innerHTML, + ` + + + +

2

+ ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/main.svelte b/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/main.svelte new file mode 100644 index 0000000000..3269ad28a0 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/devides-chain-with-snippet-fallback-trigger/main.svelte @@ -0,0 +1,33 @@ + + + + + + +{#snippet dummy(value = 0)}{/snippet} + +{#if show} +

{derived2}

+ {@render dummy(derived2 ? 0 : 0)} +{/if}