1 // Copyright 2015 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Flags: --harmony-proxies --harmony-reflect 6 7 8 traps = [ 9 "getPrototypeOf", "setPrototypeOf", "isExtensible", "preventExtensions", 10 "getOwnPropertyDescriptor", "has", "get", "set", "deleteProperty", 11 "defineProperty", "ownKeys", "apply", "construct" 12 ]; 13 // TODO(neis): Fix enumerate. 14 15 var {proxy, revoke} = Proxy.revocable({}, {}); 16 assertEquals(0, revoke.length); 17 18 assertEquals(undefined, revoke()); 19 for (var trap of traps) { 20 assertThrows(() => Reflect[trap](proxy), TypeError); 21 } 22 23 assertEquals(undefined, revoke()); 24 for (var trap of traps) { 25 assertThrows(() => Reflect[trap](proxy), TypeError); 26 } 27