Index: test/mjsunit/harmony/proxies-enumerate.js |
diff --git a/test/mjsunit/harmony/proxies-enumerate.js b/test/mjsunit/harmony/proxies-enumerate.js |
deleted file mode 100644 |
index 32d6bb5873283500ec98ac6ec2e769601fa33a3f..0000000000000000000000000000000000000000 |
--- a/test/mjsunit/harmony/proxies-enumerate.js |
+++ /dev/null |
@@ -1,64 +0,0 @@ |
-// Copyright 2015 the V8 project authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// Flags: --harmony-proxies |
- |
-var target = { |
- "target_one": 1 |
-}; |
-target.__proto__ = { |
- "target_two": 2 |
-}; |
-var handler = { |
- enumerate: function(target) { |
- function* keys() { |
- yield "foo"; |
- yield "bar"; |
- } |
- return keys(); |
- } |
-} |
- |
-var proxy = new Proxy(target, handler); |
- |
-function TestForIn(receiver, expected) { |
- var result = []; |
- for (var k in receiver) { |
- result.push(k); |
- } |
- assertEquals(expected, result); |
-} |
- |
-TestForIn(proxy, ["foo", "bar"]); |
- |
-// Properly call traps on proxies on the prototype chain. |
-var receiver = { |
- "receiver_one": 1 |
-}; |
-receiver.__proto__ = proxy; |
-// TODO(jkummerow): Needs proper 'has' trap; implement that and enable this! |
-// TestForIn(receiver, ["receiver_one", "foo", "bar"]); |
- |
-// Fall through to default behavior when trap is undefined. |
-handler.enumerate = undefined; |
-TestForIn(proxy, ["target_one", "target_two"]); |
-delete handler.enumerate; |
-TestForIn(proxy, ["target_one", "target_two"]); |
- |
-// Non-string keys must be filtered. |
-function TestNonStringKey(key) { |
- handler.enumerate = function(target) { |
- function* keys() { yield key; } |
- return keys(); |
- } |
- assertThrows("for (var k in proxy) {}", TypeError); |
-} |
- |
-TestNonStringKey(1); |
-TestNonStringKey(3.14); |
-TestNonStringKey(Symbol("foo")); |
-TestNonStringKey({bad: "value"}); |
-TestNonStringKey(null); |
-TestNonStringKey(undefined); |
-TestNonStringKey(true); |