~ubuntu-branches/ubuntu/saucy/mozjs17/saucy

« back to all changes in this revision

Viewing changes to js/src/tests/ecma/TypeConversion/9.3.1-1.js

  • Committer: Package Import Robot
  • Author(s): Rico Tzschichholz
  • Date: 2013-05-25 12:24:23 UTC
  • Revision ID: package-import@ubuntu.com-20130525122423-zmxucrhtensw90xy
Tags: upstream-17.0.0
ImportĀ upstreamĀ versionĀ 17.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 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:          9.3.1-1.js
 
9
   ECMA Section:       9.3  Type Conversion:  ToNumber
 
10
   Description:        rules for converting an argument to a number.
 
11
   see 9.3.1 for cases for converting strings to numbers.
 
12
   special cases:
 
13
   undefined           NaN
 
14
   Null                NaN
 
15
   Boolean             1 if true; +0 if false
 
16
   Number              the argument ( no conversion )
 
17
   String              see test 9.3.1
 
18
   Object              see test 9.3-1
 
19
 
 
20
 
 
21
   This tests ToNumber applied to the string type
 
22
 
 
23
   Author:             christine@netscape.com
 
24
   Date:               10 july 1997
 
25
 
 
26
*/
 
27
var SECTION = "9.3.1-1";
 
28
var VERSION = "ECMA_1";
 
29
var TITLE   = "ToNumber applied to the String type";
 
30
var BUGNUMBER="77391";
 
31
 
 
32
startTest();
 
33
 
 
34
writeHeaderToLog( SECTION + " "+ TITLE);
 
35
 
 
36
 
 
37
//  StringNumericLiteral:::StrWhiteSpace:::StrWhiteSpaceChar StrWhiteSpace:::
 
38
//
 
39
//  Name    Unicode Value   Escape Sequence
 
40
//  <TAB>   0X0009          \t
 
41
//  <SP>    0X0020
 
42
//  <FF>    0X000C          \f
 
43
//  <VT>    0X000B
 
44
//  <CR>    0X000D          \r
 
45
//  <LF>    0X000A          \n
 
46
new TestCase( SECTION,  "Number('')",           0,      Number("") );
 
47
new TestCase( SECTION,  "Number(' ')",          0,      Number(" ") );
 
48
new TestCase( SECTION,  "Number(\\t)",          0,      Number("\t") );
 
49
new TestCase( SECTION,  "Number(\\n)",          0,      Number("\n") );
 
50
new TestCase( SECTION,  "Number(\\r)",          0,      Number("\r") );
 
51
new TestCase( SECTION,  "Number(\\f)",          0,      Number("\f") );
 
52
 
 
53
new TestCase( SECTION,  "Number(String.fromCharCode(0x0009)",   0,  Number(String.fromCharCode(0x0009)) );
 
54
new TestCase( SECTION,  "Number(String.fromCharCode(0x0020)",   0,  Number(String.fromCharCode(0x0020)) );
 
55
new TestCase( SECTION,  "Number(String.fromCharCode(0x000C)",   0,  Number(String.fromCharCode(0x000C)) );
 
56
new TestCase( SECTION,  "Number(String.fromCharCode(0x000B)",   0,  Number(String.fromCharCode(0x000B)) );
 
57
new TestCase( SECTION,  "Number(String.fromCharCode(0x000D)",   0,  Number(String.fromCharCode(0x000D)) );
 
58
new TestCase( SECTION,  "Number(String.fromCharCode(0x000A)",   0,  Number(String.fromCharCode(0x000A)) );
 
59
 
 
60
//  a StringNumericLiteral may be preceeded or followed by whitespace and/or
 
61
//  line terminators
 
62
 
 
63
new TestCase( SECTION,  "Number( '   ' +  999 )",        999,    Number( '   '+999) );
 
64
new TestCase( SECTION,  "Number( '\\n'  + 999 )",       999,    Number( '\n' +999) );
 
65
new TestCase( SECTION,  "Number( '\\r'  + 999 )",       999,    Number( '\r' +999) );
 
