diff --git a/src/subclass-builtins/Date.case b/src/subclass-builtins/Date.case index 65ae759f1f..b5d680d6cf 100644 --- a/src/subclass-builtins/Date.case +++ b/src/subclass-builtins/Date.case @@ -4,9 +4,11 @@ /*--- esid: sec-ecmascript-standard-built-in-objects desc: > - new SubDate() instanceof Date + new SubDate(0) instanceof Date template: default ---*/ //- builtin Date +//- args +0 diff --git a/test/annexB/built-ins/Date/prototype/setYear/year-nan.js b/test/annexB/built-ins/Date/prototype/setYear/year-nan.js index 23cf552504..1ef2860dd2 100644 --- a/test/annexB/built-ins/Date/prototype/setYear/year-nan.js +++ b/test/annexB/built-ins/Date/prototype/setYear/year-nan.js @@ -15,19 +15,19 @@ features: [Symbol] var date; -date = new Date(); +date = new Date(0); assert.sameValue(date.setYear(), NaN, 'return value (no argument)'); assert.sameValue( date.valueOf(), NaN, '[[DateValue]] internal slot (no argument)' ); -date = new Date(); +date = new Date(0); assert.sameValue(date.setYear(NaN), NaN, 'return value (literal NaN)'); assert.sameValue( date.valueOf(), NaN, '[[DateValue]] internal slot (literal NaN)' ); -date = new Date(); +date = new Date(0); assert.sameValue( date.setYear('not a number'), NaN, 'return value (NaN from ToNumber)' ); diff --git a/test/annexB/built-ins/Date/prototype/setYear/year-to-number-err.js b/test/annexB/built-ins/Date/prototype/setYear/year-to-number-err.js index 6c834d7c37..021f25fd45 100644 --- a/test/annexB/built-ins/Date/prototype/setYear/year-to-number-err.js +++ b/test/annexB/built-ins/Date/prototype/setYear/year-to-number-err.js @@ -12,7 +12,7 @@ info: | features: [Symbol] ---*/ -var date = new Date(); +var date = new Date(0); var symbol = Symbol(''); var year = { valueOf: function() { diff --git a/test/built-ins/Array/isArray/15.4.3.2-1-9.js b/test/built-ins/Array/isArray/15.4.3.2-1-9.js index 5d4eab1d01..d48b3bcc9a 100644 --- a/test/built-ins/Array/isArray/15.4.3.2-1-9.js +++ b/test/built-ins/Array/isArray/15.4.3.2-1-9.js @@ -7,4 +7,4 @@ es5id: 15.4.3.2-1-9 description: Array.isArray applied to Date object ---*/ -assert.sameValue(Array.isArray(new Date()), false, 'Array.isArray(new Date()) must return false'); +assert.sameValue(Array.isArray(new Date(0)), false, 'Array.isArray(new Date(0)) must return false'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-1-11.js b/test/built-ins/Array/prototype/every/15.4.4.16-1-11.js index c851023a80..e9eb2d613c 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-1-11.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-1-11.js @@ -10,7 +10,7 @@ function callbackfn(val, idx, obj) { return !(obj instanceof Date); } -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-3-23.js b/test/built-ins/Array/prototype/every/15.4.4.16-3-23.js index 0dfdb6396b..6a064d73f2 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-3-23.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-3-23.js @@ -31,10 +31,12 @@ Con.prototype = proto; var child = new Con(); -child.toString = function() { - toStringAccessed = true; - return '1'; -}; +Object.defineProperty(child, "toString", { + value: function() { + toStringAccessed = true; + return '1'; + } +}); var obj = { 0: 12, diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-5-15.js b/test/built-ins/Array/prototype/every/15.4.4.16-5-15.js index 7133cd487a..a8b425922c 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-5-15.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-5-15.js @@ -8,7 +8,7 @@ description: Array.prototype.every - Date Object can be used as thisArg ---*/ var accessed = false; -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(val, idx, obj) { accessed = true; diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-iii-21.js b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-iii-21.js index c527cf763e..cb048d144c 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-iii-21.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-iii-21.js @@ -10,7 +10,7 @@ var accessed = false; function callbackfn(val, idx, obj) { accessed = true; - return new Date(); + return new Date(0); } assert([11].every(callbackfn), '[11].every(callbackfn) !== true'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-1-11.js b/test/built-ins/Array/prototype/filter/15.4.4.20-1-11.js index 438185e0c1..d2194bd3b7 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-1-11.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-1-11.js @@ -10,7 +10,7 @@ function callbackfn(val, idx, obj) { return obj instanceof Date; } -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-5-15.js b/test/built-ins/Array/prototype/filter/15.4.4.20-5-15.js index 2193c40150..ebef0f0546 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-5-15.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-5-15.js @@ -8,7 +8,7 @@ description: Array.prototype.filter - Date Object can be used as thisArg var accessed = false; -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(val, idx, obj) { accessed = true; diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-iii-22.js b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-iii-22.js index d631b66c8b..904e43cc25 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-iii-22.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-iii-22.js @@ -9,7 +9,7 @@ description: > ---*/ function callbackfn(val, idx, obj) { - return new Date(); + return new Date(0); } var newArr = [11].filter(callbackfn); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-11.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-11.js index 4eaf2170a9..f71db3c903 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-11.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-11.js @@ -12,7 +12,7 @@ function callbackfn(val, idx, obj) { result = obj instanceof Date; } -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-5-15.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-5-15.js index 0200d8f56d..becc04ab21 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-5-15.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-5-15.js @@ -7,7 +7,7 @@ description: Array.prototype.forEach - Date Object can be used as thisArg ---*/ var result = false; -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(val, idx, obj) { result = (this === objDate); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-11.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-11.js index e6ffc20f9f..3471e254e0 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-11.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-11.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.indexof description: Array.prototype.indexOf applied to Date object ---*/ -var obj = new Date(); +var obj = new Date(0); obj.length = 2; obj[1] = true; diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-11.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-11.js index 063c4a8830..12d97cf849 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-11.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-11.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.lastindexof description: Array.prototype.lastIndexOf applied to Date object ---*/ -var obj = new Date(); +var obj = new Date(0); obj.length = 2; obj[1] = true; diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-1-11.js b/test/built-ins/Array/prototype/map/15.4.4.19-1-11.js index 003521b822..259b2a1359 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-1-11.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-1-11.js @@ -10,7 +10,7 @@ function callbackfn(val, idx, obj) { return obj instanceof Date; } -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-5-15.js b/test/built-ins/Array/prototype/map/15.4.4.19-5-15.js index 5fef396b09..a771eda870 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-5-15.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-5-15.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.map description: Array.prototype.map - Date object can be used as thisArg ---*/ -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(val, idx, obj) { return this === objDate; diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-11.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-11.js index f9bd16f175..55c7e6bd21 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-11.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-11.js @@ -10,7 +10,7 @@ function callbackfn(prevVal, curVal, idx, obj) { return obj instanceof Date; } -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-31.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-31.js index f8759271ea..454caf5267 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-31.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-31.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.reduce description: Array.prototype.reduce - Date object can be used as accumulator ---*/ -var objDate = new Date(); +var objDate = new Date(0); var accessed = false; diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-11.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-11.js index a2fe26d5e5..b9c1d3b6a3 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-11.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-11.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.reduceright description: Array.prototype.reduceRight applied to Date object ---*/ -var obj = new Date(); +var obj = new Date(0); obj.length = 1; obj[0] = 1; var accessed = false; diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-23.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-23.js index 49bf54c30a..71af713dae 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-23.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-23.js @@ -35,10 +35,12 @@ function callbackfn(prevVal, curVal, idx, obj) { return false; } -child.toString = function() { - toStringAccessed = true; - return '1'; -}; +Object.defineProperty(child, "toString", { + value: function() { + toStringAccessed = true; + return '1'; + } +}); var obj = { 0: 12, diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-ii-31.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-ii-31.js index 249a8ceb8d..e2dc04e2f5 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-ii-31.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-ii-31.js @@ -9,7 +9,7 @@ description: > ---*/ var accessed = false; -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(prevVal, curVal, idx, obj) { accessed = true; diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-1-11.js b/test/built-ins/Array/prototype/some/15.4.4.17-1-11.js index b8bf81857f..706123bb11 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-1-11.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-1-11.js @@ -10,7 +10,7 @@ function callbackfn(val, idx, obj) { return obj instanceof Date; } -var obj = new Date(); +var obj = new Date(0); obj.length = 2; obj[0] = 11; obj[1] = 9; diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-5-15.js b/test/built-ins/Array/prototype/some/15.4.4.17-5-15.js index ab527b7bae..f61b1e956a 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-5-15.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-5-15.js @@ -6,7 +6,7 @@ esid: sec-array.prototype.some description: Array.prototype.some - Date object can be used as thisArg ---*/ -var objDate = new Date(); +var objDate = new Date(0); function callbackfn(val, idx, obj) { return this === objDate; diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-iii-21.js b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-iii-21.js index 04dd1dce95..2a5f3c1272 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-iii-21.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-iii-21.js @@ -7,7 +7,7 @@ description: Array.prototype.some - return value of callbackfn is a Date object ---*/ function callbackfn(val, idx, obj) { - return new Date(); + return new Date(0); } assert([11].some(callbackfn), '[11].some(callbackfn) !== true'); diff --git a/test/built-ins/Boolean/prototype/toString/S15.6.4.2_A2_T3.js b/test/built-ins/Boolean/prototype/toString/S15.6.4.2_A2_T3.js index 95a7a35418..76c30a272a 100644 --- a/test/built-ins/Boolean/prototype/toString/S15.6.4.2_A2_T3.js +++ b/test/built-ins/Boolean/prototype/toString/S15.6.4.2_A2_T3.js @@ -11,14 +11,14 @@ es5id: 15.6.4.2_A2_T3 description: transferring to the Date objects ---*/ +var s1 = new Date(0); +Object.defineProperty(s1, "toString", {value: Boolean.prototype.toString}); assert.throws(TypeError, () => { - var s1 = new Date(); - s1.toString = Boolean.prototype.toString; s1.toString(); }); +var s2 = new Date(0); +s2.myToString = Boolean.prototype.toString; assert.throws(TypeError, () => { - var s2 = new Date(); - s2.myToString = Boolean.prototype.toString; s2.myToString(); }); diff --git a/test/built-ins/Date/is-a-constructor.js b/test/built-ins/Date/is-a-constructor.js index 92bc249c6b..cb08818c08 100644 --- a/test/built-ins/Date/is-a-constructor.js +++ b/test/built-ins/Date/is-a-constructor.js @@ -20,5 +20,5 @@ features: [Reflect.construct] ---*/ assert.sameValue(isConstructor(Date), true, 'isConstructor(Date) must return true'); -new Date(); +new Date(0); diff --git a/test/built-ins/Date/proto-from-ctor-realm-zero.js b/test/built-ins/Date/proto-from-ctor-realm-zero.js index 00cb0ddd1e..de8497420d 100644 --- a/test/built-ins/Date/proto-from-ctor-realm-zero.js +++ b/test/built-ins/Date/proto-from-ctor-realm-zero.js @@ -25,6 +25,6 @@ var other = $262.createRealm().global; var C = new other.Function(); C.prototype = null; -var o = Reflect.construct(Date, [], C); +var o = Reflect.construct(Date, [0], C); assert.sameValue(Object.getPrototypeOf(o), other.Date.prototype); diff --git a/test/built-ins/Date/prototype/Symbol.toPrimitive/hint-invalid.js b/test/built-ins/Date/prototype/Symbol.toPrimitive/hint-invalid.js index 09f2837474..6be45c6b2f 100644 --- a/test/built-ins/Date/prototype/Symbol.toPrimitive/hint-invalid.js +++ b/test/built-ins/Date/prototype/Symbol.toPrimitive/hint-invalid.js @@ -14,7 +14,7 @@ info: | features: [Symbol.toPrimitive] ---*/ -var d = new Date(); +var d = new Date(0); assert.sameValue(typeof d[Symbol.toPrimitive], 'function'); diff --git a/test/built-ins/Date/prototype/setDate/arg-to-number-err.js b/test/built-ins/Date/prototype/setDate/arg-to-number-err.js index 663afa94c4..cf01faf203 100644 --- a/test/built-ins/Date/prototype/setDate/arg-to-number-err.js +++ b/test/built-ins/Date/prototype/setDate/arg-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let dt be ? ToNumber(date). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setFullYear/arg-date-to-number-err.js b/test/built-ins/Date/prototype/setFullYear/arg-date-to-number-err.js index f1b0358b5a..0fcea27487 100644 --- a/test/built-ins/Date/prototype/setFullYear/arg-date-to-number-err.js +++ b/test/built-ins/Date/prototype/setFullYear/arg-date-to-number-err.js @@ -13,7 +13,7 @@ info: | ? ToNumber(date). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setFullYear/arg-month-to-number-err.js b/test/built-ins/Date/prototype/setFullYear/arg-month-to-number-err.js index f1de8478df..8720569022 100644 --- a/test/built-ins/Date/prototype/setFullYear/arg-month-to-number-err.js +++ b/test/built-ins/Date/prototype/setFullYear/arg-month-to-number-err.js @@ -11,7 +11,7 @@ info: | ? ToNumber(month). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setFullYear/arg-year-to-number-err.js b/test/built-ins/Date/prototype/setFullYear/arg-year-to-number-err.js index 67fe061bcb..3c98884235 100644 --- a/test/built-ins/Date/prototype/setFullYear/arg-year-to-number-err.js +++ b/test/built-ins/Date/prototype/setFullYear/arg-year-to-number-err.js @@ -9,7 +9,7 @@ info: | 3. Let y be ? ToNumber(year). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setHours/arg-hour-to-number-err.js b/test/built-ins/Date/prototype/setHours/arg-hour-to-number-err.js index 7db1c80a09..50c06cb065 100644 --- a/test/built-ins/Date/prototype/setHours/arg-hour-to-number-err.js +++ b/test/built-ins/Date/prototype/setHours/arg-hour-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let dt be ? ToNumber(hour). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setHours/arg-min-to-number-err.js b/test/built-ins/Date/prototype/setHours/arg-min-to-number-err.js index 2caa05ccee..56ae58ebd3 100644 --- a/test/built-ins/Date/prototype/setHours/arg-min-to-number-err.js +++ b/test/built-ins/Date/prototype/setHours/arg-min-to-number-err.js @@ -10,7 +10,7 @@ info: | ToNumber(min). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setHours/arg-ms-to-number-err.js b/test/built-ins/Date/prototype/setHours/arg-ms-to-number-err.js index ef6730c087..4b6b4e0bc3 100644 --- a/test/built-ins/Date/prototype/setHours/arg-ms-to-number-err.js +++ b/test/built-ins/Date/prototype/setHours/arg-ms-to-number-err.js @@ -14,7 +14,7 @@ info: | be ? ToNumber(ms). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setHours/arg-sec-to-number-err.js b/test/built-ins/Date/prototype/setHours/arg-sec-to-number-err.js index 9284ead229..a31f8df9a0 100644 --- a/test/built-ins/Date/prototype/setHours/arg-sec-to-number-err.js +++ b/test/built-ins/Date/prototype/setHours/arg-sec-to-number-err.js @@ -12,7 +12,7 @@ info: | ToNumber(sec). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setMilliseconds/arg-to-number-err.js b/test/built-ins/Date/prototype/setMilliseconds/arg-to-number-err.js index b802bb1650..1ef63f08d4 100644 --- a/test/built-ins/Date/prototype/setMilliseconds/arg-to-number-err.js +++ b/test/built-ins/Date/prototype/setMilliseconds/arg-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let dt be ? ToNumber(date). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setMinutes/arg-min-to-number-err.js b/test/built-ins/Date/prototype/setMinutes/arg-min-to-number-err.js index c54c3410c0..4c31d2d4cd 100644 --- a/test/built-ins/Date/prototype/setMinutes/arg-min-to-number-err.js +++ b/test/built-ins/Date/prototype/setMinutes/arg-min-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let m be ? ToNumber(min). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setMinutes/arg-ms-to-number-err.js b/test/built-ins/Date/prototype/setMinutes/arg-ms-to-number-err.js index b4a67ba88d..54e7bbfb05 100644 --- a/test/built-ins/Date/prototype/setMinutes/arg-ms-to-number-err.js +++ b/test/built-ins/Date/prototype/setMinutes/arg-ms-to-number-err.js @@ -12,7 +12,7 @@ info: | be ? ToNumber(ms). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setMinutes/arg-sec-to-number-err.js b/test/built-ins/Date/prototype/setMinutes/arg-sec-to-number-err.js index 7d082878d4..4460de0feb 100644 --- a/test/built-ins/Date/prototype/setMinutes/arg-sec-to-number-err.js +++ b/test/built-ins/Date/prototype/setMinutes/arg-sec-to-number-err.js @@ -10,7 +10,7 @@ info: | ToNumber(sec). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setMonth/arg-date-to-number-err.js b/test/built-ins/Date/prototype/setMonth/arg-date-to-number-err.js index 93295d9c16..70b549f26b 100644 --- a/test/built-ins/Date/prototype/setMonth/arg-date-to-number-err.js +++ b/test/built-ins/Date/prototype/setMonth/arg-date-to-number-err.js @@ -10,7 +10,7 @@ info: | ? ToNumber(date). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setMonth/arg-month-to-number-err.js b/test/built-ins/Date/prototype/setMonth/arg-month-to-number-err.js index bd7a5a489b..64e61a7406 100644 --- a/test/built-ins/Date/prototype/setMonth/arg-month-to-number-err.js +++ b/test/built-ins/Date/prototype/setMonth/arg-month-to-number-err.js @@ -11,7 +11,7 @@ info: | ? ToNumber(month). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setSeconds/arg-ms-to-number-err.js b/test/built-ins/Date/prototype/setSeconds/arg-ms-to-number-err.js index e3e68be873..c02c60dee6 100644 --- a/test/built-ins/Date/prototype/setSeconds/arg-ms-to-number-err.js +++ b/test/built-ins/Date/prototype/setSeconds/arg-ms-to-number-err.js @@ -10,7 +10,7 @@ info: | be ? ToNumber(ms). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setSeconds/arg-sec-to-number-err.js b/test/built-ins/Date/prototype/setSeconds/arg-sec-to-number-err.js index 1058a1b604..a22e9115ae 100644 --- a/test/built-ins/Date/prototype/setSeconds/arg-sec-to-number-err.js +++ b/test/built-ins/Date/prototype/setSeconds/arg-sec-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let s be ? ToNumber(sec). ---*/ -var date = new Date(); +var date = new Date(0); var callCount = 0; var originalValue = date.getTime(); var obj = { diff --git a/test/built-ins/Date/prototype/setTime/arg-to-number-err.js b/test/built-ins/Date/prototype/setTime/arg-to-number-err.js index 1fe0fe74da..7d47e1f700 100644 --- a/test/built-ins/Date/prototype/setTime/arg-to-number-err.js +++ b/test/built-ins/Date/prototype/setTime/arg-to-number-err.js @@ -8,7 +8,7 @@ info: | 2. Let t be ? ToNumber(time). ---*/ -var date = new Date(); +var date = new Date(0); var originalValue = date.getTime(); var obj = { valueOf: function() { diff --git a/test/built-ins/Date/prototype/setTime/new-value-time-clip.js b/test/built-ins/Date/prototype/setTime/new-value-time-clip.js index e06c786f5f..610e42d527 100644 --- a/test/built-ins/Date/prototype/setTime/new-value-time-clip.js +++ b/test/built-ins/Date/prototype/setTime/new-value-time-clip.js @@ -17,7 +17,7 @@ info: | ---*/ var maxMs = 8.64e15; -var date = new Date(); +var date = new Date(0); var returnValue; assert.notSameValue(date.getTime(), NaN); diff --git a/test/built-ins/Date/prototype/toDateString/format.js b/test/built-ins/Date/prototype/toDateString/format.js index f9e58dd0ae..cd384f677b 100644 --- a/test/built-ins/Date/prototype/toDateString/format.js +++ b/test/built-ins/Date/prototype/toDateString/format.js @@ -11,7 +11,7 @@ info: | ---*/ let dateRegExp = /^(Sun|Mon|Tue|Wed|Thu|Fri|Sat) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) [0-9]{2} [0-9]{4}$/ -let match = dateRegExp.exec(new Date().toDateString()); +let match = dateRegExp.exec(new Date(0).toDateString()); assert.notSameValue(null, match); // Years are padded to the left with zeroes diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-10.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-10.js index 28245a02d8..9ea20f6838 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-10.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-10.js @@ -9,7 +9,7 @@ description: > UTC(0) ---*/ -var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); +var timeZoneMinutes = new Date(0).getTimezoneOffset() * (-1); var date, dateStr; if (timeZoneMinutes > 0) { diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-11.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-11.js index 66496295f2..c712fac6f4 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-11.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-11.js @@ -9,7 +9,7 @@ description: > UTC(0) ---*/ -var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); +var timeZoneMinutes = new Date(0).getTimezoneOffset() * (-1); var date, dateStr; date = new Date(1970, 0, 100000001, 0, 0 + timeZoneMinutes - 60, 0, -1); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-12.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-12.js index c7822354a9..923f0340b7 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-12.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-12.js @@ -9,7 +9,7 @@ description: > UTC(0) ---*/ -var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); +var timeZoneMinutes = new Date(0).getTimezoneOffset() * (-1); var date, dateStr; date = new Date(1970, 0, 100000001, 0, 0 + timeZoneMinutes - 60, 0, 0); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-5.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-5.js index d58b1d1016..686fbfaafd 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-5.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-5.js @@ -8,6 +8,6 @@ description: > zone(0) ---*/ -var dateStr = (new Date()).toISOString(); +var dateStr = (new Date(0)).toISOString(); assert.sameValue(dateStr[dateStr.length - 1], "Z", 'dateStr[dateStr.length - 1]'); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js index f6a2725648..82548da442 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js @@ -9,7 +9,7 @@ description: > UTC(0) ---*/ -var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); +var timeZoneMinutes = new Date(0).getTimezoneOffset() * (-1); var date, dateStr; assert.throws(RangeError, function() { if (timeZoneMinutes > 0) { diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-9.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-9.js index 07d919126c..787ec8e7bb 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-9.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-9.js @@ -9,7 +9,7 @@ description: > UTC(0) ---*/ -var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); +var timeZoneMinutes = new Date(0).getTimezoneOffset() * (-1); var date, dateStr; if (timeZoneMinutes > 0) { diff --git a/test/built-ins/Date/prototype/toJSON/invoke-result.js b/test/built-ins/Date/prototype/toJSON/invoke-result.js index 0977bda24b..84548bcd64 100644 --- a/test/built-ins/Date/prototype/toJSON/invoke-result.js +++ b/test/built-ins/Date/prototype/toJSON/invoke-result.js @@ -17,7 +17,7 @@ info: | 4. Return ? Call(func, V, argumentsList). ---*/ -var date = new Date(); +var date = new Date(0); assert.sameValue(date.toJSON(), date.toISOString()); var result = {}; diff --git a/test/built-ins/Date/prototype/toString/format.js b/test/built-ins/Date/prototype/toString/format.js index 9212134aac..dfb73df1e5 100644 --- a/test/built-ins/Date/prototype/toString/format.js +++ b/test/built-ins/Date/prototype/toString/format.js @@ -12,7 +12,7 @@ info: | ---*/ let stringRegExp = /^(Sun|Mon|Tue|Wed|Thu|Fri|Sat) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) [0-9]{2} [0-9]{4} [0-9]{2}:[0-9]{2}:[0-9]{2} GMT[+-][0-9]{4}( \(.+\))?$/ -let match = stringRegExp.exec(new Date().toString()); +let match = stringRegExp.exec(new Date(0).toString()); assert.notSameValue(null, match); // Years are padded to the left with zeroes diff --git a/test/built-ins/Date/prototype/toTimeString/format.js b/test/built-ins/Date/prototype/toTimeString/format.js index bbc4509434..7b2a1d98e3 100644 --- a/test/built-ins/Date/prototype/toTimeString/format.js +++ b/test/built-ins/Date/prototype/toTimeString/format.js @@ -11,5 +11,5 @@ info: | ---*/ let timeRegExp = /^[0-9]{2}:[0-9]{2}:[0-9]{2} GMT[+-][0-9]{4}( \(.+\))?$/ -let match = timeRegExp.exec(new Date().toTimeString()); +let match = timeRegExp.exec(new Date(0).toTimeString()); assert.notSameValue(null, match); diff --git a/test/built-ins/Date/prototype/toUTCString/format.js b/test/built-ins/Date/prototype/toUTCString/format.js index 011d094a13..a651fae7e6 100644 --- a/test/built-ins/Date/prototype/toUTCString/format.js +++ b/test/built-ins/Date/prototype/toUTCString/format.js @@ -11,7 +11,7 @@ info: | ---*/ let utcRegExp = /^(Sun|Mon|Tue|Wed|Thu|Fri|Sat), [0-9]{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) [0-9]{4} [0-9]{2}:[0-9]{2}:[0-9]{2} GMT$/ -let match = utcRegExp.exec(new Date().toUTCString()); +let match = utcRegExp.exec(new Date(0).toUTCString()); assert.notSameValue(null, match); // Years are padded to the left with zeroes diff --git a/test/built-ins/Number/prototype/toString/S15.7.4.2_A4_T03.js b/test/built-ins/Number/prototype/toString/S15.7.4.2_A4_T03.js index fdde13dbb1..d4d4176aa3 100644 --- a/test/built-ins/Number/prototype/toString/S15.7.4.2_A4_T03.js +++ b/test/built-ins/Number/prototype/toString/S15.7.4.2_A4_T03.js @@ -10,9 +10,9 @@ es5id: 15.7.4.2_A4_T03 description: transferring to the Date objects ---*/ +var s1 = new Date(0); +Object.defineProperty(s1, "toString", {value: Number.prototype.toString}); try { - var s1 = new Date(); - s1.toString = Number.prototype.toString; var v1 = s1.toString(); throw new Test262Error('#1: Number.prototype.toString on not a Number object should throw TypeError'); } @@ -20,9 +20,9 @@ catch (e) { assert(e instanceof TypeError, 'The result of evaluating (e instanceof TypeError) is expected to be true'); } +var s2 = new Date(0); +s2.myToString = Number.prototype.toString; try { - var s2 = new Date(); - s2.myToString = Number.prototype.toString; var v2 = s2.myToString(); throw new Test262Error('#2: Number.prototype.toString on not a Number object should throw TypeError'); } diff --git a/test/built-ins/Number/prototype/valueOf/S15.7.4.4_A2_T03.js b/test/built-ins/Number/prototype/valueOf/S15.7.4.4_A2_T03.js index 89d7f0299c..5f50474e6d 100644 --- a/test/built-ins/Number/prototype/valueOf/S15.7.4.4_A2_T03.js +++ b/test/built-ins/Number/prototype/valueOf/S15.7.4.4_A2_T03.js @@ -10,9 +10,9 @@ es5id: 15.7.4.4_A2_T03 description: transferring to the Date objects ---*/ +var s1 = new Date(0); +Object.defineProperty(s1, "valueOf", {value: Number.prototype.valueOf}); try { - var s1 = new Date(); - s1.valueOf = Number.prototype.valueOf; var v1 = s1.valueOf(); throw new Test262Error('#1: Number.prototype.valueOf on not a Number object should throw TypeError'); } @@ -20,9 +20,9 @@ catch (e) { assert(e instanceof TypeError, 'The result of evaluating (e instanceof TypeError) is expected to be true'); } +var s2 = new Date(0); +s2.myValueOf = Number.prototype.valueOf; try { - var s2 = new Date(); - s2.myValueOf = Number.prototype.valueOf; var v2 = s2.myValueOf(); throw new Test262Error('#2: Number.prototype.valueOf on not a Number object should throw TypeError'); } diff --git a/test/built-ins/Object/create/15.2.3.5-4-11.js b/test/built-ins/Object/create/15.2.3.5-4-11.js index 7f997a2449..8c6d99fe36 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-11.js +++ b/test/built-ins/Object/create/15.2.3.5-4-11.js @@ -8,7 +8,7 @@ description: > step 2) ---*/ -var props = new Date(); +var props = new Date(0); var result = false; Object.defineProperty(props, "prop", { diff --git a/test/built-ins/Object/create/15.2.3.5-4-118.js b/test/built-ins/Object/create/15.2.3.5-4-118.js index 07a0c5613d..be703cc67b 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-118.js +++ b/test/built-ins/Object/create/15.2.3.5-4-118.js @@ -9,7 +9,7 @@ description: > (8.10.5 step 4.a) ---*/ -var descObj = new Date(); +var descObj = new Date(0); descObj.configurable = true; diff --git a/test/built-ins/Object/create/15.2.3.5-4-143.js b/test/built-ins/Object/create/15.2.3.5-4-143.js index fd08e43a9c..9fae1fa135 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-143.js +++ b/test/built-ins/Object/create/15.2.3.5-4-143.js @@ -10,7 +10,7 @@ description: > var newObj = Object.create({}, { prop: { - configurable: new Date() + configurable: new Date(0) } }); diff --git a/test/built-ins/Object/create/15.2.3.5-4-171.js b/test/built-ins/Object/create/15.2.3.5-4-171.js index a603d0dff6..852bef35a6 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-171.js +++ b/test/built-ins/Object/create/15.2.3.5-4-171.js @@ -9,7 +9,7 @@ description: > (8.10.5 step 5.a) ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.value = "DateValue"; diff --git a/test/built-ins/Object/create/15.2.3.5-4-197.js b/test/built-ins/Object/create/15.2.3.5-4-197.js index fdf8704b59..33270ea0e2 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-197.js +++ b/test/built-ins/Object/create/15.2.3.5-4-197.js @@ -9,7 +9,7 @@ description: > (8.10.5 step 6.a) ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.writable = true; diff --git a/test/built-ins/Object/create/15.2.3.5-4-222.js b/test/built-ins/Object/create/15.2.3.5-4-222.js index 2f03b51e3d..4849d7aa37 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-222.js +++ b/test/built-ins/Object/create/15.2.3.5-4-222.js @@ -10,7 +10,7 @@ description: > var newObj = Object.create({}, { prop: { - writable: new Date() + writable: new Date(0) } }); var hasProperty = newObj.hasOwnProperty("prop"); diff --git a/test/built-ins/Object/create/15.2.3.5-4-249.js b/test/built-ins/Object/create/15.2.3.5-4-249.js index afbf4ec88e..a0570c2f24 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-249.js +++ b/test/built-ins/Object/create/15.2.3.5-4-249.js @@ -9,7 +9,7 @@ description: > step 7.a) ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.get = function() { return "VerifyDateObject"; diff --git a/test/built-ins/Object/create/15.2.3.5-4-285.js b/test/built-ins/Object/create/15.2.3.5-4-285.js index 04a3b4b423..e45a112e1a 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-285.js +++ b/test/built-ins/Object/create/15.2.3.5-4-285.js @@ -9,7 +9,7 @@ description: > step 8.a) ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); var data = "data"; dateObj.set = function(value) { data = value; diff --git a/test/built-ins/Object/create/15.2.3.5-4-297.js b/test/built-ins/Object/create/15.2.3.5-4-297.js index 36a3c9acbf..e360135887 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-297.js +++ b/test/built-ins/Object/create/15.2.3.5-4-297.js @@ -12,7 +12,7 @@ description: > assert.throws(TypeError, function() { Object.create({}, { prop: { - set: new Date() + set: new Date(0) } }); }); diff --git a/test/built-ins/Object/create/15.2.3.5-4-34.js b/test/built-ins/Object/create/15.2.3.5-4-34.js index c2d007dea6..3424f224c7 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-34.js +++ b/test/built-ins/Object/create/15.2.3.5-4-34.js @@ -9,7 +9,7 @@ description: > 5.a) ---*/ -var props = new Date(); +var props = new Date(0); props.prop = { value: 12, enumerable: true diff --git a/test/built-ins/Object/create/15.2.3.5-4-65.js b/test/built-ins/Object/create/15.2.3.5-4-65.js index d0761a6fd7..74f51d94c9 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-65.js +++ b/test/built-ins/Object/create/15.2.3.5-4-65.js @@ -10,7 +10,7 @@ description: > ---*/ var accessed = false; -var descObj = new Date(); +var descObj = new Date(0); descObj.enumerable = true; diff --git a/test/built-ins/Object/create/15.2.3.5-4-90.js b/test/built-ins/Object/create/15.2.3.5-4-90.js index b953f2f2bc..f8d90529e4 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-90.js +++ b/test/built-ins/Object/create/15.2.3.5-4-90.js @@ -12,7 +12,7 @@ var accessed = false; var newObj = Object.create({}, { prop: { - enumerable: new Date() + enumerable: new Date(0) } }); for (var property in newObj) { diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-2-12.js b/test/built-ins/Object/defineProperties/15.2.3.7-2-12.js index 103a8ea8d1..bf440593cd 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-2-12.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-2-12.js @@ -7,7 +7,7 @@ description: Object.defineProperties - argument 'Properties' is a Date object ---*/ var obj = {}; -var props = new Date(); +var props = new Date(0); var result = false; Object.defineProperty(props, "prop", { diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-a-13.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-a-13.js index bf4aaa78f4..06ecbd2c2e 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-a-13.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-a-13.js @@ -9,7 +9,7 @@ description: > ---*/ var obj = {}; -var props = new Date(); +var props = new Date(0); Object.defineProperty(props, "prop", { value: { diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-103.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-103.js index 4a1ab03d5b..85d9a96b65 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-103.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-103.js @@ -12,7 +12,7 @@ var obj = {}; Object.defineProperties(obj, { property: { - configurable: new Date() + configurable: new Date(0) } }); var preCheck = obj.hasOwnProperty("property"); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-131.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-131.js index a10e3a907b..b4c6035bcc 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-131.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-131.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var descObj = new Date(); +var descObj = new Date(0); descObj.value = "Date"; diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-157.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-157.js index 74413b7de6..6d636f4e09 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-157.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-157.js @@ -12,7 +12,7 @@ includes: [propertyHelper.js] var obj = {}; -var descObj = new Date(); +var descObj = new Date(0); descObj.writable = false; diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-182.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-182.js index 8563d4f3b0..7c211cb310 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-182.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-182.js @@ -12,7 +12,7 @@ var obj = {}; Object.defineProperties(obj, { property: { - writable: new Date() + writable: new Date(0) } }); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-210.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-210.js index f49214a034..074f9425ba 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-210.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-210.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var descObj = new Date(); +var descObj = new Date(0); descObj.get = function() { return "Date"; diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-245.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-245.js index a8d8f226e5..04a10ef284 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-245.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-245.js @@ -10,7 +10,7 @@ description: > ---*/ var data = "data"; -var descObj = new Date(); +var descObj = new Date(0); var setFun = function(value) { data = value; }; diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-25.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-25.js index 2492ea6eb8..c137ed86bd 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-25.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-25.js @@ -10,7 +10,7 @@ description: > ---*/ var obj = {}; -var descObj = new Date(); +var descObj = new Date(0); var accessed = false; descObj.enumerable = true; diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-50.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-50.js index 7f99adc4af..f54a8f45cd 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-50.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-50.js @@ -13,7 +13,7 @@ var accessed = false; Object.defineProperties(obj, { prop: { - enumerable: new Date() + enumerable: new Date(0) } }); for (var property in obj) { diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-78.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-78.js index 6fe2d9e0b7..f5a7eafd8a 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-78.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-78.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var descObj = new Date(); +var descObj = new Date(0); descObj.configurable = true; Object.defineProperties(obj, { diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-18.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-18.js index 74e1566795..36869b80a9 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-18.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-18.js @@ -10,7 +10,7 @@ includes: [propertyHelper.js] ---*/ -var obj = new Date(); +var obj = new Date(0); Object.defineProperty(obj, "prop", { value: 11, diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-117.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-117.js index 04d74d887e..faf477b21a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-117.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-117.js @@ -11,7 +11,7 @@ description: > var obj = {}; Object.defineProperty(obj, "property", { - configurable: new Date() + configurable: new Date(0) }); var beforeDeleted = obj.hasOwnProperty("property"); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-145.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-145.js index 2fa41afc51..ec8f0932fe 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-145.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-145.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.value = "Date"; diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-171.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-171.js index 15f8cc9e88..b2caab26be 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-171.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-171.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.writable = true; diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-196.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-196.js index 62c4cd7d7c..7e1f700238 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-196.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-196.js @@ -11,7 +11,7 @@ description: > var obj = {}; Object.defineProperty(obj, "property", { - writable: new Date() + writable: new Date(0) }); var beforeWrite = obj.hasOwnProperty("property"); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-224.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-224.js index 3b6b143c43..4c81cd678a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-224.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-224.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.get = function() { return "dateGetProperty"; diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-254.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-254.js index 3c5799b94b..93e7e5d4fd 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-254.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-254.js @@ -11,7 +11,7 @@ description: > var obj = {}; var data = "data"; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.set = function(value) { data = value; diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-39.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-39.js index 605f7a5f9f..e55556f66e 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-39.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-39.js @@ -12,7 +12,7 @@ description: > var obj = {}; var accessed = false; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.enumerable = true; Object.defineProperty(obj, "property", dateObj); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-64.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-64.js index 4cd67c97d7..acf952ed12 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-64.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-64.js @@ -12,7 +12,7 @@ var obj = {}; var accessed = false; Object.defineProperty(obj, "property", { - enumerable: new Date() + enumerable: new Date(0) }); for (var prop in obj) { diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-92.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-92.js index 1afb867676..5490af1dbc 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-92.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-92.js @@ -11,7 +11,7 @@ description: > var obj = {}; -var dateObj = new Date(); +var dateObj = new Date(0); dateObj.configurable = true; diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js index 62173de61a..5b54c71e93 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js @@ -9,7 +9,7 @@ description: > step 1) ---*/ -var desc = new Date(); +var desc = new Date(0); Object.defineProperty(desc, "foo", { value: 12, diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-392.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-392.js index 79cf9e5164..8ba763f886 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-392.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-392.js @@ -9,7 +9,7 @@ description: > ---*/ var obj = {}; -var dateObj = new Date(); +var dateObj = new Date(0); Object.defineProperty(obj, "prop", { value: dateObj diff --git a/test/built-ins/Object/freeze/15.2.3.9-2-d-6.js b/test/built-ins/Object/freeze/15.2.3.9-2-d-6.js index 1b82d65614..f471776f3b 100644 --- a/test/built-ins/Object/freeze/15.2.3.9-2-d-6.js +++ b/test/built-ins/Object/freeze/15.2.3.9-2-d-6.js @@ -6,7 +6,7 @@ es5id: 15.2.3.9-2-d-6 description: Object.freeze - 'O' is a Date object ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); Object.freeze(dateObj); diff --git a/test/built-ins/Object/getPrototypeOf/15.2.3.2-2-25.js b/test/built-ins/Object/getPrototypeOf/15.2.3.2-2-25.js index 9cac453932..27bfd08c2d 100644 --- a/test/built-ins/Object/getPrototypeOf/15.2.3.2-2-25.js +++ b/test/built-ins/Object/getPrototypeOf/15.2.3.2-2-25.js @@ -8,6 +8,6 @@ description: > (Date object) ---*/ -var obj = new Date(); +var obj = new Date(0); assert.sameValue(Object.getPrototypeOf(obj), Date.prototype, 'Object.getPrototypeOf(obj)'); diff --git a/test/built-ins/Object/keys/15.2.3.14-6-5.js b/test/built-ins/Object/keys/15.2.3.14-6-5.js index 4bd098a3ef..12ff4fb47e 100644 --- a/test/built-ins/Object/keys/15.2.3.14-6-5.js +++ b/test/built-ins/Object/keys/15.2.3.14-6-5.js @@ -8,7 +8,7 @@ description: > with the order of properties in 'O' (any other built-in object) ---*/ -var obj = new Date(); +var obj = new Date(0); obj.prop1 = 100; obj.prop2 = "prop2"; diff --git a/test/built-ins/Object/preventExtensions/15.2.3.10-3-18.js b/test/built-ins/Object/preventExtensions/15.2.3.10-3-18.js index 73378e1fd2..a31a3a3403 100644 --- a/test/built-ins/Object/preventExtensions/15.2.3.10-3-18.js +++ b/test/built-ins/Object/preventExtensions/15.2.3.10-3-18.js @@ -9,7 +9,7 @@ description: > includes: [propertyHelper.js] ---*/ -var obj = new Date(); +var obj = new Date(0); assert(Object.isExtensible(obj)); Object.preventExtensions(obj); diff --git a/test/built-ins/Object/preventExtensions/15.2.3.10-3-8.js b/test/built-ins/Object/preventExtensions/15.2.3.10-3-8.js index 01a351d6fe..d5630585b6 100644 --- a/test/built-ins/Object/preventExtensions/15.2.3.10-3-8.js +++ b/test/built-ins/Object/preventExtensions/15.2.3.10-3-8.js @@ -9,7 +9,7 @@ description: > includes: [propertyHelper.js] ---*/ -var obj = new Date(); +var obj = new Date(0); assert(Object.isExtensible(obj)); Object.preventExtensions(obj); diff --git a/test/built-ins/Object/prototype/toString/Object.prototype.toString.call-date.js b/test/built-ins/Object/prototype/toString/Object.prototype.toString.call-date.js index a422075aa0..8a38c0683a 100644 --- a/test/built-ins/Object/prototype/toString/Object.prototype.toString.call-date.js +++ b/test/built-ins/Object/prototype/toString/Object.prototype.toString.call-date.js @@ -6,12 +6,12 @@ esid: sec-object.prototype.tostring description: is a String exotic object, let builtinTag be "String". ---*/ assert.sameValue( - Object.prototype.toString.call(new Date()), + Object.prototype.toString.call(new Date(0)), "[object Date]", - "Object.prototype.toString.call(new Date()) returns [object Date]" + "Object.prototype.toString.call(new Date(0)) returns [object Date]" ); assert.sameValue( - Object.prototype.toString.call(Object(new Date())), + Object.prototype.toString.call(Object(new Date(0))), "[object Date]", - "Object.prototype.toString.call(Object(new Date())) returns [object Date]" + "Object.prototype.toString.call(Object(new Date(0))) returns [object Date]" ); diff --git a/test/built-ins/Object/prototype/toString/symbol-tag-override-instances.js b/test/built-ins/Object/prototype/toString/symbol-tag-override-instances.js index 26f9f4bbf5..acb3c268ed 100644 --- a/test/built-ins/Object/prototype/toString/symbol-tag-override-instances.js +++ b/test/built-ins/Object/prototype/toString/symbol-tag-override-instances.js @@ -46,7 +46,7 @@ custom = new Number(); custom[Symbol.toStringTag] = 'test262'; assert.sameValue(Object.prototype.toString.call(custom), '[object test262]'); -custom = new Date(); +custom = new Date(0); custom[Symbol.toStringTag] = 'test262'; assert.sameValue(Object.prototype.toString.call(custom), '[object test262]'); diff --git a/test/built-ins/Object/seal/object-seal-o-is-a-date-object.js b/test/built-ins/Object/seal/object-seal-o-is-a-date-object.js index a14a0f19bf..d2d8754696 100644 --- a/test/built-ins/Object/seal/object-seal-o-is-a-date-object.js +++ b/test/built-ins/Object/seal/object-seal-o-is-a-date-object.js @@ -6,7 +6,7 @@ esid: sec-setintegritylevel description: Object.seal - 'O' is a Date object ---*/ -var dateObj = new Date(); +var dateObj = new Date(0); var preCheck = Object.isExtensible(dateObj); Object.seal(dateObj); diff --git a/test/built-ins/Object/seal/object-seal-p-is-own-property-of-a-date-object-that-uses-object-s-get-own-property.js b/test/built-ins/Object/seal/object-seal-p-is-own-property-of-a-date-object-that-uses-object-s-get-own-property.js index 57824620c0..c758c597ef 100644 --- a/test/built-ins/Object/seal/object-seal-p-is-own-property-of-a-date-object-that-uses-object-s-get-own-property.js +++ b/test/built-ins/Object/seal/object-seal-p-is-own-property-of-a-date-object-that-uses-object-s-get-own-property.js @@ -9,7 +9,7 @@ description: > includes: [propertyHelper.js] ---*/ -var obj = new Date(); +var obj = new Date(0); obj.foo = 10; diff --git a/test/built-ins/Object/seal/seal-date.js b/test/built-ins/Object/seal/seal-date.js index e4ccbc9bc8..fb18a79641 100644 --- a/test/built-ins/Object/seal/seal-date.js +++ b/test/built-ins/Object/seal/seal-date.js @@ -33,4 +33,4 @@ info: | ---*/ -Object.seal(new Date()); +Object.seal(new Date(0)); diff --git a/test/built-ins/Promise/all/invoke-then-error-close.js b/test/built-ins/Promise/all/invoke-then-error-close.js index 72c48f48d3..93f3509728 100644 --- a/test/built-ins/Promise/all/invoke-then-error-close.js +++ b/test/built-ins/Promise/all/invoke-then-error-close.js @@ -42,9 +42,11 @@ iter[Symbol.iterator] = function() { }; }; -promise.then = function() { - throw new Test262Error(); -}; +Object.defineProperty(promise, "then", { + value: function() { + throw new Test262Error(); + } +}); Promise.all(iter); diff --git a/test/built-ins/Promise/all/invoke-then-error-reject.js b/test/built-ins/Promise/all/invoke-then-error-reject.js index 36ac1a6f5c..7214e2ef3c 100644 --- a/test/built-ins/Promise/all/invoke-then-error-reject.js +++ b/test/built-ins/Promise/all/invoke-then-error-reject.js @@ -28,9 +28,11 @@ flags: [async] var promise = new Promise(function() {}); var error = new Test262Error(); -promise.then = function() { - throw error; -}; +Object.defineProperty(promise, "then", { + value: function() { + throw error; + } +}); Promise.all([promise]).then(function() { throw new Test262Error('The promise should be rejected'); diff --git a/test/language/expressions/addition/S11.6.1_A2.2_T2.js b/test/language/expressions/addition/S11.6.1_A2.2_T2.js index 690b67e7ca..cb685361f4 100644 --- a/test/language/expressions/addition/S11.6.1_A2.2_T2.js +++ b/test/language/expressions/addition/S11.6.1_A2.2_T2.js @@ -8,25 +8,25 @@ description: If Type(value) is Date object, evaluate ToPrimitive(value, String) ---*/ //CHECK#1 -var date = new Date(); +var date = new Date(0); if (date + date !== date.toString() + date.toString()) { - throw new Test262Error('#1: var date = new Date(); date + date === date.toString() + date.toString(). Actual: ' + (date + date)); + throw new Test262Error('#1: var date = new Date(0); date + date === date.toString() + date.toString(). Actual: ' + (date + date)); } //CHECK#2 -var date = new Date(); +var date = new Date(0); if (date + 0 !== date.toString() + "0") { - throw new Test262Error('#2: var date = new Date(); date + 0 === date.toString() + "0". Actual: ' + (date + 0)); + throw new Test262Error('#2: var date = new Date(0); date + 0 === date.toString() + "0". Actual: ' + (date + 0)); } //CHECK#3 -var date = new Date(); +var date = new Date(0); if (date + true !== date.toString() + "true") { - throw new Test262Error('#3: var date = new Date(); date + true === date.toString() + "true". Actual: ' + (date + true)); + throw new Test262Error('#3: var date = new Date(0); date + true === date.toString() + "true". Actual: ' + (date + true)); } //CHECK#4 -var date = new Date(); +var date = new Date(0); if (date + new Object() !== date.toString() + "[object Object]") { - throw new Test262Error('#4: var date = new Date(); date + new Object() === date.toString() + "[object Object]". Actual: ' + (date + new Object())); + throw new Test262Error('#4: var date = new Date(0); date + new Object() === date.toString() + "[object Object]". Actual: ' + (date + new Object())); } diff --git a/test/language/expressions/class/subclass-builtins/subclass-Date.js b/test/language/expressions/class/subclass-builtins/subclass-Date.js index e22fbce496..7c37351dbf 100644 --- a/test/language/expressions/class/subclass-builtins/subclass-Date.js +++ b/test/language/expressions/class/subclass-builtins/subclass-Date.js @@ -2,13 +2,13 @@ // - src/subclass-builtins/Date.case // - src/subclass-builtins/default/expression.template /*--- -description: new SubDate() instanceof Date (Subclass instanceof Heritage) +description: new SubDate(0) instanceof Date (Subclass instanceof Heritage) flags: [generated] ---*/ const Subclass = class extends Date {} -const sub = new Subclass(); +const sub = new Subclass(0); assert(sub instanceof Subclass); assert(sub instanceof Date); diff --git a/test/language/expressions/tagged-template/template-object-template-map.js b/test/language/expressions/tagged-template/template-object-template-map.js index 4fec103c8d..6dc4f734ec 100644 --- a/test/language/expressions/tagged-template/template-object-template-map.js +++ b/test/language/expressions/tagged-template/template-object-template-map.js @@ -15,8 +15,9 @@ info: | ---*/ var expect; var cache = []; +var site = 1; function sameSite() { - tag`${Math.random()}`; + tag`${site++}`; } function tag(parameter) { diff --git a/test/language/expressions/typeof/built-in-exotic-objects-no-call.js b/test/language/expressions/typeof/built-in-exotic-objects-no-call.js index 0aab119170..498e0597bc 100644 --- a/test/language/expressions/typeof/built-in-exotic-objects-no-call.js +++ b/test/language/expressions/typeof/built-in-exotic-objects-no-call.js @@ -56,9 +56,9 @@ assert.sameValue( ); assert.sameValue( - typeof new Date(), + typeof new Date(0), "object", - 'typeof new Date() === "object"' + 'typeof new Date(0) === "object"' ); assert.sameValue( diff --git a/test/language/statements/class/subclass-builtins/subclass-Date.js b/test/language/statements/class/subclass-builtins/subclass-Date.js index 098ecf2172..a08d3d4ad0 100644 --- a/test/language/statements/class/subclass-builtins/subclass-Date.js +++ b/test/language/statements/class/subclass-builtins/subclass-Date.js @@ -2,13 +2,13 @@ // - src/subclass-builtins/Date.case // - src/subclass-builtins/default/statement.template /*--- -description: new SubDate() instanceof Date (Subclass instanceof Heritage) +description: new SubDate(0) instanceof Date (Subclass instanceof Heritage) flags: [generated] ---*/ class Subclass extends Date {} -const sub = new Subclass(); +const sub = new Subclass(0); assert(sub instanceof Subclass); assert(sub instanceof Date); diff --git a/test/language/statements/class/subclass/builtin-objects/Date/super-must-be-called.js b/test/language/statements/class/subclass/builtin-objects/Date/super-must-be-called.js index 4935b1e846..a5148035d5 100644 --- a/test/language/statements/class/subclass/builtin-objects/Date/super-must-be-called.js +++ b/test/language/statements/class/subclass/builtin-objects/Date/super-must-be-called.js @@ -23,13 +23,13 @@ class D extends Date { } assert.throws(ReferenceError, function() { - new D(); + new D(0); }); class D2 extends Date { - constructor() { - super(); + constructor(d) { + super(d); } } -new D2(); +new D2(0);