summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Boolean
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/non262/Boolean')
-rw-r--r--js/src/tests/non262/Boolean/15.6.4.2.js17
-rw-r--r--js/src/tests/non262/Boolean/browser.js0
-rw-r--r--js/src/tests/non262/Boolean/no-boolean-toJSON.js17
-rw-r--r--js/src/tests/non262/Boolean/shell.js0
4 files changed, 34 insertions, 0 deletions
diff --git a/js/src/tests/non262/Boolean/15.6.4.2.js b/js/src/tests/non262/Boolean/15.6.4.2.js
new file mode 100644
index 0000000000..3e10afa388
--- /dev/null
+++ b/js/src/tests/non262/Boolean/15.6.4.2.js
@@ -0,0 +1,17 @@
+/*
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/licenses/publicdomain/
+ */
+
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(42)'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call("")'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call({})'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(null)'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call([])'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(undefined)'), true);
+assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(new String())'), true);
+
+assertEq(completesNormally('Boolean.prototype.toString.call(true)'), true);
+assertEq(completesNormally('Boolean.prototype.toString.call(new Boolean(true))'), true);
+
+reportCompare(true, true);
diff --git a/js/src/tests/non262/Boolean/browser.js b/js/src/tests/non262/Boolean/browser.js
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/js/src/tests/non262/Boolean/browser.js
diff --git a/js/src/tests/non262/Boolean/no-boolean-toJSON.js b/js/src/tests/non262/Boolean/no-boolean-toJSON.js
new file mode 100644
index 0000000000..e12c8049b0
--- /dev/null
+++ b/js/src/tests/non262/Boolean/no-boolean-toJSON.js
@@ -0,0 +1,17 @@
+/*
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/licenses/publicdomain/
+ * Author: Tom Schuster
+ */
+
+JSON.stringify(new Boolean(false), function(k, v) {
+ assertEq(typeof v, "object");
+});
+
+assertEq(Boolean.prototype.hasOwnProperty('toJSON'), false);
+
+Object.prototype.toJSON = function() { return 2; };
+assertEq(JSON.stringify(new Boolean(true)), "2");
+
+if (typeof reportCompare === 'function')
+ reportCompare(true, true);
diff --git a/js/src/tests/non262/Boolean/shell.js b/js/src/tests/non262/Boolean/shell.js
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/js/src/tests/non262/Boolean/shell.js