66
new TestCase( SECTION,  "Number( '\\t'  + 999 )",       999,    Number( '\t' +999) );
 
67
new TestCase( SECTION,  "Number( '\\f'  + 999 )",       999,    Number( '\f' +999) );
 
68
 
 
69
new TestCase( SECTION,  "Number( 999 + '   ' )",        999,    Number( 999+'   ') );
 
70
new TestCase( SECTION,  "Number( 999 + '\\n' )",        999,    Number( 999+'\n' ) );
 
71
new TestCase( SECTION,  "Number( 999 + '\\r' )",        999,    Number( 999+'\r' ) );
 
72
new TestCase( SECTION,  "Number( 999 + '\\t' )",        999,    Number( 999+'\t' ) );
 
73
new TestCase( SECTION,  "Number( 999 + '\\f' )",        999,    Number( 999+'\f' ) );
 
74
 
 
75
new TestCase( SECTION,  "Number( '\\n'  + 999 + '\\n' )",         999,    Number( '\n' +999+'\n' ) );
 
76
new TestCase( SECTION,  "Number( '\\r'  + 999 + '\\r' )",         999,    Number( '\r' +999+'\r' ) );
 
77
new TestCase( SECTION,  "Number( '\\t'  + 999 + '\\t' )",         999,    Number( '\t' +999+'\t' ) );
 
78
new TestCase( SECTION,  "Number( '\\f'  + 999 + '\\f' )",         999,    Number( '\f' +999+'\f' ) );
 
79
 
 
80
new TestCase( SECTION,  "Number( '   ' +  '999' )",     999,    Number( '   '+'999') );
 
81
new TestCase( SECTION,  "Number( '\\n'  + '999' )",       999,    Number( '\n' +'999') );
 
82
new TestCase( SECTION,  "Number( '\\r'  + '999' )",       999,    Number( '\r' +'999') );
 
83
new TestCase( SECTION,  "Number( '\\t'  + '999' )",       999,    Number( '\t' +'999') );
 
84
new TestCase( SECTION,  "Number( '\\f'  + '999' )",       999,    Number( '\f' +'999') );
 
85
 
 
86
new TestCase( SECTION,  "Number( '999' + '   ' )",        999,    Number( '999'+'   ') );
 
87
new TestCase( SECTION,  "Number( '999' + '\\n' )",        999,    Number( '999'+'\n' ) );
 
88
new TestCase( SECTION,  "Number( '999' + '\\r' )",        999,    Number( '999'+'\r' ) );
 
89
new TestCase( SECTION,  "Number( '999' + '\\t' )",        999,    Number( '999'+'\t' ) );
 
90
new TestCase( SECTION,  "Number( '999' + '\\f' )",        999,    Number( '999'+'\f' ) );
 
91
 
 
92
new TestCase( SECTION,  "Number( '\\n'  + '999' + '\\n' )",         999,    Number( '\n' +'999'+'\n' ) );
 
93
new TestCase( SECTION,  "Number( '\\r'  + '999' + '\\r' )",         999,    Number( '\r' +'999'+'\r' ) );
 
94
new TestCase( SECTION,  "Number( '\\t'  + '999' + '\\t' )",         999,    Number( '\t' +'999'+'\t' ) );
 
95
new TestCase( SECTION,  "Number( '\\f'  + '999' + '\\f' )",         999,    Number( '\f' +'999'+'\f' ) );
 
96
 
 
97
var ws = ["",
 
98
          " ",
 
99
          "  ",
 
100
          "   "];
 
101
 
 
102
for (var i = 0, sz = ws.length; i < sz; i++)
 
103
{
 
104
  var start = ws[i];
 
105
  for (var j = 0; j < sz; j++)
 
106
  {
 
107
    var end = ws[j];
 
108
    new TestCase( SECTION,  "Number( '" + start + "' +  '0xA' )",       10,    Number( start+'0xA') );
 
109
 
 
110
    new TestCase( SECTION,  "Number( '0xA' + '" + end + "' )",        10,    Number( '0xA'+end) );
 
111
 
 
112
    new TestCase( SECTION,  "Number( '" + start + "'  + '0xA' + '" + end + "' )",         10,    Number( start +'0xA'+end ) );
 
113
  }
 
114
}
 
