diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/compress/issue-1770.js | 148 |
1 files changed, 145 insertions, 3 deletions
diff --git a/test/compress/issue-1770.js b/test/compress/issue-1770.js index 69df8960..9008c6f4 100644 --- a/test/compress/issue-1770.js +++ b/test/compress/issue-1770.js @@ -6,6 +6,7 @@ mangle_props: { NaN: 2, Infinity: 3, "-Infinity": 4, + "-0": 5, }; console.log( obj[void 0], @@ -19,7 +20,10 @@ mangle_props: { obj["Infinity"], obj[-1/0], obj[-Infinity], - obj["-Infinity"] + obj["-Infinity"], + obj[-0], + obj[-""], + obj["-0"] ); } expect: { @@ -28,6 +32,7 @@ mangle_props: { NaN: 2, Infinity: 3, "-Infinity": 4, + a: 5, }; console.log( obj[void 0], @@ -41,8 +46,145 @@ mangle_props: { obj["Infinity"], obj[-1/0], obj[-1/0], - obj["-Infinity"] + obj["-Infinity"], + obj[-0], + obj[-""], + obj["a"] ); } - expect_stdout: true + expect_stdout: "1 1 1 2 2 2 3 3 3 4 4 4 undefined undefined 5" +} + +identifier: { + mangle_props = {} + input: { + var obj = { + abstract: 1, + boolean: 2, + byte: 3, + char: 4, + class: 5, + double: 6, + enum: 7, + export: 8, + extends: 9, + final: 10, + float: 11, + goto: 12, + implements: 13, + import: 14, + int: 15, + interface: 16, + let: 17, + long: 18, + native: 19, + package: 20, + private: 21, + protected: 22, + public: 23, + short: 24, + static: 25, + super: 26, + synchronized: 27, + this: 28, + throws: 29, + transient: 30, + volatile: 31, + yield: 32, + false: 33, + null: 34, + true: 35, + break: 36, + case: 37, + catch: 38, + const: 39, + continue: 40, + debugger: 41, + default: 42, + delete: 43, + do: 44, + else: 45, + finally: 46, + for: 47, + function: 48, + if: 49, + in: 50, + instanceof: 51, + new: 52, + return: 53, + switch: 54, + throw: 55, + try: 56, + typeof: 57, + var: 58, + void: 59, + while: 60, + with: 61, + }; + } + expect: { + var obj = { + a: 1, + b: 2, + c: 3, + d: 4, + e: 5, + f: 6, + g: 7, + h: 8, + i: 9, + j: 10, + k: 11, + l: 12, + m: 13, + n: 14, + o: 15, + p: 16, + q: 17, + r: 18, + s: 19, + t: 20, + u: 21, + v: 22, + w: 23, + x: 24, + y: 25, + z: 26, + A: 27, + B: 28, + C: 29, + D: 30, + F: 31, + G: 32, + H: 33, + I: 34, + J: 35, + K: 36, + L: 37, + M: 38, + N: 39, + O: 40, + P: 41, + Q: 42, + R: 43, + S: 44, + T: 45, + U: 46, + V: 47, + W: 48, + X: 49, + Y: 50, + Z: 51, + $: 52, + _: 53, + aa: 54, + ba: 55, + ca: 56, + da: 57, + ea: 58, + fa: 59, + ga: 60, + ha: 61 + }; + } } |