diff options
Diffstat (limited to 'js/src/tests/ecma_6/Math/atanh-exact.js')
-rw-r--r-- | js/src/tests/ecma_6/Math/atanh-exact.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/js/src/tests/ecma_6/Math/atanh-exact.js b/js/src/tests/ecma_6/Math/atanh-exact.js new file mode 100644 index 000000000..f49bdb1ac --- /dev/null +++ b/js/src/tests/ecma_6/Math/atanh-exact.js @@ -0,0 +1,35 @@ +// Properties of Math.atanh that are guaranteed by the spec. + +// If x is NaN, the result is NaN. +assertEq(Math.atanh(NaN), NaN); + +// If x is less than −1, the result is NaN. +assertEq(Math.atanh(-ONE_PLUS_EPSILON), NaN); +assertEq(Math.atanh(-Number.MAX_VALUE), NaN); +assertEq(Math.atanh(-Infinity), NaN); + +for (var i = -5; i < -1; i += 0.1) + assertEq(Math.atanh(i), NaN); + +// If x is greater than 1, the result is NaN. +assertEq(Math.atanh(ONE_PLUS_EPSILON), NaN); +assertEq(Math.atanh(Number.MAX_VALUE), NaN); +assertEq(Math.atanh(Infinity), NaN); + +for (var i = +5; i > +1; i -= 0.1) + assertEq(Math.atanh(i), NaN); + +// If x is −1, the result is −∞. +assertEq(Math.atanh(-1), -Infinity); + +// If x is +1, the result is +∞. +assertEq(Math.atanh(+1), Infinity); + +// If x is +0, the result is +0. +assertEq(Math.atanh(+0), +0); + +// If x is −0, the result is −0. +assertEq(Math.atanh(-0), -0); + + +reportCompare(0, 0, "ok"); |