diff options
Diffstat (limited to 'js/src/tests/ecma/Math/15.8.2.6.js')
-rw-r--r-- | js/src/tests/ecma/Math/15.8.2.6.js | 198 |
1 files changed, 198 insertions, 0 deletions
diff --git a/js/src/tests/ecma/Math/15.8.2.6.js b/js/src/tests/ecma/Math/15.8.2.6.js new file mode 100644 index 000000000..1385e63e5 --- /dev/null +++ b/js/src/tests/ecma/Math/15.8.2.6.js @@ -0,0 +1,198 @@ +/* -*- tab-width: 2; indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + +/** + File Name: 15.8.2.6.js + ECMA Section: 15.8.2.6 Math.ceil(x) + Description: return the smallest number value that is not less than the + argument and is equal to a mathematical integer. if the + number is already an integer, return the number itself. + special cases: + - if x is NaN return NaN + - if x = +0 return +0 + - if x = 0 return -0 + - if x = Infinity return Infinity + - if x = -Infinity return -Infinity + - if ( -1 < x < 0 ) return -0 + also: + - the value of Math.ceil(x) == -Math.ceil(-x) + Author: christine@netscape.com + Date: 7 july 1997 +*/ +var SECTION = "15.8.2.6"; +var VERSION = "ECMA_1"; +startTest(); +var TITLE = "Math.ceil(x)"; + +writeHeaderToLog( SECTION + " "+ TITLE); + +new TestCase( SECTION, + "Math.ceil.length", + 1, + Math.ceil.length ); + +new TestCase( SECTION, + "Math.ceil(NaN)", + Number.NaN, + Math.ceil(Number.NaN) ); + +new TestCase( SECTION, + "Math.ceil(null)", + 0, + Math.ceil(null) ); + +new TestCase( SECTION, + "Math.ceil()", + Number.NaN, + Math.ceil() ); + +new TestCase( SECTION, + "Math.ceil(void 0)", + Number.NaN, + Math.ceil(void 0) ); + +new TestCase( SECTION, + "Math.ceil('0')", + 0, + Math.ceil('0') ); + +new TestCase( SECTION, + "Math.ceil('-0')", + -0, + Math.ceil('-0') ); + +new TestCase( SECTION, + "Infinity/Math.ceil('0')", + Infinity, + Infinity/Math.ceil('0')); + +new TestCase( SECTION, + "Infinity/Math.ceil('-0')", + -Infinity, + Infinity/Math.ceil('-0')); + +new TestCase( SECTION, + "Math.ceil(0)", + 0, + Math.ceil(0) ); + +new TestCase( SECTION, + "Math.ceil(-0)", + -0, + Math.ceil(-0) ); + +new TestCase( SECTION, + "Infinity/Math.ceil(0)", + Infinity, + Infinity/Math.ceil(0)); + +new TestCase( SECTION, + "Infinity/Math.ceil(-0)", + -Infinity, + Infinity/Math.ceil(-0)); + + +new TestCase( SECTION, + "Math.ceil(Infinity)", + Number.POSITIVE_INFINITY, + Math.ceil(Number.POSITIVE_INFINITY) ); + +new TestCase( SECTION, + "Math.ceil(-Infinity)", + Number.NEGATIVE_INFINITY, + Math.ceil(Number.NEGATIVE_INFINITY) ); + +new TestCase( SECTION, + "Math.ceil(-Number.MIN_VALUE)", + -0, + Math.ceil(-Number.MIN_VALUE) ); + +new TestCase( SECTION, + "Infinity/Math.ceil(-Number.MIN_VALUE)", + -Infinity, + Infinity/Math.ceil(-Number.MIN_VALUE) ); + +new TestCase( SECTION, + "Math.ceil(1)", + 1, + Math.ceil(1) ); + +new TestCase( SECTION, + "Math.ceil(-1)", + -1, + Math.ceil(-1) ); + +new TestCase( SECTION, + "Math.ceil(-0.9)", + -0, + Math.ceil(-0.9) ); + +new TestCase( SECTION, + "Infinity/Math.ceil(-0.9)", + -Infinity, + Infinity/Math.ceil(-0.9) ); + +new TestCase( SECTION, + "Math.ceil(0.9 )", + 1, + Math.ceil( 0.9) ); + +new TestCase( SECTION, + "Math.ceil(-1.1)", + -1, + Math.ceil( -1.1)); + +new TestCase( SECTION, + "Math.ceil( 1.1)", + 2, + Math.ceil( 1.1)); + +new TestCase( SECTION, + "Math.ceil(Infinity)", + -Math.floor(-Infinity), + Math.ceil(Number.POSITIVE_INFINITY) ); + +new TestCase( SECTION, + "Math.ceil(-Infinity)", + -Math.floor(Infinity), + Math.ceil(Number.NEGATIVE_INFINITY) ); + +new TestCase( SECTION, + "Math.ceil(-Number.MIN_VALUE)", + -Math.floor(Number.MIN_VALUE), + Math.ceil(-Number.MIN_VALUE) ); + +new TestCase( SECTION, + "Math.ceil(1)", + -Math.floor(-1), + Math.ceil(1) ); + +new TestCase( SECTION, + "Math.ceil(-1)", + -Math.floor(1), + Math.ceil(-1) ); + +new TestCase( SECTION, + "Math.ceil(-0.9)", + -Math.floor(0.9), + Math.ceil(-0.9) ); + +new TestCase( SECTION, + "Math.ceil(0.9 )", + -Math.floor(-0.9), + Math.ceil( 0.9) ); + +new TestCase( SECTION, + "Math.ceil(-1.1)", + -Math.floor(1.1), + Math.ceil( -1.1)); + +new TestCase( SECTION, + "Math.ceil( 1.1)", + -Math.floor(-1.1), + Math.ceil( 1.1)); + +test(); |