Home | History | Annotate | Download | only in harmony
      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