tor-browser

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

S15.5.2.1_A1_T16.js (4701B)


      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    When "String" is called as part of a new expression, it is a constructor: it initialises the newly created object and
      7    The [[Value]] property of the newly constructed object is set to ToString(value), or to the empty string if value is not supplied
      8 es5id: 15.5.2.1_A1_T16
      9 description: >
     10    Creating string object with "new String()" initialized with .12345
     11    and other numbers
     12 ---*/
     13 
     14 var __str = new String(.12345);
     15 //////////////////////////////////////////////////////////////////////////////
     16 //CHECK#1
     17 if (typeof __str !== "object") {
     18  throw new Test262Error('#1: __str =new String(.12345); typeof __str === "object". Actual: typeof __str ===' + typeof __str);
     19 }
     20 //
     21 //////////////////////////////////////////////////////////////////////////////
     22 
     23 //////////////////////////////////////////////////////////////////////////////
     24 //CHECK#1.5
     25 if (__str.constructor !== String) {
     26  throw new Test262Error('#1.5: __str =new String(.12345); __str.constructor === String. Actual: __str.constructor ===' + __str.constructor);
     27 }
     28 //
     29 //////////////////////////////////////////////////////////////////////////////
     30 
     31 //////////////////////////////////////////////////////////////////////////////
     32 //CHECK#2
     33 if (__str != "0.12345") {
     34  throw new Test262Error('#2: __str =new String(.12345); __str =="0.12345". Actual: __str ==' + __str);
     35 }
     36 //
     37 //////////////////////////////////////////////////////////////////////////////
     38 
     39 __str = new String(.012345);
     40 //////////////////////////////////////////////////////////////////////////////
     41 //CHECK#3
     42 if (typeof __str !== "object") {
     43  throw new Test262Error('#3: __str =new  String(.012345); typeof __str === "object". Actual: typeof __str ===' + typeof __str);
     44 }
     45 //
     46 //////////////////////////////////////////////////////////////////////////////
     47 
     48 //////////////////////////////////////////////////////////////////////////////
     49 //CHECK#2.5
     50 if (__str.constructor !== String) {
     51  throw new Test262Error('#3.5: __str =new  String(.012345); __str.constructor === String. Actual: __str.constructor ===' + __str.constructor);
     52 }
     53 //
     54 //////////////////////////////////////////////////////////////////////////////
     55 
     56 //////////////////////////////////////////////////////////////////////////////
     57 //CHECK#4
     58 if (__str != "0.012345") {
     59  throw new Test262Error('#4: __str =new  String(.012345); __str =="0.012345". Actual: __str ==' + __str);
     60 }
     61 //
     62 //////////////////////////////////////////////////////////////////////////////
     63 
     64 __str = new String(.0012345);
     65 //////////////////////////////////////////////////////////////////////////////
     66 //CHECK#5
     67 if (typeof __str !== "object") {
     68  throw new Test262Error('#5: __str =new  String(.0012345); typeof __str === "object". Actual: typeof __str ===' + typeof __str);
     69 }
     70 //
     71 //////////////////////////////////////////////////////////////////////////////
     72 
     73 //////////////////////////////////////////////////////////////////////////////
     74 //CHECK#5.5
     75 if (__str.constructor !== String) {
     76  throw new Test262Error('#5.5: __str =new  String(.0012345); __str.constructor === String. Actual: __str.constructor ===' + __str.constructor);
     77 }
     78 //
     79 //////////////////////////////////////////////////////////////////////////////
     80 
     81 //////////////////////////////////////////////////////////////////////////////
     82 //CHECK#6
     83 if (__str != "0.0012345") {
     84  throw new Test262Error('#6: __str =new  String(.0012345); __str =="0.0012345". Actual: __str ==' + __str);
     85 }
     86 //
     87 //////////////////////////////////////////////////////////////////////////////
     88 
     89 __str = new String(.00000012345);
     90 //////////////////////////////////////////////////////////////////////////////
     91 //CHECK#7
     92 if (typeof __str !== "object") {
     93  throw new Test262Error('#7: __str =new  String(.00000012345); typeof __str === "object". Actual: typeof __str ===' + typeof __str);
     94 }
     95 //
     96 //////////////////////////////////////////////////////////////////////////////
     97 
     98 //////////////////////////////////////////////////////////////////////////////
     99 //CHECK#7.5
    100 if (__str.constructor !== String) {
    101  throw new Test262Error('#7.5: __str =new  String(.00000012345); __str.constructor === String. Actual: __str.constructor ===' + __str.constructor);
    102 }
    103 //
    104 //////////////////////////////////////////////////////////////////////////////
    105 
    106 //////////////////////////////////////////////////////////////////////////////
    107 //CHECK#8
    108 if (__str != "1.2345e-7") {
    109  throw new Test262Error('#8: __str =new  String(.00000012345); __str =="1.2345e-7". Actual: __str ==' + __str);
    110 }
    111 //
    112 //////////////////////////////////////////////////////////////////////////////
    113 
    114 reportCompare(0, 0);