tor-browser

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

set.js (1846B)


      1 // |reftest| module
      2 // Copyright (C) 2016 the V8 project authors. All rights reserved.
      3 // This code is governed by the BSD license found in the LICENSE file.
      4 /*---
      5 esid: sec-module-namespace-exotic-objects-set-p-v-receiver
      6 description: The [[Set]] internal method consistently returns `false`
      7 info: |
      8    1. Return false.
      9 flags: [module]
     10 features: [Reflect, Symbol, Symbol.toStringTag]
     11 ---*/
     12 
     13 import * as ns from './set.js';
     14 export var local1 = null;
     15 var local2 = null;
     16 export { local2 as renamed };
     17 export { local1 as indirect } from './set.js';
     18 var sym = Symbol('test262');
     19 
     20 assert.sameValue(Reflect.set(ns, 'local1'), false, 'Reflect.set: local1');
     21 assert.throws(TypeError, function() {
     22  ns.local1 = null;
     23 }, 'AssignmentExpression: local1');
     24 
     25 assert.sameValue(Reflect.set(ns, 'local2'), false, 'Reflect.set: local2');
     26 assert.throws(TypeError, function() {
     27  ns.local2 = null;
     28 }, 'AssignmentExpression: local2');
     29 
     30 assert.sameValue(Reflect.set(ns, 'renamed'), false, 'Reflect.set: renamed');
     31 assert.throws(TypeError, function() {
     32  ns.renamed = null;
     33 }, 'AssignmentExpression: renamed');
     34 
     35 assert.sameValue(Reflect.set(ns, 'indirect'), false, 'Reflect.set: indirect');
     36 assert.throws(TypeError, function() {
     37  ns.indirect = null;
     38 }, 'AssignmentExpression: indirect');
     39 
     40 assert.sameValue(Reflect.set(ns, 'default'), false, 'Reflect.set: default');
     41 assert.throws(TypeError, function() {
     42  ns.default = null;
     43 }, 'AssignmentExpression: default');
     44 
     45 assert.sameValue(
     46  Reflect.set(ns, Symbol.toStringTag),
     47  false,
     48  'Reflect.set: Symbol.toStringTag'
     49 );
     50 assert.throws(TypeError, function() {
     51  ns[Symbol.toStringTag] = null;
     52 }, 'AssignmentExpression: Symbol.toStringTag');
     53 
     54 assert.sameValue(Reflect.set(ns, sym), false, 'Reflect.set: sym');
     55 assert.throws(TypeError, function() {
     56  ns[sym] = null;
     57 }, 'AssignmentExpression: sym');
     58 
     59 reportCompare(0, 0);