diff options
Diffstat (limited to 'test/compress/conditionals.js')
-rw-r--r-- | test/compress/conditionals.js | 183 |
1 files changed, 23 insertions, 160 deletions
diff --git a/test/compress/conditionals.js b/test/compress/conditionals.js index 35cb26f7..d88c5b90 100644 --- a/test/compress/conditionals.js +++ b/test/compress/conditionals.js @@ -635,166 +635,6 @@ ternary_boolean_alternative: { } } -conditional_and: { - options = { - conditionals: true, - evaluate : true - }; - input: { - var a; - // compress these - - a = true && condition; - a = 1 && console.log("a"); - a = 2 * 3 && 2 * condition; - a = 5 == 5 && condition + 3; - a = "string" && 4 - condition; - a = 5 + "" && condition / 5; - a = -4.5 && 6 << condition; - a = 6 && 7; - - a = false && condition; - a = NaN && console.log("b"); - a = 0 && console.log("c"); - a = undefined && 2 * condition; - a = null && condition + 3; - a = 2 * 3 - 6 && 4 - condition; - a = 10 == 7 && condition / 5; - a = !"string" && 6 % condition; - a = 0 && 7; - - // don't compress these - - a = condition && true; - a = console.log("a") && 2; - a = 4 - condition && "string"; - a = 6 << condition && -4.5; - - a = condition && false; - a = console.log("b") && NaN; - a = console.log("c") && 0; - a = 2 * condition && undefined; - a = condition + 3 && null; - - } - expect: { - var a; - - a = condition; - a = console.log("a"); - a = 2 * condition; - a = condition + 3; - a = 4 - condition; - a = condition / 5; - a = 6 << condition; - a = 7; - - a = false; - a = NaN; - a = 0; - a = void 0; - a = null; - a = 0; - a = false; - a = false; - a = 0; - - a = condition && true; - a = console.log("a") && 2; - a = 4 - condition && "string"; - a = 6 << condition && -4.5; - - a = condition && false; - a = console.log("b") && NaN; - a = console.log("c") && 0; - a = 2 * condition && void 0; - a = condition + 3 && null; - } -} - -conditional_or: { - options = { - conditionals: true, - evaluate : true - }; - input: { - var a; - // compress these - - a = true || condition; - a = 1 || console.log("a"); - a = 2 * 3 || 2 * condition; - a = 5 == 5 || condition + 3; - a = "string" || 4 - condition; - a = 5 + "" || condition / 5; - a = -4.5 || 6 << condition; - a = 6 || 7; - - a = false || condition; - a = 0 || console.log("b"); - a = NaN || console.log("c"); - a = undefined || 2 * condition; - a = null || condition + 3; - a = 2 * 3 - 6 || 4 - condition; - a = 10 == 7 || condition / 5; - a = !"string" || 6 % condition; - a = null || 7; - - a = console.log(undefined && condition || null); - a = console.log(undefined || condition && null); - - // don't compress these - - a = condition || true; - a = console.log("a") || 2; - a = 4 - condition || "string"; - a = 6 << condition || -4.5; - - a = condition || false; - a = console.log("b") || NaN; - a = console.log("c") || 0; - a = 2 * condition || undefined; - a = condition + 3 || null; - - } - expect: { - var a; - - a = true; - a = 1; - a = 6; - a = true; - a = "string"; - a = "5"; - a = -4.5; - a = 6; - - a = condition; - a = console.log("b"); - a = console.log("c"); - a = 2 * condition; - a = condition + 3; - a = 4 - condition; - a = condition / 5; - a = 6 % condition; - a = 7; - - a = console.log(null); - a = console.log(condition && null); - - a = condition || true; - a = console.log("a") || 2; - a = 4 - condition || "string"; - a = 6 << condition || -4.5; - - a = condition || false; - a = console.log("b") || NaN; - a = console.log("c") || 0; - a = 2 * condition || void 0; - a = condition + 3 || null; - } -} - trivial_boolean_ternary_expressions : { options = { conditionals: true, @@ -906,3 +746,26 @@ issue_1154: { function g6() { return g(), "number"; } } } + +no_evaluate: { + options = { + conditionals: true, + evaluate : false + } + input: { + function f(b) { + a = b ? !0 : !0; + a = b ? ~1 : ~1; + a = b ? -2 : -2; + a = b ? +3 : +3; + } + } + expect: { + function f(b) { + a = !0; + a = ~1; + a = -2; + a = +3; + } + } +} |