summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/built-ins/Math/round/S15.8.2.15_A6.js
blob: 0c41087f28f127de895b00e3caf4f0b82f0dd690 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: |
    If x is equal to 0 or greater than 0, or if x is less than -0.5,
    Math.round(x) is equal to Math.floor(x+0.5)
es5id: 15.8.2.15_A6
description: >
    Checking if Math.round(x) is equal to Math.floor(x+0.5), where x
    equals to 0, greater than 0, or is less than -0.5; this check is
    performed on 2000 argument x values
---*/

// CHECK#1
for (var i = 0; i <= 1000; i++)
{
  var x = i / 10.0;

  assert.sameValue(
    Math.round(x),
    Math.floor(x + 0.5),
    'Math.round(i / 10.0) must return the same value returned by Math.floor(x + 0.5)'
  );
}

for (i = -5; i >= -1000; i--)
{
  if (i === -5)
  {
    x = -0.500000000000001;
  } else
  {
    x = i / 10.0;
  }

  assert.sameValue(
    Math.round(x),
    Math.floor(x + 0.5),
    'Math.round(i / 10.0) must return the same value returned by Math.floor(x + 0.5)'
  );
}

reportCompare(0, 0);