js/src/tests/ecma_6/Math/log2-exact.js

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:b450d15fa017
1 // Properties of Math.log2 that are guaranteed by the spec.
2
3 // If x is NaN, the result is NaN.
4 assertEq(Math.log2(NaN), NaN);
5
6 // If x is less than 0, the result is NaN.
7 assertEq(Math.log2(-1e-10), NaN);
8 assertEq(Math.log2(-1e-5), NaN);
9 assertEq(Math.log2(-1e-1), NaN);
10 assertEq(Math.log2(-Number.MIN_VALUE), NaN);
11 assertEq(Math.log2(-Number.MAX_VALUE), NaN);
12 assertEq(Math.log2(-Infinity), NaN);
13
14 for (var i = -1; i > -10; i--)
15 assertEq(Math.log2(i), NaN);
16
17 // If x is +0, the result is −∞.
18 assertEq(Math.log2(+0), -Infinity);
19
20 // If x is −0, the result is −∞.
21 assertEq(Math.log2(-0), -Infinity);
22
23 // If x is 1, the result is +0.
24 assertEq(Math.log2(1), +0);
25
26 // If x is +∞, the result is +∞.
27 assertEq(Math.log2(Infinity), Infinity);
28
29
30 reportCompare(0, 0, 'ok');

mercurial