tor-browser

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

S8.12.8_A3.js (922B)


      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    We overload valueOf method so it return non Primitive value
      7    Thus [[DefaultValue]] must return Object.toString() value
      8 es5id: 8.12.8_A3
      9 description: >
     10    Try to overload toString method, that returned Primitive, and
     11    valueOf method, that returned new Object
     12 ---*/
     13 
     14 try
     15 {
     16  var __obj = {
     17    toString: function() {
     18      return "1"
     19    },
     20    valueOf: function() {
     21      return new Object();
     22    }
     23  }
     24 
     25  assert.sameValue(
     26    Number(__obj),
     27    1,
     28    'Number("{toString: function() {return "1"}, valueOf: function() {return new Object();}}) must return 1'
     29  );
     30 }
     31 catch (e)
     32 {
     33  throw new Test262Error('#1.2: var __obj = {toNumber: function() {return "1"}, valueOf: function() {return new Object();}}; Number(__obj) === 1. Actual: ' + (e));
     34 }
     35 
     36 reportCompare(0, 0);