summaryrefslogtreecommitdiff
path: root/test/built-ins/Math/pow/applying-the-exp-operator_A23.js
blob: 826a4305bb7adb7acdf450690e3fc2c52295ddf1 (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
// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
description: If base < 0 and base is finite and exponent is finite and exponent is not an integer, the result is NaN.
esid: sec-applying-the-exp-operator
---*/


var exponent = new Array();
var base = new Array();
base[0] = -1.7976931348623157E308; //largest (by module) finite number
base[1] = -Math.PI;
base[2] = -1;
base[3] = -0.000000000000001;
var basenum = 4;

exponent[0] = -Math.PI;
exponent[1] = -Math.E;
exponent[2] = -1.000000000000001;
exponent[3] = -0.000000000000001;
exponent[4] = 0.000000000000001;
exponent[5] = 1.000000000000001;
exponent[6] = Math.E;
exponent[7] = Math.PI;

var exponentnum = 8;

for (var i = 0; i < basenum; i++) {
	for (var j = 0; j < exponentnum; j++) {
    assert.sameValue(
      Math.pow(base[i], exponent[j]),
      NaN,
      "(" + base[i] + ", " + exponent[j] + ")"
    );
  }
}