tor-browser

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

arg-non-symbol.js (1084B)


      1 // Copyright (C) 2016 the V8 project authors. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 /*---
      4 esid: sec-symbol.keyfor
      5 description: Called with a non-symbol argument
      6 info: |
      7    1. If Type(sym) is not Symbol, throw a TypeError exception.
      8 features: [Symbol]
      9 ---*/
     10 
     11 assert.sameValue(typeof Symbol.keyFor, 'function');
     12 
     13 assert.throws(TypeError, function() {
     14  Symbol.keyFor(null);
     15 }, 'null');
     16 
     17 assert.throws(TypeError, function() {
     18  Symbol.keyFor(undefined);
     19 }, 'undefined');
     20 
     21 assert.throws(TypeError, function() {
     22  Symbol.keyFor('1');
     23 }, 'number');
     24 
     25 assert.throws(TypeError, function() {
     26  Symbol.keyFor('');
     27 }, 'string');
     28 
     29 assert.throws(TypeError, function() {
     30  Symbol.keyFor({});
     31 }, 'ordinary object');
     32 
     33 assert.throws(TypeError, function() {
     34  Symbol.keyFor([]);
     35 }, 'array exotic object');
     36 
     37 assert.throws(TypeError, function() {
     38  Symbol.keyFor(arguments);
     39 }, 'arguments exotic object');
     40 
     41 var subject = Object(Symbol('s'));
     42 
     43 assert.throws(TypeError, function() {
     44  Symbol.keyFor(subject);
     45 }, 'symbol object');
     46 
     47 reportCompare(0, 0);