115
 
 
116
new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  '99' )",    99,     Number( String.fromCharCode(0x0009) +  '99' ) );
 
117
new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  '99' )",    99,     Number( String.fromCharCode(0x0020) +  '99' ) );
 
118
new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  '99' )",    99,     Number( String.fromCharCode(0x000C) +  '99' ) );
 
119
new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  '99' )",    99,     Number( String.fromCharCode(0x000B) +  '99' ) );
 
120
new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  '99' )",    99,     Number( String.fromCharCode(0x000D) +  '99' ) );
 
121
new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  '99' )",    99,     Number( String.fromCharCode(0x000A) +  '99' ) );
 
122
 
 
123
new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0009)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0009)) );
 
124
new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  '99' + String.fromCharCode(0x0020)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x0020)) );
 
125
new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  '99' + String.fromCharCode(0x000C)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000C)) );
 
126
new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  '99' + String.fromCharCode(0x000D)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000D)) );
 
127
new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  '99' + String.fromCharCode(0x000B)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000B)) );
 
128
new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  '99' + String.fromCharCode(0x000A)",    99,     Number( String.fromCharCode(0x0009) +  '99' + String.fromCharCode(0x000A)) );
 
129
 
 
130
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x0009)",    99,     Number( '99' + String.fromCharCode(0x0009)) );
 
131
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x0020)",    99,     Number( '99' + String.fromCharCode(0x0020)) );
 
132
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000C)",    99,     Number( '99' + String.fromCharCode(0x000C)) );
 
133
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000D)",    99,     Number( '99' + String.fromCharCode(0x000D)) );
 
134
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000B)",    99,     Number( '99' + String.fromCharCode(0x000B)) );
 
135
new TestCase( SECTION,  "Number( '99' + String.fromCharCode(0x000A)",    99,     Number( '99' + String.fromCharCode(0x000A)) );
 
136
 
 
137
new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  99 )",    99,     Number( String.fromCharCode(0x0009) +  99 ) );
 
138
new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  99 )",    99,     Number( String.fromCharCode(0x0020) +  99 ) );
 
139
new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  99 )",    99,     Number( String.fromCharCode(0x000C) +  99 ) );
 
140
new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  99 )",    99,     Number( String.fromCharCode(0x000B) +  99 ) );
 
141
new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  99 )",    99,     Number( String.fromCharCode(0x000D) +  99 ) );
 
142
new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  99 )",    99,     Number( String.fromCharCode(0x000A) +  99 ) );
 
143
 
 
144
new TestCase( SECTION,  "Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0009)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0009)) );
 
145
new TestCase( SECTION,  "Number( String.fromCharCode(0x0020) +  99 + String.fromCharCode(0x0020)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x0020)) );
 
146
new TestCase( SECTION,  "Number( String.fromCharCode(0x000C) +  99 + String.fromCharCode(0x000C)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000C)) );
 
147
new TestCase( SECTION,  "Number( String.fromCharCode(0x000D) +  99 + String.fromCharCode(0x000D)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000D)) );
 
148
new TestCase( SECTION,  "Number( String.fromCharCode(0x000B) +  99 + String.fromCharCode(0x000B)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000B)) );
 
149
new TestCase( SECTION,  "Number( String.fromCharCode(0x000A) +  99 + String.fromCharCode(0x000A)",    99,     Number( String.fromCharCode(0x0009) +  99 + String.fromCharCode(0x000A)) );
 
150
 
 
151
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x0009)",    99,     Number( 99 + String.fromCharCode(0x0009)) );
 
152
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x0020)",    99,     Number( 99 + String.fromCharCode(0x0020)) );
 
153
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000C)",    99,     Number( 99 + String.fromCharCode(0x000C)) );
 
154
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000D)",    99,     Number( 99 + String.fromCharCode(0x000D)) );
 
155
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000B)",    99,     Number( 99 + String.fromCharCode(0x000B)) );
 
156
new TestCase( SECTION,  "Number( 99 + String.fromCharCode(0x000A)",    99,     Number( 99 + String.fromCharCode(0x000A)) );
 
