aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAlex Lam S.L <alexlamsl@gmail.com>2017-04-16 17:25:39 +0800
committerGitHub <noreply@github.com>2017-04-16 17:25:39 +0800
commit44dfa5a318d6df8eff4741a351f24667708a9cab (patch)
tree3fd18742530459f3b0259c7f609692992a9ea682 /test
parent251ff1d1af3209af99d37007691acd5a3b771cfb (diff)
downloadtracifyjs-44dfa5a318d6df8eff4741a351f24667708a9cab.tar.gz
tracifyjs-44dfa5a318d6df8eff4741a351f24667708a9cab.zip
fix variable substitution (#1816)
- let `collapse_vars` take care of value containing any symbols - improve overhead accounting
Diffstat (limited to 'test')
-rw-r--r--test/compress/issue-1656.js6
-rw-r--r--test/compress/reduce_vars.js52
2 files changed, 55 insertions, 3 deletions
diff --git a/test/compress/issue-1656.js b/test/compress/issue-1656.js
index 8b683a28..c4c8f863 100644
--- a/test/compress/issue-1656.js
+++ b/test/compress/issue-1656.js
@@ -35,11 +35,11 @@ f7: {
console.log(a, b);
}
expect_exact: [
- "var a = 100, b = 10;",
+ "var b = 10;",
"",
"!function() {",
- " for (;b = a, !1; ) ;",
- "}(), console.log(a, b);",
+ " for (;b = 100, !1; ) ;",
+ "}(), console.log(100, b);",
]
expect_stdout: true
}
diff --git a/test/compress/reduce_vars.js b/test/compress/reduce_vars.js
index b6f711ad..7621dd4a 100644
--- a/test/compress/reduce_vars.js
+++ b/test/compress/reduce_vars.js
@@ -1995,3 +1995,55 @@ catch_var: {
}
expect_stdout: "true"
}
+
+issue_1814_1: {
+ options = {
+ evaluate: true,
+ reduce_vars: true,
+ unused: true,
+ }
+ input: {
+ const a = 42;
+ !function() {
+ var b = a;
+ !function(a) {
+ console.log(a++, b);
+ }(0);
+ }();
+ }
+ expect: {
+ const a = 42;
+ !function() {
+ !function(a) {
+ console.log(a++, 42);
+ }(0);
+ }();
+ }
+ expect_stdout: "0 42"
+}
+
+issue_1814_2: {
+ options = {
+ evaluate: true,
+ reduce_vars: true,
+ unused: true,
+ }
+ input: {
+ const a = "32";
+ !function() {
+ var b = a + 1;
+ !function(a) {
+ console.log(a++, b);
+ }(0);
+ }();
+ }
+ expect: {
+ const a = "32";
+ !function() {
+ !function(a) {
+ console.log(a++, "321");
+ }(0);
+ }();
+ }
+ expect_stdout: "0 '321'"
+}