diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js new file mode 100644 index 0000000000..e756ff5cc2 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js @@ -0,0 +1,21 @@ +import { test } from '../../test'; + +export default test({ + html: ` +
clicks: 0, doubled: 0
+ + `, + + async test({ assert, target }) { + const btn = target.querySelector('button'); + + await btn?.click(); + assert.htmlEqual( + target.innerHTML, + ` +clicks: 1, doubled: 2
+ + ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/main.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/main.svelte new file mode 100644 index 0000000000..34583ae1cc --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/main.svelte @@ -0,0 +1,14 @@ + + +{#snippet foo({ count }, { doubled })} +clicks: {count}, doubled: {doubled}
+{/snippet} + +{@render foo({ count }, { doubled })} + + diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js new file mode 100644 index 0000000000..e756ff5cc2 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js @@ -0,0 +1,21 @@ +import { test } from '../../test'; + +export default test({ + html: ` +clicks: 0, doubled: 0
+ + `, + + async test({ assert, target }) { + const btn = target.querySelector('button'); + + await btn?.click(); + assert.htmlEqual( + target.innerHTML, + ` +clicks: 1, doubled: 2
+ + ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/main.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/main.svelte new file mode 100644 index 0000000000..6de6a85647 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/main.svelte @@ -0,0 +1,14 @@ + + +{#snippet foo(n: number, doubled: number)} +clicks: {n}, doubled: {doubled}
+{/snippet} + +{@render foo(count, doubled)} + + diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/_config.js new file mode 100644 index 0000000000..6c0f9cbb31 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/_config.js @@ -0,0 +1,21 @@ +import { test } from '../../test'; + +export default test({ + html: ` +clicks: 0, doubled: 0, tripled: 0
+ + `, + + async test({ assert, target }) { + const btn = target.querySelector('button'); + + await btn?.click(); + assert.htmlEqual( + target.innerHTML, + ` +clicks: 1, doubled: 2, tripled: 3
+ + ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/main.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/main.svelte new file mode 100644 index 0000000000..263f399a05 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/main.svelte @@ -0,0 +1,15 @@ + + +{#snippet foo(n: number, ...[doubled, { tripled }]: number[])} +clicks: {n}, doubled: {doubled}, tripled: {tripled}
+{/snippet} + +{@render foo(count, doubled, {tripled})} + + diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/_config.js new file mode 100644 index 0000000000..6c0f9cbb31 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/_config.js @@ -0,0 +1,21 @@ +import { test } from '../../test'; + +export default test({ + html: ` +clicks: 0, doubled: 0, tripled: 0
+ + `, + + async test({ assert, target }) { + const btn = target.querySelector('button'); + + await btn?.click(); + assert.htmlEqual( + target.innerHTML, + ` +clicks: 1, doubled: 2, tripled: 3
+ + ` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/main.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/main.svelte new file mode 100644 index 0000000000..05ac668a2e --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/main.svelte @@ -0,0 +1,15 @@ + + +{#snippet foo(n: number, ...rest: number[])} +clicks: {n}, doubled: {rest[0]}, tripled: {rest[1]}
+{/snippet} + +{@render foo(count, doubled, tripled)} + +