157
 
 
158
 
 
159
// StrNumericLiteral:::StrDecimalLiteral:::Infinity
 
160
 
 
161
new TestCase( SECTION,  "Number('Infinity')",   Math.pow(10,10000),   Number("Infinity") );
 
162
new TestCase( SECTION,  "Number('-Infinity')", -Math.pow(10,10000),   Number("-Infinity") );
 
163
new TestCase( SECTION,  "Number('+Infinity')",  Math.pow(10,10000),   Number("+Infinity") );
 
164
 
 
165
// StrNumericLiteral:::   StrDecimalLiteral ::: DecimalDigits . DecimalDigits opt ExponentPart opt
 
166
 
 
167
new TestCase( SECTION,  "Number('0')",          0,          Number("0") );
 
168
new TestCase( SECTION,  "Number('-0')",         -0,         Number("-0") );
 
169
new TestCase( SECTION,  "Number('+0')",          0,         Number("+0") );
 
170
 
 
171
new TestCase( SECTION,  "Number('1')",          1,          Number("1") );
 
172
new TestCase( SECTION,  "Number('-1')",         -1,         Number("-1") );
 
173
new TestCase( SECTION,  "Number('+1')",          1,         Number("+1") );
 
174
 
 
175
new TestCase( SECTION,  "Number('2')",          2,          Number("2") );
 
176
new TestCase( SECTION,  "Number('-2')",         -2,         Number("-2") );
 
177
new TestCase( SECTION,  "Number('+2')",          2,         Number("+2") );
 
178
 
 
179
new TestCase( SECTION,  "Number('3')",          3,          Number("3") );
 
180
new TestCase( SECTION,  "Number('-3')",         -3,         Number("-3") );
 
181
new TestCase( SECTION,  "Number('+3')",          3,         Number("+3") );
 
182
 
 
183
new TestCase( SECTION,  "Number('4')",          4,          Number("4") );
 
184
new TestCase( SECTION,  "Number('-4')",         -4,         Number("-4") );
 
185
new TestCase( SECTION,  "Number('+4')",          4,         Number("+4") );
 
186
 
 
187
new TestCase( SECTION,  "Number('5')",          5,          Number("5") );
 
188
new TestCase( SECTION,  "Number('-5')",         -5,         Number("-5") );
 
189
new TestCase( SECTION,  "Number('+5')",          5,         Number("+5") );
 
190
 
 
191
new TestCase( SECTION,  "Number('6')",          6,          Number("6") );
 
192
new TestCase( SECTION,  "Number('-6')",         -6,         Number("-6") );
 
193
new TestCase( SECTION,  "Number('+6')",          6,         Number("+6") );
 
194
 
 
195
new TestCase( SECTION,  "Number('7')",          7,          Number("7") );
 
196
new TestCase( SECTION,  "Number('-7')",         -7,         Number("-7") );
 
197
new TestCase( SECTION,  "Number('+7')",          7,         Number("+7") );
 
198
 
 
199
new TestCase( SECTION,  "Number('8')",          8,          Number("8") );
 
200
new TestCase( SECTION,  "Number('-8')",         -8,         Number("-8") );
 
201
new TestCase( SECTION,  "Number('+8')",          8,         Number("+8") );
 
202
 
 
203
new TestCase( SECTION,  "Number('9')",          9,          Number("9") );
 
204
new TestCase( SECTION,  "Number('-9')",         -9,         Number("-9") );
 
205
new TestCase( SECTION,  "Number('+9')",          9,         Number("+9") );
 
206
 
 
207
new TestCase( SECTION,  "Number('3.14159')",    3.14159,    Number("3.14159") );
 
208
new TestCase( SECTION,  "Number('-3.14159')",   -3.14159,   Number("-3.14159") );
 
209
new TestCase( SECTION,  "Number('+3.14159')",   3.14159,    Number("+3.14159") );
 
210
 
 
211
new TestCase( SECTION,  "Number('3.')",         3,          Number("3.") );
 
212
new TestCase( SECTION,  "Number('-3.')",        -3,         Number("-3.") );
 
