From 6c8e001feeeb957279814aa58be44d1ece8bdb6e Mon Sep 17 00:00:00 2001 From: Anthony Van de Gejuchte Date: Fri, 10 Jun 2016 15:42:55 +0200 Subject: Stop dropping args in new expressions --- test/compress/new.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'test/compress') diff --git a/test/compress/new.js b/test/compress/new.js index d956ae27..78a1026e 100644 --- a/test/compress/new.js +++ b/test/compress/new.js @@ -11,6 +11,30 @@ new_statement: { expect_exact: "new x(1);new x(1)(2);new x(1)(2)(3);new new x(1);new new x(1)(2);new new x(1)(2);(new new x(1))(2);" } +new_statements_2: { + input: { + new x; + new new x; + new new new x; + new true; + new (0); + new (!0); + new (bar = function(foo) {this.foo=foo;})(123); + new (bar = function(foo) {this.foo=foo;})(); + } + expect_exact: "new x;new(new x);new(new(new x));new true;new 0;new(!0);new(bar=function(foo){this.foo=foo})(123);new(bar=function(foo){this.foo=foo});" +} + +new_statements_3: { + input: { + new (function(foo){this.foo=foo;})(1); + new (function(foo){this.foo=foo;})(); + new (function test(foo){this.foo=foo;})(1); + new (function test(foo){this.foo=foo;})(); + } + expect_exact: "new function(foo){this.foo=foo}(1);new function(foo){this.foo=foo};new function test(foo){this.foo=foo}(1);new function test(foo){this.foo=foo};" +} + new_with_rewritten_true_value: { options = { booleans: true } input: { @@ -18,3 +42,11 @@ new_with_rewritten_true_value: { } expect_exact: "new(!0);" } + +new_with_many_parameters: { + input: { + new foo.bar("baz"); + new x(/123/, 456); + } + expect_exact: 'new foo.bar("baz");new x(/123/,456);' +} -- cgit v1.2.3