diff --git a/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/_config.js new file mode 100644 index 0000000000..f47bee71df --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/_config.js @@ -0,0 +1,3 @@ +import { test } from '../../test'; + +export default test({}); diff --git a/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/main.svelte b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/main.svelte new file mode 100644 index 0000000000..bc942a6fa2 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/main.svelte @@ -0,0 +1,29 @@ + diff --git a/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/state.svelte.js b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/state.svelte.js new file mode 100644 index 0000000000..df8f6f4795 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/derived-server-memoization/state.svelte.js @@ -0,0 +1,20 @@ +let s = $state(0); +let d = $derived.by(() => { + count += 1; + return s * 2; +}); + +export let count = 0; + +export function reset() { + count = 0; + s = 0; +} + +export function increment() { + s += 1; +} + +export function get() { + return d; +}