| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Flags: --harmony-proxies --harmony-reflect | |
| 6 | |
| 7 var target = { target: 1 }; | 5 var target = { target: 1 }; |
| 8 target.__proto__ = {}; | 6 target.__proto__ = {}; |
| 9 var handler = { handler: 1 }; | 7 var handler = { handler: 1 }; |
| 10 var proxy = new Proxy(target, handler); | 8 var proxy = new Proxy(target, handler); |
| 11 | 9 |
| 12 assertSame(Object.getPrototypeOf(proxy), target.__proto__ ); | 10 assertSame(Object.getPrototypeOf(proxy), target.__proto__ ); |
| 13 | 11 |
| 14 | 12 |
| 15 assertThrows(function() { Object.setPrototypeOf(proxy, undefined) }, TypeError); | 13 assertThrows(function() { Object.setPrototypeOf(proxy, undefined) }, TypeError); |
| 16 assertThrows(function() { Object.setPrototypeOf(proxy, 1) }, TypeError); | 14 assertThrows(function() { Object.setPrototypeOf(proxy, 1) }, TypeError); |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 121 assertThrows(() => {Reflect.setPrototypeOf(proxy2, prototype)}, TypeError); | 119 assertThrows(() => {Reflect.setPrototypeOf(proxy2, prototype)}, TypeError); |
| 122 })(); | 120 })(); |
| 123 | 121 |
| 124 (function testProxyTrapReturnsFalse() { | 122 (function testProxyTrapReturnsFalse() { |
| 125 var handler = {}; | 123 var handler = {}; |
| 126 handler.setPrototypeOf = () => false; | 124 handler.setPrototypeOf = () => false; |
| 127 var target = new Proxy({}, {isExtensible: () => assertUnreachable()}); | 125 var target = new Proxy({}, {isExtensible: () => assertUnreachable()}); |
| 128 var object = new Proxy(target, handler); | 126 var object = new Proxy(target, handler); |
| 129 assertFalse(Reflect.setPrototypeOf(object, {})); | 127 assertFalse(Reflect.setPrototypeOf(object, {})); |
| 130 })(); | 128 })(); |
| OLD | NEW |