summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/date-methods-this-error.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/basic/date-methods-this-error.js')
-rw-r--r--js/src/jit-test/tests/basic/date-methods-this-error.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/date-methods-this-error.js b/js/src/jit-test/tests/basic/date-methods-this-error.js
new file mode 100644
index 0000000000..b075a6e37d
--- /dev/null
+++ b/js/src/jit-test/tests/basic/date-methods-this-error.js
@@ -0,0 +1,18 @@
+load(libdir + "asserts.js");
+
+let ignored = [
+ "constructor",
+ "toJSON", // Generic, but calls toISOString
+ "toGMTString", // Same method as toUTCString
+]
+
+let methods = Object.getOwnPropertyNames(Date.prototype)
+ .filter(name => !ignored.includes(name));
+
+for (let method of methods) {
+ assertTypeErrorMessage(() => Date.prototype[method].call(new Map),
+ `Date.prototype.${method} called on incompatible Map`);
+
+ assertTypeErrorMessage(() => Date.prototype[method].call(false),
+ `Date.prototype.${method} called on incompatible boolean`);
+}