diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2020-12-28 22:17:52 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-29 06:17:52 +0800 |
commit | ddc0ed7072ed460f0121a700a6e7fde8fe28400a (patch) | |
tree | f58a7dda828f35b13124224f0236991c52e563e8 /test/compress | |
parent | c00efe56f4fb07d27eb1d47915288b027b3ef692 (diff) | |
download | tracifyjs-ddc0ed7072ed460f0121a700a6e7fde8fe28400a.tar.gz tracifyjs-ddc0ed7072ed460f0121a700a6e7fde8fe28400a.zip |
expand test options (#4475)
- fix corner cases in `hoist_vars` & `keep_fnames`
Diffstat (limited to 'test/compress')
-rw-r--r-- | test/compress/async.js | 48 | ||||
-rw-r--r-- | test/compress/const.js | 24 | ||||
-rw-r--r-- | test/compress/default-values.js | 18 | ||||
-rw-r--r-- | test/compress/destructured.js | 18 | ||||
-rw-r--r-- | test/compress/hoist_vars.js | 25 |
5 files changed, 133 insertions, 0 deletions
diff --git a/test/compress/async.js b/test/compress/async.js index 19b90f51..5d623bbe 100644 --- a/test/compress/async.js +++ b/test/compress/async.js @@ -32,6 +32,54 @@ defun_name: { node_version: ">=8" } +drop_fname: { + rename = true + options = { + reduce_vars: true, + toplevel: true, + unused: true, + } + mangle = { + toplevel: true, + } + input: { + async function await() { + console.log("PASS"); + } + await(); + } + expect: { + (async function() { + console.log("PASS"); + })(); + } + expect_stdout: "PASS" + node_version: ">=8" +} + +keep_fname: { + options = { + keep_fnames: true, + reduce_vars: true, + toplevel: true, + unused: true, + } + input: { + async function await() { + console.log("PASS"); + } + await(); + } + expect: { + async function await() { + console.log("PASS"); + } + await(); + } + expect_stdout: "PASS" + node_version: ">=8" +} + nested_await: { input: { (async function() { diff --git a/test/compress/const.js b/test/compress/const.js index 4eea1977..0281fd87 100644 --- a/test/compress/const.js +++ b/test/compress/const.js @@ -658,6 +658,30 @@ legacy_scope: { expect_stdout: true } +hoist_vars: { + options = { + hoist_vars: true, + } + input: { + { + const a = "FAIL"; + var b = 42; + } + var a = "PASS"; + console.log(a, b); + } + expect: { + var b; + { + const a = "FAIL"; + b = 42; + } + var a = "PASS"; + console.log(a, b); + } + expect_stdout: true +} + issue_4191: { options = { functions: true, diff --git a/test/compress/default-values.js b/test/compress/default-values.js index acd285f4..39fcddbd 100644 --- a/test/compress/default-values.js +++ b/test/compress/default-values.js @@ -505,6 +505,24 @@ drop_fargs: { node_version: ">=6" } +hoist_vars: { + options = { + hoist_vars: true, + } + input: { + var a = "PASS"; + var [ b = 42 ] = []; + console.log(a, b); + } + expect: { + var a = "PASS"; + var [ b = 42 ] = []; + console.log(a, b); + } + expect_stdout: "PASS 42" + node_version: ">=6" +} + unused_var_1: { options = { toplevel: true, diff --git a/test/compress/destructured.js b/test/compress/destructured.js index 98e84f48..ba7dbf3c 100644 --- a/test/compress/destructured.js +++ b/test/compress/destructured.js @@ -1358,6 +1358,24 @@ fn_name_unused: { node_version: ">=6" } +hoist_vars: { + options = { + hoist_vars: true, + } + input: { + var a = "PASS"; + var [ b ] = [ 42 ]; + console.log(a, b); + } + expect: { + var a = "PASS"; + var [ b ] = [ 42 ]; + console.log(a, b); + } + expect_stdout: "PASS 42" + node_version: ">=6" +} + issue_4280: { options = { evaluate: true, diff --git a/test/compress/hoist_vars.js b/test/compress/hoist_vars.js index 6aa1f7b4..6cd99b06 100644 --- a/test/compress/hoist_vars.js +++ b/test/compress/hoist_vars.js @@ -89,6 +89,31 @@ sequences_funs: { } } +catch_var: { + options = { + dead_code: true, + hoist_vars: true, + side_effects: true, + toplevel: true, + unused: true, + } + input: { + var a = "PASS"; + try { + a; + } catch (a) { + var a = 0; + a; + } + console.log(a); + } + expect: { + var a = "PASS"; + console.log(a); + } + expect_stdout: "PASS" +} + issue_2295: { options = { collapse_vars: true, |