Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | var f = Function("a", "b", "return a + b;"); |
michael@0 | 2 | assertEq(f.toString(), "function anonymous(a, b) {\nreturn a + b;\n}"); |
michael@0 | 3 | assertEq(f.toSource(), "(function anonymous(a, b) {\nreturn a + b;\n})"); |
michael@0 | 4 | assertEq(decompileFunction(f), f.toString()); |
michael@0 | 5 | assertEq(decompileBody(f), "return a + b;"); |
michael@0 | 6 | f = Function("a", "...rest", "return rest[42] + b;"); |
michael@0 | 7 | assertEq(f.toString(), "function anonymous(a, ...rest) {\nreturn rest[42] + b;\n}"); |
michael@0 | 8 | assertEq(f.toSource(), "(function anonymous(a, ...rest) {\nreturn rest[42] + b;\n})") |
michael@0 | 9 | assertEq(decompileFunction(f), f.toString()); |
michael@0 | 10 | assertEq(decompileBody(f), "return rest[42] + b;"); |
michael@0 | 11 | f = Function("x", "return let (y) x;"); |
michael@0 | 12 | assertEq(f.toSource(), "(function anonymous(x) {\nreturn let (y) x;\n})"); |
michael@0 | 13 | f = Function(""); |
michael@0 | 14 | assertEq(f.toString(), "function anonymous() {\n\n}"); |
michael@0 | 15 | f = Function("", "(abc)"); |
michael@0 | 16 | assertEq(f.toString(), "function anonymous() {\n(abc)\n}"); |
michael@0 | 17 | f = Function("", "return function (a, b) a + b;")(); |
michael@0 | 18 | assertEq(f.toString(), "function (a, b) a + b"); |