Index: test/mjsunit/harmony/proxies-object-assign.js |
diff --git a/test/mjsunit/harmony/proxies-object-assign.js b/test/mjsunit/harmony/proxies-object-assign.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..154f8c15f680cef95bbef11483d564181d8c0bcc |
--- /dev/null |
+++ b/test/mjsunit/harmony/proxies-object-assign.js |
@@ -0,0 +1,30 @@ |
+// 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 handler = { |
+ ownKeys: function(t) { return ["a", "b"]; }, |
+ getOwnPropertyDescriptor: function(t, p) { |
+ return {enumerable: true, configurable: true} |
+ }, |
+ get: function(t, p) { |
+ return 1; |
+ } |
+}; |
+ |
+var proxy = new Proxy({}, handler); |
+ |
+var o = {}; |
+ |
+Object.assign(o, proxy); |
+ |
+assertEquals({"a": 1, "b": 1}, o); |
+ |
+(function TestStringSources() { |
+ var source = "abc"; |
+ var target = {}; |
+ Object.assign(target, source); |
+ assertEquals({0: "a", 1: "b", 2: "c"}, target); |
+})(); |