Fix runtime error Date object (#4914)
This patch fixes #4704 JerryScript-DCO-1.0-Signed-off-by: Daniel Batiz daniel.batiz@h-lab.eu
This commit is contained in:
@@ -104,3 +104,17 @@ assert (new Date(-1, -1, -1, -1, -1).getHours() === 22);
|
||||
assert (new Date(-1, -1, -1, -1, -1, -1).getMinutes() === 58);
|
||||
assert (new Date(-1, -1, -1, -1, -1, -1, -1).getSeconds() === 58);
|
||||
assert (new Date(-1, -1, -1, -1, -1, -1, -1, -1).getMilliseconds() === 999);
|
||||
|
||||
/* 6. test case */
|
||||
assert (isNaN(new Date(20000000, 0).getFullYear()));
|
||||
assert (new Date(0, 0).getFullYear() === 1900);
|
||||
assert (new Date(1.2, 0).getFullYear() === 1901);
|
||||
assert((new Date(8640000000000000).getFullYear()) == 275760);
|
||||
assert(isNaN(new Date(8640000000000001).getFullYear()));
|
||||
assert((new Date(-271821, 3, 21).getFullYear()) == -271821);
|
||||
assert(isNaN(new Date(1970, 0, -100000000).getFullYear()));
|
||||
assert(new Date(1970, 0, -100000000 + 1).getFullYear() == -271821);
|
||||
assert(isNaN(new Date(1970, 0, 100000000 + 2).getFullYear()));
|
||||
assert(new Date(1970, 0, 100000000).getFullYear() == 275760);
|
||||
assert(isNaN(new Date(4294967295, -51536298411).getFullYear()));
|
||||
assert((new Date(4294967295, -51536300000).getFullYear()) == 275628);
|
||||
|
||||
@@ -181,3 +181,12 @@ assert (isNaN(Date.parse("Sat, 13 Sep 275760 00:00:01 GMT"))) // 864000000000100
|
||||
// Non standard date formats
|
||||
assert (Date.parse("2000/01/01 12:12Z") == 946728720000)
|
||||
assert (Date.parse("1991-07-13 16:04Z") == 679421040000)
|
||||
|
||||
assert(Date.parse('Tue, 13 Sep 275760 00:00:00 GMT') == 8640000000000000);
|
||||
assert(isNaN(Date.parse('Tue, 14 Sep 275760 00:00:00 GMT')));
|
||||
assert(Date.parse("Tue, 20 Apr -271821 00:00:00 GMT") == -8640000000000000);
|
||||
assert(isNaN(Date.parse("Tue, 19 Apr -271821 00:00:00 GMT")));
|
||||
assert(Date.parse('9999') == 253370764800000);
|
||||
assert(isNaN(Date.parse('10000')));
|
||||
assert(Date.parse('-100000') == -3217862419200000);
|
||||
assert(isNaN(Date.parse('-99999')));
|
||||
|
||||
@@ -241,3 +241,22 @@ assert (isNaN (d.setMonth()));
|
||||
assert (isNaN (d.setUTCMonth()));
|
||||
assert (isNaN (d.setFullYear()));
|
||||
assert (isNaN (d.setUTCFullYear()));
|
||||
|
||||
var date = new Date('1975-08-19');
|
||||
var date2 = new Date('1975-08-19');
|
||||
var date3 = new Date('1975-08-19');
|
||||
var date4 = new Date('1975-08-19');
|
||||
var date5 = new Date('1975-08-19');
|
||||
var date6 = new Date('1975-08-19');
|
||||
date.setFullYear(275760, 8, 13);
|
||||
date2.setFullYear(275760, 8, 14);
|
||||
date3.setFullYear(-271820, 6570968, 13);
|
||||
date4.setFullYear(-271820, 6570968, 14);
|
||||
date5.setFullYear(-271821);
|
||||
date6.setFullYear(-271822);
|
||||
assert(date.getFullYear() == 275760);
|
||||
assert(isNaN(date2.getFullYear()));
|
||||
assert(date3.getFullYear() == 275760);
|
||||
assert(isNaN(date4.getFullYear()));
|
||||
assert(date5.getFullYear() == -271821);
|
||||
assert(isNaN(date6.getFullYear()));
|
||||
|
||||
Reference in New Issue
Block a user