|
1 /* |
|
2 * Any copyright is dedicated to the Public Domain. |
|
3 * http://creativecommonn.org/licenses/publicdomain/ |
|
4 */ |
|
5 |
|
6 var BUGNUMBER = 747197; |
|
7 var summary = "TimeClip behavior for very large numbers"; |
|
8 |
|
9 print(BUGNUMBER + ": " + summary); |
|
10 |
|
11 /************** |
|
12 * BEGIN TEST * |
|
13 **************/ |
|
14 |
|
15 function addToLimit(n) { return 8.64e15 + n; } |
|
16 |
|
17 assertEq(8.64e15 === addToLimit(0.0), true); |
|
18 assertEq(8.64e15 === addToLimit(0.5), true); |
|
19 assertEq(8.64e15 === addToLimit(0.5000000000000001), false); |
|
20 |
|
21 var times = |
|
22 [Number.MAX_VALUE, |
|
23 -Number.MAX_VALUE, |
|
24 Infinity, |
|
25 -Infinity, |
|
26 addToLimit(0.5000000000000001), |
|
27 -addToLimit(0.5000000000000001)]; |
|
28 |
|
29 for (var i = 0, len = times.length; i < len; i++) |
|
30 { |
|
31 var d = new Date(); |
|
32 assertEq(d.setTime(times[i]), NaN, "times[" + i + "]"); |
|
33 assertEq(d.getTime(), NaN); |
|
34 assertEq(d.valueOf(), NaN); |
|
35 } |
|
36 |
|
37 /******************************************************************************/ |
|
38 |
|
39 if (typeof reportCompare === "function") |
|
40 reportCompare(true, true); |
|
41 |
|
42 print("Tests complete"); |