diff -r 000000000000 -r 6474c204b198 js/src/jit-test/tests/basic/function-tosource-exprbody.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/src/jit-test/tests/basic/function-tosource-exprbody.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,32 @@ +function f1(foo, bar) foo + bar; +assertEq(f1.toString(), "function f1(foo, bar) foo + bar"); +assertEq(f1.toString(), f1.toSource()); +assertEq(decompileFunction(f1), f1.toString()); +assertEq(decompileBody(f1), "foo + bar;"); +// No semicolon on purpose +function f2(foo, bar) foo + bar +assertEq(f2.toString(), "function f2(foo, bar) foo + bar"); +assertEq(f2.toString(), f2.toSource()); +var f3 = function (foo, bar) foo + bar; +assertEq(f3.toSource(), "(function (foo, bar) foo + bar)"); +assertEq(f3.toString(), "function (foo, bar) foo + bar"); +// No semicolon on purpose +var f4 = function (foo, bar) foo + bar +assertEq(f4.toSource(), "(function (foo, bar) foo + bar)"); +assertEq(f4.toString(), "function (foo, bar) foo + bar"); +var f5 = function (foo, bar) foo + bar ; +assertEq(f5.toSource(), "(function (foo, bar) foo + bar)"); +assertEq(f5.toString(), "function (foo, bar) foo + bar"); +var f6 = function (foo, bar) foo + bar; var a = 42 +assertEq(f6.toSource(), "(function (foo, bar) foo + bar)"); +assertEq(f6.toString(), "function (foo, bar) foo + bar"); +var f7 = function (foo, bar) foo + bar + '\ +long\ +string\ +test\ +' +// a comment followed by some space + + +assertEq(f7.toString(), "function (foo, bar) foo + bar + '\\\nlong\\\nstring\\\ntest\\\n'"); +assertEq(f7.toSource(), "(" + f7.toString() + ")");