mirror of https://github.com/tc39/test262.git
Add tests for Date.prototype.getYear
This commit is contained in:
parent
1a66e812c8
commit
37b3e7c080
|
@ -1,11 +0,0 @@
|
|||
// Copyright 2009 the Sputnik authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
info: Check type of various properties
|
||||
es5id: B.2.4
|
||||
description: Checking properties of the Date object (getYear)
|
||||
---*/
|
||||
|
||||
if (typeof Date.prototype.getYear !== "function") $ERROR('#1: typeof Date.prototype.getYear === "function". Actual: ' + (typeof Date.prototype.getYear ));
|
||||
if (typeof Date.prototype['getYear'] !== "function") $ERROR('#2: typeof Date.prototype["getYear"] === "function". Actual: ' + (typeof Date.prototype["getYear"] ));
|
|
@ -0,0 +1,15 @@
|
|||
// Copyright (C) 2016 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
/*---
|
||||
esid: sec-date.prototype.getyear
|
||||
es6id: B.2.4.1
|
||||
es5id: B.2.4
|
||||
description: NaN time value
|
||||
info: |
|
||||
1. Let t be ? thisTimeValue(this value).
|
||||
2. If t is NaN, return NaN.
|
||||
---*/
|
||||
|
||||
var date = new Date({});
|
||||
|
||||
assert.sameValue(date.getYear(), NaN);
|
|
@ -0,0 +1,41 @@
|
|||
// Copyright (C) 2016 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
/*---
|
||||
esid: sec-date.prototype.getyear
|
||||
es6id: B.2.4.1
|
||||
es5id: B.2.4
|
||||
description: >
|
||||
Return value for objects with numeric value in [[DateValue]] internal slot
|
||||
info: |
|
||||
1. Let t be ? thisTimeValue(this value).
|
||||
2. If t is NaN, return NaN.
|
||||
3. Return YearFromTime(LocalTime(t)) - 1900.
|
||||
---*/
|
||||
|
||||
assert.sameValue(new Date(1899, 0).getYear(), -1, '1899: first millisecond');
|
||||
assert.sameValue(
|
||||
new Date(1899, 11, 31, 23, 59, 59, 999).getYear(),
|
||||
-1,
|
||||
'1899: final millisecond'
|
||||
);
|
||||
|
||||
assert.sameValue(new Date(1900, 0).getYear(), 0, '1900: first millisecond');
|
||||
assert.sameValue(
|
||||
new Date(1900, 11, 31, 23, 59, 59, 999).getYear(),
|
||||
0,
|
||||
'1900: final millisecond'
|
||||
);
|
||||
|
||||
assert.sameValue(new Date(1970, 0).getYear(), 70, '1970: first millisecond');
|
||||
assert.sameValue(
|
||||
new Date(1970, 11, 31, 23, 59, 59, 999).getYear(),
|
||||
70,
|
||||
'1970: final millisecond'
|
||||
);
|
||||
|
||||
assert.sameValue(new Date(2000, 0).getYear(), 100, '2000: first millisecond');
|
||||
assert.sameValue(
|
||||
new Date(2000, 11, 31, 23, 59, 59, 999).getYear(),
|
||||
100,
|
||||
'2000: final millisecond'
|
||||
);
|
|
@ -0,0 +1,26 @@
|
|||
// Copyright (C) 2016 the V8 project authors. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
/*---
|
||||
esid: sec-date.prototype.getyear
|
||||
es6id: B.2.4.1
|
||||
es5id: B.2.4
|
||||
description: Behavior when `this` value has no [[DateValue]] internal slot
|
||||
info: |
|
||||
1. Let t be ? thisTimeValue(this value).
|
||||
---*/
|
||||
|
||||
var getYear = Date.prototype.getYear;
|
||||
|
||||
assert.sameValue(typeof getYear, 'function');
|
||||
|
||||
assert.throws(TypeError, function() {
|
||||
getYear.call({});
|
||||
}, 'object');
|
||||
|
||||
assert.throws(TypeError, function() {
|
||||
getYear.call(undefined);
|
||||
}, 'undefined');
|
||||
|
||||
assert.throws(TypeError, function() {
|
||||
getYear.call(null);
|
||||
}, 'null');
|
Loading…
Reference in New Issue