tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

15.8.2.17.js (3356B)


      1 /* -*- tab-width: 2; indent-tabs-mode: nil; js-indent-level: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 
      7 /**
      8   File Name:          15.8.2.17.js
      9   ECMA Section:       15.8.2.17  Math.sqrt(x)
     10   Description:        return an approximation to the squareroot of the argument.
     11   special cases:
     12   -   if x is NaN         return NaN
     13   -   if x < 0            return NaN
     14   -   if x == 0           return 0
     15   -   if x == -0          return -0
     16   -   if x == Infinity    return Infinity
     17   Author:             christine@netscape.com
     18   Date:               7 july 1997
     19 */
     20 
     21 var SECTION = "15.8.2.17";
     22 var TITLE   = "Math.sqrt(x)";
     23 
     24 writeHeaderToLog( SECTION + " "+ TITLE);
     25 
     26 new TestCase(
     27       "Math.sqrt.length",
     28       1,
     29       Math.sqrt.length );
     30 
     31 new TestCase(
     32       "Math.sqrt()",
     33       Number.NaN,
     34       Math.sqrt() );
     35 
     36 new TestCase(
     37       "Math.sqrt(void 0)",
     38       Number.NaN,
     39       Math.sqrt(void 0) );
     40 
     41 new TestCase(
     42       "Math.sqrt(null)",
     43       0,
     44       Math.sqrt(null) );
     45 
     46 new TestCase(
     47       "Math.sqrt(true)",
     48       1,
     49       Math.sqrt(1) );
     50 
     51 new TestCase(
     52       "Math.sqrt(false)",
     53       0,
     54       Math.sqrt(false) );
     55 
     56 new TestCase(
     57       "Math.sqrt('225')",
     58       15,
     59       Math.sqrt('225') );
     60 
     61 new TestCase(
     62       "Math.sqrt(NaN)",
     63       Number.NaN,
     64       Math.sqrt(Number.NaN) );
     65 
     66 new TestCase(
     67       "Math.sqrt(-Infinity)",
     68       Number.NaN,
     69       Math.sqrt(Number.NEGATIVE_INFINITY));
     70 
     71 new TestCase(
     72       "Math.sqrt(-1)",
     73       Number.NaN,
     74       Math.sqrt(-1));
     75 
     76 new TestCase(
     77       "Math.sqrt(-0.5)",
     78       Number.NaN,
     79       Math.sqrt(-0.5));
     80 
     81 new TestCase(
     82       "Math.sqrt(0)",
     83       0,
     84       Math.sqrt(0));
     85 
     86 new TestCase(
     87       "Math.sqrt(-0)",
     88       -0,
     89       Math.sqrt(-0));
     90 
     91 new TestCase(
     92       "Infinity/Math.sqrt(-0)",
     93       -Infinity,
     94       Infinity/Math.sqrt(-0) );
     95 
     96 new TestCase(
     97       "Math.sqrt(Infinity)",
     98       Number.POSITIVE_INFINITY,
     99       Math.sqrt(Number.POSITIVE_INFINITY));
    100 
    101 new TestCase(
    102       "Math.sqrt(1)",
    103       1,
    104       Math.sqrt(1));
    105 
    106 new TestCase(
    107       "Math.sqrt(2)",
    108       Math.SQRT2,
    109       Math.sqrt(2));
    110 
    111 new TestCase(
    112       "Math.sqrt(0.5)",
    113       Math.SQRT1_2,
    114       Math.sqrt(0.5));
    115 
    116 new TestCase(
    117       "Math.sqrt(4)",
    118       2,
    119       Math.sqrt(4));
    120 
    121 new TestCase(
    122       "Math.sqrt(9)",
    123       3,
    124       Math.sqrt(9));
    125 
    126 new TestCase(
    127       "Math.sqrt(16)",
    128       4,
    129       Math.sqrt(16));
    130 
    131 new TestCase(
    132       "Math.sqrt(25)",
    133       5,
    134       Math.sqrt(25));
    135 
    136 new TestCase(
    137       "Math.sqrt(36)",
    138       6,
    139       Math.sqrt(36));
    140 
    141 new TestCase(
    142       "Math.sqrt(49)",
    143       7,
    144       Math.sqrt(49));
    145 
    146 new TestCase(
    147       "Math.sqrt(64)",
    148       8,
    149       Math.sqrt(64));
    150 
    151 new TestCase(
    152       "Math.sqrt(256)",
    153       16,
    154       Math.sqrt(256));
    155 
    156 new TestCase(
    157       "Math.sqrt(10000)",
    158       100,
    159       Math.sqrt(10000));
    160 
    161 new TestCase(
    162       "Math.sqrt(65536)",
    163       256,
    164       Math.sqrt(65536));
    165 
    166 new TestCase(
    167       "Math.sqrt(0.09)",
    168       0.3,
    169       Math.sqrt(0.09));
    170 
    171 new TestCase(
    172       "Math.sqrt(0.01)",
    173       0.1,
    174       Math.sqrt(0.01));
    175 
    176 new TestCase(
    177       "Math.sqrt(0.00000001)",
    178       0.0001,
    179       Math.sqrt(0.00000001));
    180 
    181 test();