js/src/tests/ecma_6/Math/sign.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/tests/ecma_6/Math/sign.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,34 @@
     1.4 +// If x is NaN, the result is NaN.
     1.5 +assertEq(Math.sign(NaN), NaN);
     1.6 +
     1.7 +// If x is −0, the result is −0.
     1.8 +assertEq(Math.sign(-0), -0);
     1.9 +
    1.10 +// If x is +0, the result is +0.
    1.11 +assertEq(Math.sign(+0), +0);
    1.12 +
    1.13 +// If x is negative and not −0, the result is −1.
    1.14 +assertEq(Math.sign(-Number.MIN_VALUE), -1);
    1.15 +assertEq(Math.sign(-Number.MAX_VALUE), -1);
    1.16 +assertEq(Math.sign(-Infinity), -1);
    1.17 +
    1.18 +for (var i = -1; i > -20; i--)
    1.19 +    assertEq(Math.sign(i), -1);
    1.20 +
    1.21 +assertEq(Math.sign(-1e-300), -1);
    1.22 +assertEq(Math.sign(-0x80000000), -1);
    1.23 +
    1.24 +// If x is positive and not +0, the result is +1.
    1.25 +assertEq(Math.sign(Number.MIN_VALUE), +1);
    1.26 +assertEq(Math.sign(Number.MAX_VALUE), +1);
    1.27 +assertEq(Math.sign(Infinity), +1);
    1.28 +
    1.29 +for (var i = 1; i < 20; i++)
    1.30 +    assertEq(Math.sign(i), +1);
    1.31 +
    1.32 +assertEq(Math.sign(+1e-300), +1);
    1.33 +assertEq(Math.sign(0x80000000), +1);
    1.34 +assertEq(Math.sign(0xffffffff), +1);
    1.35 +
    1.36 +
    1.37 +reportCompare(0, 0, "ok");

mercurial