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 | 5 |
8 var properties = | 6 var properties = |
9 ["bla", "0", 1, Symbol(), {[Symbol.toPrimitive]() {return "a"}}]; | 7 ["bla", "0", 1, Symbol(), {[Symbol.toPrimitive]() {return "a"}}]; |
10 | 8 |
11 | 9 |
12 function TestForwarding(handler, myDelete, shouldThrow) { | 10 function TestForwarding(handler, myDelete, shouldThrow) { |
13 var target = {}; | 11 var target = {}; |
14 var proxy = new Proxy(target, handler); | 12 var proxy = new Proxy(target, handler); |
15 | 13 |
16 assertFalse(target.hasOwnProperty("doesnotexist")); | 14 assertFalse(target.hasOwnProperty("doesnotexist")); |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
181 | 179 |
182 | 180 |
183 TestTrappingFalsish( | 181 TestTrappingFalsish( |
184 (o, p) => delete o[p], false); | 182 (o, p) => delete o[p], false); |
185 TestTrappingFalsish( | 183 TestTrappingFalsish( |
186 (o, p) => Reflect.deleteProperty(o, p), false); | 184 (o, p) => Reflect.deleteProperty(o, p), false); |
187 TestTrappingFalsish( | 185 TestTrappingFalsish( |
188 (o, p) => {"use strict"; return delete o[p]}, true); | 186 (o, p) => {"use strict"; return delete o[p]}, true); |
189 TestTrappingFalsish( | 187 TestTrappingFalsish( |
190 (o, p) => {"use strict"; return Reflect.deleteProperty(o, p)}, false); | 188 (o, p) => {"use strict"; return Reflect.deleteProperty(o, p)}, false); |
OLD | NEW |