S15.9.3.1_A5_T4.js (1618B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 /*--- 4 info: | 5 The [[Value]] property of the newly constructed object 6 is set by following steps: 7 8. If Result(1) is not NaN and 0 <= ToInteger(Result(1)) <= 99, Result(8) is 8 1900+ToInteger(Result(1)); otherwise, Result(8) is Result(1) 9 9. Compute MakeDay(Result(8), Result(2), Result(3)) 10 10. Compute MakeTime(Result(4), Result(5), Result(6), Result(7)) 11 11. Compute MakeDate(Result(9), Result(10)) 12 12. Set the [[Value]] property of the newly constructed object to 13 TimeClip(UTC(Result(11))) 14 esid: sec-date-year-month-date-hours-minutes-seconds-ms 15 description: 5 arguments, (year, month, date, hours, minutes) 16 includes: [assertRelativeDateMs.js] 17 ---*/ 18 19 assertRelativeDateMs(new Date(1899, 11, 31, 23, 59), -2208988860000); 20 21 assertRelativeDateMs(new Date(1899, 12, 1, 0, 0), -2208988800000); 22 23 assertRelativeDateMs(new Date(1900, 0, 1, 0, 0), -2208988800000); 24 25 assertRelativeDateMs(new Date(1969, 11, 31, 23, 59), -60000); 26 27 assertRelativeDateMs(new Date(1969, 12, 1, 0, 0), 0); 28 29 assertRelativeDateMs(new Date(1970, 0, 1, 0, 0), 0); 30 31 assertRelativeDateMs(new Date(1999, 11, 31, 23, 59), 946684740000); 32 33 assertRelativeDateMs(new Date(1999, 12, 1, 0, 0), 946684800000); 34 35 assertRelativeDateMs(new Date(2000, 0, 1, 0, 0), 946684800000); 36 37 assertRelativeDateMs(new Date(2099, 11, 31, 23, 59), 4102444740000); 38 39 assertRelativeDateMs(new Date(2099, 12, 1, 0, 0), 4102444800000); 40 41 assertRelativeDateMs(new Date(2100, 0, 1, 0, 0), 4102444800000); 42 43 reportCompare(0, 0);