From 6d364aaaded8adfbab80f0c993107297f9a6f845 Mon Sep 17 00:00:00 2001 From: "S. Elliott Johnson" Date: Tue, 26 Dec 2023 00:06:36 -0500 Subject: [PATCH] feat: Tests (passing and failing --- .../_config.js | 21 +++++++++++++++++++ .../main.svelte | 14 +++++++++++++ .../snippet-argument-multiple/_config.js | 21 +++++++++++++++++++ .../snippet-argument-multiple/main.svelte | 14 +++++++++++++ .../_config.js | 21 +++++++++++++++++++ .../main.svelte | 15 +++++++++++++ .../samples/snippet-argument-rest/_config.js | 21 +++++++++++++++++++ .../samples/snippet-argument-rest/main.svelte | 15 +++++++++++++ 8 files changed, 142 insertions(+) create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/main.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/main.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-rest-destructured/main.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-argument-rest/main.svelte 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)} + +