Home | History | Annotate | Download | only in TypeConversion
      1 /* The contents of this file are subject to the Netscape Public
      2  * License Version 1.1 (the "License"); you may not use this file
      3  * except in compliance with the License. You may obtain a copy of
      4  * the License at http://www.mozilla.org/NPL/
      5  *
      6  * Software distributed under the License is distributed on an "AS
      7  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
      8  * implied. See the License for the specific language governing
      9  * rights and limitations under the License.
     10  *
     11  * The Original Code is Mozilla Communicator client code, released March
     12  * 31, 1998.
     13  *
     14  * The Initial Developer of the Original Code is Netscape Communications
     15  * Corporation. Portions created by Netscape are
     16  * Copyright (C) 1998 Netscape Communications Corporation. All
     17  * Rights Reserved.
     18  *
     19  * Contributor(s):
     20  *
     21  */
     22 /**
     23     File Name:          9.3.1-1.js
     24     ECMA Section:       9.3  Type Conversion:  ToNumber
     25     Description:        rules for converting an argument to a number.
     26                         see 9.3.1 for cases for converting strings to numbers.
     27                         special cases:
     28                         undefined           NaN
     29                         Null                NaN
     30                         Boolean             1 if true; +0 if false
     31                         Number              the argument ( no conversion )
     32                         String              see test 9.3.1
     33                         Object              see test 9.3-1
     34 
     35 
     36                         This tests ToNumber applied to the string type
     37 
     38     Author:             christine (at) netscape.com
     39     Date:               10 july 1997
     40 
     41 */
     42     var SECTION = "9.3.1-1";
     43     var VERSION = "ECMA_1";
     44     startTest();
     45     var TITLE   = "ToNumber applied to the String type";
     46     var BUGNUMBER="77391";
     47 
     48     writeHeaderToLog( SECTION + " "+ TITLE);
     49 
     50     var testcases = getTestCases();
     51     test();
     52 
     53 function test() {
     54     for ( tc=0; tc < testcases.length; tc++ ) {
     55         testcases[tc].passed = writeTestCaseResult(
     56                             testcases[tc].expect,
     57                             testcases[tc].actual,
     58                             testcases[tc].description +" = "+
     59                             testcases[tc].actual );
     60 
     61         testcases[tc].reason += ( testcases[tc].passed ) ? "" : "wrong value ";
     62     }
     63     stopTest();
     64     return ( testcases );
     65 }
     66 function getTestCases() {
     67     var array = new Array();
     68     var item = 0;
     69 
     70     //  StringNumericLiteral:::StrWhiteSpace:::StrWhiteSpaceChar StrWhiteSpace:::
     71     //
     72     //  Name    Unicode Value   Escape Sequence
     73     //  <TAB>   0X0009          \t
     74     //  <SP>    0X0020
     75     //  <FF>    0X000C          \f
     76     //  <VT>    0X000B
     77     //  <CR>    0X000D          \r
     78     //  <LF>    0X000A          \n
     79     array[item++] = new TestCase( SECTION,  "Number('')",           0,      Number("") );
     80     array[item++] = new TestCase( SECTION,  "Number(' ')",          0,      Number(" ") );
     81     array[item++] = new TestCase( SECTION,  "Number(\\t)",          0,      Number("\t") );
     82     array[item++] = new TestCase( SECTION,  "Number(\\n)",          0,      Number("\n") );
     83     array[item++] = new TestCase( SECTION,  "Number(\\r)",          0,      Number("\r") );
     84     array[item++] = new TestCase( SECTION,  "Number(\\f)",          0,      Number("\f") );
     85 
     86     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x0009)",   0,  Number(String.fromCharCode(0x0009)) );
     87     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x0020)",   0,  Number(String.fromCharCode(0x0020)) );
     88     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x000C)",   0,  Number(String.fromCharCode(0x000C)) );
     89     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x000B)",   0,  Number(String.fromCharCode(0x000B)) );
     90     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x000D)",   0,  Number(String.fromCharCode(0x000D)) );
     91     array[item++] = new TestCase( SECTION,  "Number(String.fromCharCode(0x000A)",   0,  Number(String.fromCharCode(0x000A)) );
     92 
     93     //  a StringNumericLiteral may be preceeded or followed by whitespace and/or
     94     //  line terminators
     95 
     96     array[item++] = new TestCase( SECTION,  "Number( '   ' +  999 )",        999,    Number( '   '+999) );
     97     array[item++] = new TestCase( SECTION,  "Number( '\\n'  + 999 )",       999,    Number( '\n' +999) );
     98     array[item++] = new TestCase( SECTION,  "Number( '\\r'  + 999 )",       999,    Number( '\r' +999) );
     99     array[item++] = new TestCase( SECTION,  "Number( '\\t'  + 999 )",       999,    Number( '\t' +999) );
    100     array[item++] = new TestCase( SECTION,  "Number( '\\f'  + 999 )",       999,    Number( '\f' +999) );
    101 
    102     array[item++] = new TestCase( SECTION,  "Number( 999 + '   ' )",        999,    Number( 999+'   ') );
    103     array[item++] = new TestCase( SECTION,  "Number( 999 + '\\n' )",        999,    Number( 999+'\n' ) );
    104     array[item++] = new TestCase( SECTION,  "Number( 999 + '\\r' )",        999,    Number( 999+'\r' ) );
    105     array[item++] = new TestCase( SECTION,  "Number( 999 + '\\t' )",        999,    Number( 999+'\t' ) );
    106     array[item++] = new TestCase( SECTION,  "Number( 999 + '\\f' )",        999,    Number( 999+'\f' ) );
    107 
    108     array[item++] = new TestCase( SECTION,  "Number( '\\n'  + 999 + '\\n' )",         999,    Number( '\n' +999+'\n' ) );
    109     array[item++] = new TestCase( SECTION,  "Number( '\\r'  + 999 + '\\r' )",         999,    Number( '\r' +999+'\r' ) );
    110     array[item++] = new TestCase( SECTION,  "Number( '\\t'  + 999 + '\\t' )",         999,    Number( '\t' +999+'\t' ) );
    111     array[item++] = new TestCase( SECTION,  "Number( '\\f'  + 999 + '\\f' )",         999,    Number( '\f' +999+'\f' ) );
    112 
    113     array[item++] = new TestCase( SECTION,  "Number( '   ' +  '999' )",     999,    Number( '   '+'999') );
    114     array[item++] = new TestCase( SECTION,  "Number( '\\n'  + '999' )",       999,    Number( '\n' +'999') );
    115     array[item++] = new TestCase( SECTION,  "Number( '\\r'  + '999' )",       999,    Number( '\r' +'999') );
    116     array[item++] = new TestCase( SECTION,  "Number( '\\t'  + '999' )",       999,    Number( '\t' +'999') );
    117     array[item++] = new TestCase( SECTION,  "Number( '\\f'  + '999' )",       999,    Number( '\f' +'999') );
    118 
    119     array[item++] = new TestCase( SECTION,  "Number( '999' + '   ' )",        999,    Number( '999'+'   ') );
    120     array[item++] = new TestCase( SECTION,  "Number( '999' + '\\n' )",        999,    Number( '999'+'\n' ) );
    121     array[item++] = new TestCase( SECTION,  "Number( '999' + '\\r' )",        999,    Number( '999'+'\r' ) );
    122     array[item++] = new TestCase( SECTION,  "Number( '999' + '\\t' )",        999,    Number( '999'+'\t' ) );
    123     array[item++] = new TestCase( SECTION,  "Number( '999' + '\\f' )",        999,    Number( '999'+'\f' ) );
    124 
    125     array[item++] = new TestCase( SECTION,  "Number( '\\n'  + '999' + '\\n' )",         999,    Number( '\n' +'999'+'\n' ) );
    126     array[item++] = new TestCase( SECTION,  "Number( '\\r'  + '999' + '\\r' )",         999,    Number( '\r' +'999'+'\r' ) );
    127     array[item++] = new TestCase( SECTION,  "Number( '\\t'  + '999' + '\\t' )",         999,    Number( '\t' +'999'+'\t' ) );
    128     array[item++] = new TestCase( SECTION,  "Number( '\\f'  + '999' + '\\f' )",         999,    Number( '\f' +'999'+'\f' ) );
    129 
    130     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  '99' )",    99,     Number( String.fromCharCode(0x0009) +  '99' ) );
    131     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  '99' )",    99,     Number( String.fromCharCode(0x0020) +  '99' ) );
    132     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  '99' )",    99,     Number( String.fromCharCode(0x000C) +  '99' ) );
    133     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  '99' )",    99,     Number( String.fromCharCode(0x000B) +  '99' ) );
    134     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  '99' )",    99,     Number( String.fromCharCode(0x000D) +  '99' ) );
    135     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  '99' )",    99,     Number( String.fromCharCode(0x000A) +  '99' ) );
    136 
    137     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0009)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0009)) );
    138     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  '99' + String.fromCharCode(0x0020)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0020)) );
    139     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  '99' + String.fromCharCode(0x000C)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000C)) );
    140     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  '99' + String.fromCharCode(0x000D)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000D)) );
    141     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  '99' + String.fromCharCode(0x000B)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000B)) );
    142     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  '99' + String.fromCharCode(0x000A)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000A)) );
    143 
    144     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x0009)",    99,     Number( '99' + String.fromCharCode(0x0009)) );
    145     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x0020)",    99,     Number( '99' + String.fromCharCode(0x0020)) );
    146     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000C)",    99,     Number( '99' + String.fromCharCode(0x000C)) );
    147     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000D)",    99,     Number( '99' + String.fromCharCode(0x000D)) );
    148     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000B)",    99,     Number( '99' + String.fromCharCode(0x000B)) );
    149     array[item++] = new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000A)",    99,     Number( '99' + String.fromCharCode(0x000A)) );
    150 
    151     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  99 )",    99,     Number( String.fromCharCode(0x0009) +  99 ) );
    152     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  99 )",    99,     Number( String.fromCharCode(0x0020) +  99 ) );
    153     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  99 )",    99,     Number( String.fromCharCode(0x000C) +  99 ) );
    154     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  99 )",    99,     Number( String.fromCharCode(0x000B) +  99 ) );
    155     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  99 )",    99,     Number( String.fromCharCode(0x000D) +  99 ) );
    156     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  99 )",    99,     Number( String.fromCharCode(0x000A) +  99 ) );
    157 
    158     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0009)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0009)) );
    159     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  99 + String.fromCharCode(0x0020)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0020)) );
    160     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  99 + String.fromCharCode(0x000C)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000C)) );
    161     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  99 + String.fromCharCode(0x000D)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000D)) );
    162     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  99 + String.fromCharCode(0x000B)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000B)) );
    163     array[item++] = new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  99 + String.fromCharCode(0x000A)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000A)) );
    164 
    165     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x0009)",    99,     Number( 99 + String.fromCharCode(0x0009)) );
    166     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x0020)",    99,     Number( 99 + String.fromCharCode(0x0020)) );
    167     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000C)",    99,     Number( 99 + String.fromCharCode(0x000C)) );
    168     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000D)",    99,     Number( 99 + String.fromCharCode(0x000D)) );
    169     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000B)",    99,     Number( 99 + String.fromCharCode(0x000B)) );
    170     array[item++] = new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000A)",    99,     Number( 99 + String.fromCharCode(0x000A)) );
    171 
    172 
    173     // StrNumericLiteral:::StrDecimalLiteral:::Infinity
    174 
    175     array[item++] = new TestCase( SECTION,  "Number('Infinity')",   Math.pow(10,10000),   Number("Infinity") );
    176     array[item++] = new TestCase( SECTION,  "Number('-Infinity')", -Math.pow(10,10000),   Number("-Infinity") );
    177     array[item++] = new TestCase( SECTION,  "Number('+Infinity')",  Math.pow(10,10000),   Number("+Infinity") );
    178 
    179     // StrNumericLiteral:::   StrDecimalLiteral ::: DecimalDigits . DecimalDigits opt ExponentPart opt
    180 
    181     array[item++] = new TestCase( SECTION,  "Number('0')",          0,          Number("0") );
    182     array[item++] = new TestCase( SECTION,  "Number('-0')",         -0,         Number("-0") );
    183     array[item++] = new TestCase( SECTION,  "Number('+0')",          0,         Number("+0") );
    184 
    185     array[item++] = new TestCase( SECTION,  "Number('1')",          1,          Number("1") );
    186     array[item++] = new TestCase( SECTION,  "Number('-1')",         -1,         Number("-1") );
    187     array[item++] = new TestCase( SECTION,  "Number('+1')",          1,         Number("+1") );
    188 
    189     array[item++] = new TestCase( SECTION,  "Number('2')",          2,          Number("2") );
    190     array[item++] = new TestCase( SECTION,  "Number('-2')",         -2,         Number("-2") );
    191     array[item++] = new TestCase( SECTION,  "Number('+2')",          2,         Number("+2") );
    192 
    193     array[item++] = new TestCase( SECTION,  "Number('3')",          3,          Number("3") );
    194     array[item++] = new TestCase( SECTION,  "Number('-3')",         -3,         Number("-3") );
    195     array[item++] = new TestCase( SECTION,  "Number('+3')",          3,         Number("+3") );
    196 
    197     array[item++] = new TestCase( SECTION,  "Number('4')",          4,          Number("4") );
    198     array[item++] = new TestCase( SECTION,  "Number('-4')",         -4,         Number("-4") );
    199     array[item++] = new TestCase( SECTION,  "Number('+4')",          4,         Number("+4") );
    200 
    201     array[item++] = new TestCase( SECTION,  "Number('5')",          5,          Number("5") );
    202     array[item++] = new TestCase( SECTION,  "Number('-5')",         -5,         Number("-5") );
    203     array[item++] = new TestCase( SECTION,  "Number('+5')",          5,         Number("+5") );
    204 
    205     array[item++] = new TestCase( SECTION,  "Number('6')",          6,          Number("6") );
    206     array[item++] = new TestCase( SECTION,  "Number('-6')",         -6,         Number("-6") );
    207     array[item++] = new TestCase( SECTION,  "Number('+6')",          6,         Number("+6") );
    208 
    209     array[item++] = new TestCase( SECTION,  "Number('7')",          7,          Number("7") );
    210     array[item++] = new TestCase( SECTION,  "Number('-7')",         -7,         Number("-7") );
    211     array[item++] = new TestCase( SECTION,  "Number('+7')",          7,         Number("+7") );
    212 
    213     array[item++] = new TestCase( SECTION,  "Number('8')",          8,          Number("8") );
    214     array[item++] = new TestCase( SECTION,  "Number('-8')",         -8,         Number("-8") );
    215     array[item++] = new TestCase( SECTION,  "Number('+8')",          8,         Number("+8") );
    216 
    217     array[item++] = new TestCase( SECTION,  "Number('9')",          9,          Number("9") );
    218     array[item++] = new TestCase( SECTION,  "Number('-9')",         -9,         Number("-9") );
    219     array[item++] = new TestCase( SECTION,  "Number('+9')",          9,         Number("+9") );
    220 
    221     array[item++] = new TestCase( SECTION,  "Number('3.14159')",    3.14159,    Number("3.14159") );
    222     array[item++] = new TestCase( SECTION,  "Number('-3.14159')",   -3.14159,   Number("-3.14159") );
    223     array[item++] = new TestCase( SECTION,  "Number('+3.14159')",   3.14159,    Number("+3.14159") );
    224 
    225     array[item++] = new TestCase( SECTION,  "Number('3.')",         3,          Number("3.") );
    226     array[item++] = new TestCase( SECTION,  "Number('-3.')",        -3,         Number("-3.") );
    227     array[item++] = new TestCase( SECTION,  "Number('+3.')",        3,          Number("+3.") );
    228 
    229     array[item++] = new TestCase( SECTION,  "Number('3.e1')",       30,         Number("3.e1") );
    230     array[item++] = new TestCase( SECTION,  "Number('-3.e1')",      -30,        Number("-3.e1") );
    231     array[item++] = new TestCase( SECTION,  "Number('+3.e1')",      30,         Number("+3.e1") );
    232 
    233     array[item++] = new TestCase( SECTION,  "Number('3.e+1')",       30,         Number("3.e+1") );
    234     array[item++] = new TestCase( SECTION,  "Number('-3.e+1')",      -30,        Number("-3.e+1") );
    235     array[item++] = new TestCase( SECTION,  "Number('+3.e+1')",      30,         Number("+3.e+1") );
    236 
    237     array[item++] = new TestCase( SECTION,  "Number('3.e-1')",       .30,         Number("3.e-1") );
    238     array[item++] = new TestCase( SECTION,  "Number('-3.e-1')",      -.30,        Number("-3.e-1") );
    239     array[item++] = new TestCase( SECTION,  "Number('+3.e-1')",      .30,         Number("+3.e-1") );
    240 
    241     // StrDecimalLiteral:::  .DecimalDigits ExponentPart opt
    242 
    243     array[item++] = new TestCase( SECTION,  "Number('.00001')",     0.00001,    Number(".00001") );
    244     array[item++] = new TestCase( SECTION,  "Number('+.00001')",    0.00001,    Number("+.00001") );
    245     array[item++] = new TestCase( SECTION,  "Number('-0.0001')",    -0.00001,   Number("-.00001") );
    246 
    247     array[item++] = new TestCase( SECTION,  "Number('.01e2')",      1,          Number(".01e2") );
    248     array[item++] = new TestCase( SECTION,  "Number('+.01e2')",     1,          Number("+.01e2") );
    249     array[item++] = new TestCase( SECTION,  "Number('-.01e2')",     -1,         Number("-.01e2") );
    250 
    251     array[item++] = new TestCase( SECTION,  "Number('.01e+2')",      1,         Number(".01e+2") );
    252     array[item++] = new TestCase( SECTION,  "Number('+.01e+2')",     1,         Number("+.01e+2") );
    253     array[item++] = new TestCase( SECTION,  "Number('-.01e+2')",     -1,        Number("-.01e+2") );
    254 
    255     array[item++] = new TestCase( SECTION,  "Number('.01e-2')",      0.0001,    Number(".01e-2") );
    256     array[item++] = new TestCase( SECTION,  "Number('+.01e-2')",     0.0001,    Number("+.01e-2") );
    257     array[item++] = new TestCase( SECTION,  "Number('-.01e-2')",     -0.0001,   Number("-.01e-2") );
    258 
    259     //  StrDecimalLiteral:::    DecimalDigits ExponentPart opt
    260 
    261     array[item++] = new TestCase( SECTION,  "Number('1234e5')",     123400000,  Number("1234e5") );
    262     array[item++] = new TestCase( SECTION,  "Number('+1234e5')",    123400000,  Number("+1234e5") );
    263     array[item++] = new TestCase( SECTION,  "Number('-1234e5')",    -123400000, Number("-1234e5") );
    264 
    265     array[item++] = new TestCase( SECTION,  "Number('1234e+5')",    123400000,  Number("1234e+5") );
    266     array[item++] = new TestCase( SECTION,  "Number('+1234e+5')",   123400000,  Number("+1234e+5") );
    267     array[item++] = new TestCase( SECTION,  "Number('-1234e+5')",   -123400000, Number("-1234e+5") );
    268 
    269     array[item++] = new TestCase( SECTION,  "Number('1234e-5')",     0.01234,  Number("1234e-5") );
    270     array[item++] = new TestCase( SECTION,  "Number('+1234e-5')",    0.01234,  Number("+1234e-5") );
    271     array[item++] = new TestCase( SECTION,  "Number('-1234e-5')",    -0.01234, Number("-1234e-5") );
    272 
    273     // StrNumericLiteral::: HexIntegerLiteral
    274 
    275     array[item++] = new TestCase( SECTION,  "Number('0x0')",        0,          Number("0x0"));
    276     array[item++] = new TestCase( SECTION,  "Number('0x1')",        1,          Number("0x1"));
    277     array[item++] = new TestCase( SECTION,  "Number('0x2')",        2,          Number("0x2"));
    278     array[item++] = new TestCase( SECTION,  "Number('0x3')",        3,          Number("0x3"));
    279     array[item++] = new TestCase( SECTION,  "Number('0x4')",        4,          Number("0x4"));
    280     array[item++] = new TestCase( SECTION,  "Number('0x5')",        5,          Number("0x5"));
    281     array[item++] = new TestCase( SECTION,  "Number('0x6')",        6,          Number("0x6"));
    282     array[item++] = new TestCase( SECTION,  "Number('0x7')",        7,          Number("0x7"));
    283     array[item++] = new TestCase( SECTION,  "Number('0x8')",        8,          Number("0x8"));
    284     array[item++] = new TestCase( SECTION,  "Number('0x9')",        9,          Number("0x9"));
    285     array[item++] = new TestCase( SECTION,  "Number('0xa')",        10,         Number("0xa"));
    286     array[item++] = new TestCase( SECTION,  "Number('0xb')",        11,         Number("0xb"));
    287     array[item++] = new TestCase( SECTION,  "Number('0xc')",        12,         Number("0xc"));
    288     array[item++] = new TestCase( SECTION,  "Number('0xd')",        13,         Number("0xd"));
    289     array[item++] = new TestCase( SECTION,  "Number('0xe')",        14,         Number("0xe"));
    290     array[item++] = new TestCase( SECTION,  "Number('0xf')",        15,         Number("0xf"));
    291     array[item++] = new TestCase( SECTION,  "Number('0xA')",        10,         Number("0xA"));
    292     array[item++] = new TestCase( SECTION,  "Number('0xB')",        11,         Number("0xB"));
    293     array[item++] = new TestCase( SECTION,  "Number('0xC')",        12,         Number("0xC"));
    294     array[item++] = new TestCase( SECTION,  "Number('0xD')",        13,         Number("0xD"));
    295     array[item++] = new TestCase( SECTION,  "Number('0xE')",        14,         Number("0xE"));
    296     array[item++] = new TestCase( SECTION,  "Number('0xF')",        15,         Number("0xF"));
    297 
    298     array[item++] = new TestCase( SECTION,  "Number('0X0')",        0,          Number("0X0"));
    299     array[item++] = new TestCase( SECTION,  "Number('0X1')",        1,          Number("0X1"));
    300     array[item++] = new TestCase( SECTION,  "Number('0X2')",        2,          Number("0X2"));
    301     array[item++] = new TestCase( SECTION,  "Number('0X3')",        3,          Number("0X3"));
    302     array[item++] = new TestCase( SECTION,  "Number('0X4')",        4,          Number("0X4"));
    303     array[item++] = new TestCase( SECTION,  "Number('0X5')",        5,          Number("0X5"));
    304     array[item++] = new TestCase( SECTION,  "Number('0X6')",        6,          Number("0X6"));
    305     array[item++] = new TestCase( SECTION,  "Number('0X7')",        7,          Number("0X7"));
    306     array[item++] = new TestCase( SECTION,  "Number('0X8')",        8,          Number("0X8"));
    307     array[item++] = new TestCase( SECTION,  "Number('0X9')",        9,          Number("0X9"));
    308     array[item++] = new TestCase( SECTION,  "Number('0Xa')",        10,         Number("0Xa"));
    309     array[item++] = new TestCase( SECTION,  "Number('0Xb')",        11,         Number("0Xb"));
    310     array[item++] = new TestCase( SECTION,  "Number('0Xc')",        12,         Number("0Xc"));
    311     array[item++] = new TestCase( SECTION,  "Number('0Xd')",        13,         Number("0Xd"));
    312     array[item++] = new TestCase( SECTION,  "Number('0Xe')",        14,         Number("0Xe"));
    313     array[item++] = new TestCase( SECTION,  "Number('0Xf')",        15,         Number("0Xf"));
    314     array[item++] = new TestCase( SECTION,  "Number('0XA')",        10,         Number("0XA"));
    315     array[item++] = new TestCase( SECTION,  "Number('0XB')",        11,         Number("0XB"));
    316     array[item++] = new TestCase( SECTION,  "Number('0XC')",        12,         Number("0XC"));
    317     array[item++] = new TestCase( SECTION,  "Number('0XD')",        13,         Number("0XD"));
    318     array[item++] = new TestCase( SECTION,  "Number('0XE')",        14,         Number("0XE"));
    319     array[item++] = new TestCase( SECTION,  "Number('0XF')",        15,         Number("0XF"));
    320 
    321     return ( array );
    322 }
    323 
    324