diff --git a/test/built-ins/Math/fround/Math.fround_Zero.js b/test/built-ins/Math/fround/Math.fround_Zero.js index b6864fe4216d67244d464af2e2365b4806d89fd7..b4c56fbd4c3853bbb97e8e6dfdf8405326dc1a15 100644 --- a/test/built-ins/Math/fround/Math.fround_Zero.js +++ b/test/built-ins/Math/fround/Math.fround_Zero.js @@ -4,7 +4,8 @@ /*--- es6id: 20.2.2.17 author: Ryan Lewis -description: Math.fround should return 0 if called with 0. +description: Math.fround should return arg if called with 0 or -0. ---*/ assert.sameValue(Math.fround(0), 0, 'Math.fround(0)'); +assert.sameValue(Math.fround(-0), -0, 'Math.fround(-0)'); diff --git a/test/built-ins/Math/fround/value-convertion.js b/test/built-ins/Math/fround/value-convertion.js new file mode 100644 index 0000000000000000000000000000000000000000..05340553cabb82093c2ae98750f6d096b3c2122d --- /dev/null +++ b/test/built-ins/Math/fround/value-convertion.js @@ -0,0 +1,26 @@ +// Copyright (C) 2016 The V8 Project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +es6id: 20.2.2.17 +esid: sec-math.fround +description: > + Convert to binary32 format and than to binary64 format +info: | + Math.fround ( x ) + + [...] + 3. Let x32 be the result of converting x to a value in IEEE 754-2008 binary32 + format using roundTiesToEven. + 4. Let x64 be the result of converting x32 to a value in IEEE 754-2008 + binary64 format. + 5. Return the ECMAScript Number value corresponding to x64. +---*/ + +assert.sameValue(Math.fround(4294967295), 4294967296, "2**32-1"); +assert.sameValue(Math.fround(4294967296), 4294967296, "2**32"); +assert.sameValue(Math.fround(4294967297), 4294967296, "2**32+1"); + +assert.sameValue(Math.fround(0.1), 0.10000000149011612, "0.1"); +assert.sameValue(Math.fround(0.2), 0.20000000298023224, "0.2"); +assert.sameValue(Math.fround(0.5), 0.5, "0.5");