From d13416590c8ac871f162eb8bf27ad34eed26f915 Mon Sep 17 00:00:00 2001 From: Nguyen Tran Date: Fri, 31 Mar 2023 23:23:46 -0400 Subject: [PATCH] Add tests for variable declarations in switch statements without brackets --- .../expected.js | 20 +++++++++++++++ .../input.svelte | 7 ++++++ .../_config.js | 16 ++++++++++++ .../main.svelte | 25 +++++++++++++++++++ 4 files changed, 68 insertions(+) create mode 100644 test/js/samples/variable-declaration-in-switch-case/expected.js create mode 100644 test/js/samples/variable-declaration-in-switch-case/input.svelte create mode 100644 test/runtime/samples/variable-declarations-in-switch-no-brackets/_config.js create mode 100644 test/runtime/samples/variable-declarations-in-switch-no-brackets/main.svelte diff --git a/test/js/samples/variable-declaration-in-switch-case/expected.js b/test/js/samples/variable-declaration-in-switch-case/expected.js new file mode 100644 index 0000000000..71fbab6a34 --- /dev/null +++ b/test/js/samples/variable-declaration-in-switch-case/expected.js @@ -0,0 +1,20 @@ +/* generated by Svelte vX.Y.Z */ +import { SvelteComponent, init, safe_not_equal } from "svelte/internal"; + +function instance($$self) { + switch (1) { + case 1: + const value = Math.random(); + } + + return []; +} + +class Component extends SvelteComponent { + constructor(options) { + super(); + init(this, options, instance, null, safe_not_equal, {}); + } +} + +export default Component; diff --git a/test/js/samples/variable-declaration-in-switch-case/input.svelte b/test/js/samples/variable-declaration-in-switch-case/input.svelte new file mode 100644 index 0000000000..bef86a4967 --- /dev/null +++ b/test/js/samples/variable-declaration-in-switch-case/input.svelte @@ -0,0 +1,7 @@ + + diff --git a/test/runtime/samples/variable-declarations-in-switch-no-brackets/_config.js b/test/runtime/samples/variable-declarations-in-switch-no-brackets/_config.js new file mode 100644 index 0000000000..66462fd9fd --- /dev/null +++ b/test/runtime/samples/variable-declarations-in-switch-no-brackets/_config.js @@ -0,0 +1,16 @@ +export default { + props: { + q: 0 + }, + + html: '

3

', + + test({ assert, component, target }) { + component.q = 1; + assert.htmlEqual(target.innerHTML, '

4

'); + component.q = 2; + assert.htmlEqual(target.innerHTML, '

5

'); + component.q = 3; + assert.htmlEqual(target.innerHTML, '

6

'); + } +}; diff --git a/test/runtime/samples/variable-declarations-in-switch-no-brackets/main.svelte b/test/runtime/samples/variable-declarations-in-switch-no-brackets/main.svelte new file mode 100644 index 0000000000..04ed9d827d --- /dev/null +++ b/test/runtime/samples/variable-declarations-in-switch-no-brackets/main.svelte @@ -0,0 +1,25 @@ + + +

+ {p} +

+