tor-browser

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

S9.9_A4.js (5198B)


      1 // Copyright 2009 the Sputnik authors.  All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 
      4 /*---
      5 info: |
      6    ToObject conversion from Number: create a new Number object
      7    whose [[value]] property is set to the value of the number
      8 es5id: 9.9_A4
      9 description: Converting from various numbers to Object
     10 ---*/
     11 assert.sameValue(Object(0).valueOf(), 0, 'Object(0).valueOf() must return 0');
     12 assert.sameValue(typeof Object(0), "object", 'The value of `typeof Object(0)` is expected to be "object"');
     13 
     14 assert.sameValue(
     15  Object(0).constructor.prototype,
     16  Number.prototype,
     17  'The value of Object(0).constructor.prototype is expected to equal the value of Number.prototype'
     18 );
     19 
     20 assert.sameValue(Object(-0).valueOf(), -0, 'Object(-0).valueOf() must return -0');
     21 assert.sameValue(typeof Object(-0), "object", 'The value of `typeof Object(-0)` is expected to be "object"');
     22 
     23 assert.sameValue(
     24  Object(-0).constructor.prototype,
     25  Number.prototype,
     26  'The value of Object(-0).constructor.prototype is expected to equal the value of Number.prototype'
     27 );
     28 
     29 assert.sameValue(Object(1).valueOf(), 1, 'Object(1).valueOf() must return 1');
     30 assert.sameValue(typeof Object(1), "object", 'The value of `typeof Object(1)` is expected to be "object"');
     31 
     32 assert.sameValue(
     33  Object(1).constructor.prototype,
     34  Number.prototype,
     35  'The value of Object(1).constructor.prototype is expected to equal the value of Number.prototype'
     36 );
     37 
     38 assert.sameValue(Object(-1).valueOf(), -1, 'Object(-1).valueOf() must return -1');
     39 assert.sameValue(typeof Object(-1), "object", 'The value of `typeof Object(-1)` is expected to be "object"');
     40 
     41 assert.sameValue(
     42  Object(-1).constructor.prototype,
     43  Number.prototype,
     44  'The value of Object(-1).constructor.prototype is expected to equal the value of Number.prototype'
     45 );
     46 
     47 assert.sameValue(
     48  Object(Number.MIN_VALUE).valueOf(),
     49  Number.MIN_VALUE,
     50  'Object(Number.MIN_VALUE).valueOf() returns Number.MIN_VALUE'
     51 );
     52 
     53 assert.sameValue(
     54  typeof Object(Number.MIN_VALUE),
     55  "object",
     56  'The value of `typeof Object(Number.MIN_VALUE)` is expected to be "object"'
     57 );
     58 
     59 assert.sameValue(
     60  Object(Number.MIN_VALUE).constructor.prototype,
     61  Number.prototype,
     62  'The value of Object(Number.MIN_VALUE).constructor.prototype is expected to equal the value of Number.prototype'
     63 );
     64 
     65 assert.sameValue(
     66  Object(Number.MAX_VALUE).valueOf(),
     67  Number.MAX_VALUE,
     68  'Object(Number.MAX_VALUE).valueOf() returns Number.MAX_VALUE'
     69 );
     70 
     71 assert.sameValue(
     72  typeof Object(Number.MAX_VALUE),
     73  "object",
     74  'The value of `typeof Object(Number.MAX_VALUE)` is expected to be "object"'
     75 );
     76 
     77 assert.sameValue(
     78  Object(Number.MAX_VALUE).constructor.prototype,
     79  Number.prototype,
     80  'The value of Object(Number.MAX_VALUE).constructor.prototype is expected to equal the value of Number.prototype'
     81 );
     82 
     83 assert.sameValue(
     84  Object(Number.POSITIVE_INFINITY).valueOf(),
     85  Number.POSITIVE_INFINITY,
     86  'Object(Number.POSITIVE_INFINITY).valueOf() returns Number.POSITIVE_INFINITY'
     87 );
     88 
     89 assert.sameValue(
     90  typeof Object(Number.POSITIVE_INFINITY),
     91  "object",
     92  'The value of `typeof Object(Number.POSITIVE_INFINITY)` is expected to be "object"'
     93 );
     94 
     95 assert.sameValue(
     96  Object(Number.POSITIVE_INFINITY).constructor.prototype,
     97  Number.prototype,
     98  'The value of Object(Number.POSITIVE_INFINITY).constructor.prototype is expected to equal the value of Number.prototype'
     99 );
    100 
    101 assert.sameValue(
    102  Object(Number.NEGATIVE_INFINITY).valueOf(),
    103  Number.NEGATIVE_INFINITY,
    104  'Object(Number.NEGATIVE_INFINITY).valueOf() returns Number.NEGATIVE_INFINITY'
    105 );
    106 
    107 assert.sameValue(
    108  typeof Object(Number.NEGATIVE_INFINITY),
    109  "object",
    110  'The value of `typeof Object(Number.NEGATIVE_INFINITY)` is expected to be "object"'
    111 );
    112 
    113 assert.sameValue(
    114  Object(Number.NEGATIVE_INFINITY).constructor.prototype,
    115  Number.prototype,
    116  'The value of Object(Number.NEGATIVE_INFINITY).constructor.prototype is expected to equal the value of Number.prototype'
    117 );
    118 
    119 assert.sameValue(Object(NaN).valueOf(), NaN, 'Object(NaN).valueOf() returns NaN');
    120 
    121 assert.sameValue(
    122  typeof Object(Number.NaN),
    123  "object",
    124  'The value of `typeof Object(Number.NaN)` is expected to be "object"'
    125 );
    126 
    127 assert.sameValue(
    128  Object(Number.NaN).constructor.prototype,
    129  Number.prototype,
    130  'The value of Object(Number.NaN).constructor.prototype is expected to equal the value of Number.prototype'
    131 );
    132 
    133 assert.sameValue(Object(1.2345).valueOf(), 1.2345, 'Object(1.2345).valueOf() must return 1.2345');
    134 assert.sameValue(typeof Object(1.2345), "object", 'The value of `typeof Object(1.2345)` is expected to be "object"');
    135 
    136 assert.sameValue(
    137  Object(1.2345).constructor.prototype,
    138  Number.prototype,
    139  'The value of Object(1.2345).constructor.prototype is expected to equal the value of Number.prototype'
    140 );
    141 
    142 assert.sameValue(Object(-1.2345).valueOf(), -1.2345, 'Object(-1.2345).valueOf() must return -1.2345');
    143 assert.sameValue(typeof Object(-1.2345), "object", 'The value of `typeof Object(-1.2345)` is expected to be "object"');
    144 
    145 assert.sameValue(
    146  Object(-1.2345).constructor.prototype,
    147  Number.prototype,
    148  'The value of Object(-1.2345).constructor.prototype is expected to equal the value of Number.prototype'
    149 );
    150 
    151 reportCompare(0, 0);