Index: test/perf-test/Object/assign.js |
diff --git a/test/perf-test/Object/assign.js b/test/perf-test/Object/assign.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0351c177e6625767eb84420cb21b081f70ee264a |
--- /dev/null |
+++ b/test/perf-test/Object/assign.js |
@@ -0,0 +1,39 @@ |
+// Copyright 2014 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. |
+ |
+ |
+var SetBenchmark = new BenchmarkSuite('ObjectAssign', [1000], [ |
+ new Benchmark('ObjectAssignSimple2', false, false, 0, ObjectAssignSimple2Test, ObjectAssignSimple2Setup, ObjectAssignSimple2TearDown), |
+]); |
+ |
+ |
+var target; |
+var source1; |
+var source2; |
+ |
+function ObjectAssignSimple2Setup() { |
+ // Based on http://jsperf.com/extend-vs-defaults/ |
+ target = {}; |
+ source1 = { |
+ one: true, |
+ two: true, |
+ three: true, |
+ four: true |
+ }; |
+ source2 = { |
+ one: false, |
+ two: false, |
+ five: true |
+ }; |
+} |
+ |
+ |
+function ObjectAssignSimple2TearDown() { |
+ source1 = source2 = target = null; |
+} |
+ |
+ |
+function ObjectAssignSimple2Test() { |
+ Object.assign(target, source2, source1); |
+} |