213
new TestCase( SECTION,  "Number('+3.')",        3,          Number("+3.") );
 
214
 
 
215
new TestCase( SECTION,  "Number('3.e1')",       30,         Number("3.e1") );
 
216
new TestCase( SECTION,  "Number('-3.e1')",      -30,        Number("-3.e1") );
 
217
new TestCase( SECTION,  "Number('+3.e1')",      30,         Number("+3.e1") );
 
218
 
 
219
new TestCase( SECTION,  "Number('3.e+1')",       30,         Number("3.e+1") );
 
220
new TestCase( SECTION,  "Number('-3.e+1')",      -30,        Number("-3.e+1") );
 
221
new TestCase( SECTION,  "Number('+3.e+1')",      30,         Number("+3.e+1") );
 
222
 
 
223
new TestCase( SECTION,  "Number('3.e-1')",       .30,         Number("3.e-1") );
 
224
new TestCase( SECTION,  "Number('-3.e-1')",      -.30,        Number("-3.e-1") );
 
225
new TestCase( SECTION,  "Number('+3.e-1')",      .30,         Number("+3.e-1") );
 
226
 
 
227
// StrDecimalLiteral:::  .DecimalDigits ExponentPart opt
 
228
 
 
229
new TestCase( SECTION,  "Number('.00001')",     0.00001,    Number(".00001") );
 
230
new TestCase( SECTION,  "Number('+.00001')",    0.00001,    Number("+.00001") );
 
231
new TestCase( SECTION,  "Number('-0.0001')",    -0.00001,   Number("-.00001") );
 
232
 
 
233
new TestCase( SECTION,  "Number('.01e2')",      1,          Number(".01e2") );
 
234
new TestCase( SECTION,  "Number('+.01e2')",     1,          Number("+.01e2") );
 
235
new TestCase( SECTION,  "Number('-.01e2')",     -1,         Number("-.01e2") );
 
236
 
 
237
new TestCase( SECTION,  "Number('.01e+2')",      1,         Number(".01e+2") );
 
238
new TestCase( SECTION,  "Number('+.01e+2')",     1,         Number("+.01e+2") );
 
239
new TestCase( SECTION,  "Number('-.01e+2')",     -1,        Number("-.01e+2") );
 
240
 
 
241
new TestCase( SECTION,  "Number('.01e-2')",      0.0001,    Number(".01e-2") );
 
242
new TestCase( SECTION,  "Number('+.01e-2')",     0.0001,    Number("+.01e-2") );
 
243
new TestCase( SECTION,  "Number('-.01e-2')",     -0.0001,   Number("-.01e-2") );
 
244
 
 
245
//  StrDecimalLiteral:::    DecimalDigits ExponentPart opt
 
246
 
 
247
new TestCase( SECTION,  "Number('1234e5')",     123400000,  Number("1234e5") );
 
248
new TestCase( SECTION,  "Number('+1234e5')",    123400000,  Number("+1234e5") );
 
249
new TestCase( SECTION,  "Number('-1234e5')",    -123400000, Number("-1234e5") );
 
250
 
 
251
new TestCase( SECTION,  "Number('1234e+5')",    123400000,  Number("1234e+5") );
 
252
new TestCase( SECTION,  "Number('+1234e+5')",   123400000,  Number("+1234e+5") );
 
253
new TestCase( SECTION,  "Number('-1234e+5')",   -123400000, Number("-1234e+5") );
 
254
 
 
255
new TestCase( SECTION,  "Number('1234e-5')",     0.01234,  Number("1234e-5") );
 
256
new TestCase( SECTION,  "Number('+1234e-5')",    0.01234,  Number("+1234e-5") );
 
257
new TestCase( SECTION,  "Number('-1234e-5')",    -0.01234, Number("-1234e-5") );
 
258
 
 
259
// StrNumericLiteral::: HexIntegerLiteral
 
260
 
 
261
new TestCase( SECTION,  "Number('0x0')",        0,          Number("0x0"));
 
262
new TestCase( SECTION,  "Number('0x1')",        1,          Number("0x1"));
 
