summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/function-tosource-constructor.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/basic/function-tosource-constructor.js')
-rw-r--r--js/src/jit-test/tests/basic/function-tosource-constructor.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/function-tosource-constructor.js b/js/src/jit-test/tests/basic/function-tosource-constructor.js
new file mode 100644
index 000000000..e1d144364
--- /dev/null
+++ b/js/src/jit-test/tests/basic/function-tosource-constructor.js
@@ -0,0 +1,14 @@
+var f = Function("a", "b", "return a + b;");
+assertEq(f.toString(), "function anonymous(a, b) {\nreturn a + b;\n}");
+assertEq(f.toSource(), "(function anonymous(a, b) {\nreturn a + b;\n})");
+assertEq(decompileFunction(f), f.toString());
+f = Function("a", "...rest", "return rest[42] + b;");
+assertEq(f.toString(), "function anonymous(a, ...rest) {\nreturn rest[42] + b;\n}");
+assertEq(f.toSource(), "(function anonymous(a, ...rest) {\nreturn rest[42] + b;\n})")
+assertEq(decompileFunction(f), f.toString());
+f = Function("");
+assertEq(f.toString(), "function anonymous() {\n\n}");
+f = Function("", "(abc)");
+assertEq(f.toString(), "function anonymous() {\n(abc)\n}");
+f = Function("", "return function (a, b) a + b;")();
+assertEq(f.toString(), "function (a, b) a + b");