michael@0: michael@0: assertEq(Math.sqrt(-Infinity), NaN); michael@0: assertEq(Math.sqrt(-3.14), NaN); michael@0: assertEq(Math.sqrt(-2), NaN); michael@0: assertEq(Math.sqrt(-0), -0); michael@0: assertEq(Math.sqrt(0), 0); michael@0: assertEq(Math.sqrt(2), Math.SQRT2); michael@0: assertEq(Math.sqrt(49), 7); michael@0: assertEq(Math.sqrt(Infinity), Infinity); michael@0: michael@0: /* Inferred as sqrt(double). */ michael@0: function sqrt1(x) { michael@0: return Math.sqrt(x); michael@0: } michael@0: assertEq(sqrt1(NaN), NaN); michael@0: assertEq(sqrt1(-Infinity), NaN); michael@0: assertEq(sqrt1(Infinity), Infinity); michael@0: assertEq(sqrt1(-0), -0); michael@0: assertEq(sqrt1(2), Math.SQRT2); michael@0: assertEq(sqrt1(16), 4); michael@0: michael@0: /* Inferred as sqrt(int). */ michael@0: function sqrt2(x) { michael@0: return Math.sqrt(x); michael@0: } michael@0: assertEq(sqrt2(4), 2); michael@0: assertEq(sqrt2(169), 13); michael@0: assertEq(sqrt2(0), 0); michael@0: