trap-is-not-callable.js (764B)
1 // Copyright (C) 2015 the V8 project authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 /*--- 4 es6id: 9.5.3 5 description: > 6 Throws a TypeError exception if trap is not callable. 7 info: | 8 [[IsExtensible]] ( ) 9 10 ... 11 1. Let handler be the value of the [[ProxyHandler]] internal slot of O. 12 ... 13 5. Let trap be GetMethod(handler, "isExtensible"). 14 ... 15 7.3.9 GetMethod (O, P) 16 ... 17 2. Let func be GetV(O, P). 18 5. If IsCallable(func) is false, throw a TypeError exception. 19 ... 20 features: [Proxy] 21 ---*/ 22 23 24 var target = {}; 25 var p = new Proxy(target, { 26 isExtensible: {} 27 }); 28 29 assert.throws(TypeError, function() { 30 Object.isExtensible(p); 31 }); 32 33 reportCompare(0, 0);