263
new TestCase( SECTION,  "Number('0x2')",        2,          Number("0x2"));
 
264
new TestCase( SECTION,  "Number('0x3')",        3,          Number("0x3"));
 
265
new TestCase( SECTION,  "Number('0x4')",        4,          Number("0x4"));
 
266
new TestCase( SECTION,  "Number('0x5')",        5,          Number("0x5"));
 
267
new TestCase( SECTION,  "Number('0x6')",        6,          Number("0x6"));
 
268
new TestCase( SECTION,  "Number('0x7')",        7,          Number("0x7"));
 
269
new TestCase( SECTION,  "Number('0x8')",        8,          Number("0x8"));
 
270
new TestCase( SECTION,  "Number('0x9')",        9,          Number("0x9"));
 
271
new TestCase( SECTION,  "Number('0xa')",        10,         Number("0xa"));
 
272
new TestCase( SECTION,  "Number('0xb')",        11,         Number("0xb"));
 
273
new TestCase( SECTION,  "Number('0xc')",        12,         Number("0xc"));
 
274
new TestCase( SECTION,  "Number('0xd')",        13,         Number("0xd"));
 
275
new TestCase( SECTION,  "Number('0xe')",        14,         Number("0xe"));
 
276
new TestCase( SECTION,  "Number('0xf')",        15,         Number("0xf"));
 
277
new TestCase( SECTION,  "Number('0xA')",        10,         Number("0xA"));
 
278
new TestCase( SECTION,  "Number('0xB')",        11,         Number("0xB"));
 
279
new TestCase( SECTION,  "Number('0xC')",        12,         Number("0xC"));
 
280
new TestCase( SECTION,  "Number('0xD')",        13,         Number("0xD"));
 
281
new TestCase( SECTION,  "Number('0xE')",        14,         Number("0xE"));
 
282
new TestCase( SECTION,  "Number('0xF')",        15,         Number("0xF"));
 
283
 
 
284
new TestCase( SECTION,  "Number('0X0')",        0,          Number("0X0"));
 
285
new TestCase( SECTION,  "Number('0X1')",        1,          Number("0X1"));
 
286
new TestCase( SECTION,  "Number('0X2')",        2,          Number("0X2"));
 
287
new TestCase( SECTION,  "Number('0X3')",        3,          Number("0X3"));
 
288
new TestCase( SECTION,  "Number('0X4')",        4,          Number("0X4"));
 
289
new TestCase( SECTION,  "Number('0X5')",        5,          Number("0X5"));
 
290
new TestCase( SECTION,  "Number('0X6')",        6,          Number("0X6"));
 
291
new TestCase( SECTION,  "Number('0X7')",        7,          Number("0X7"));
 
292
new TestCase( SECTION,  "Number('0X8')",        8,          Number("0X8"));
 
293
new TestCase( SECTION,  "Number('0X9')",        9,          Number("0X9"));
 
294
new TestCase( SECTION,  "Number('0Xa')",        10,         Number("0Xa"));
 
295
new TestCase( SECTION,  "Number('0Xb')",        11,         Number("0Xb"));
 
296
new TestCase( SECTION,  "Number('0Xc')",        12,         Number("0Xc"));
 
297
new TestCase( SECTION,  "Number('0Xd')",        13,         Number("0Xd"));
 
298
new TestCase( SECTION,  "Number('0Xe')",        14,         Number("0Xe"));
 
299
new TestCase( SECTION,  "Number('0Xf')",        15,         Number("0Xf"));
 
300
new TestCase( SECTION,  "Number('0XA')",        10,         Number("0XA"));
 
301
new TestCase( SECTION,  "Number('0XB')",        11,         Number("0XB"));
 
302
new TestCase( SECTION,  "Number('0XC')",        12,         Number("0XC"));
 
303
new TestCase( SECTION,  "Number('0XD')",        13,         Number("0XD"));
 
304
new TestCase( SECTION,  "Number('0XE')",        14,         Number("0XE"));
 
305
new TestCase( SECTION,  "Number('0XF')",        15,         Number("0XF"));
 
306
 
 
307
test();
 
308