Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(434)

Side by Side Diff: test/mjsunit/harmony/spread-call-new.js

Issue 938443002: [es6] implement spread calls (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: rebase + clang-format Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 // Flags: --harmony-spreadcalls
6
7 (function testNonConstructorStrict() {
8 "use strict";
9 assertThrows(function() {
10 return new Math.cos(...[1,2,3]);
11 }, TypeError);
12
13 assertThrows(function() {
14 var CallNull = null;
15 return new CallNull(...[1,2,3]);
16 }, TypeError);
17 })();
18
19
20 (function testNonConstructorSloppy() {
21 assertThrows(function() {
22 return new Math.cos(...[1,2,3]);
23 }, TypeError);
24
25 assertThrows(function() {
26 var CallNull = null;
27 return new CallNull(...[1,2,3]);
28 }, TypeError);
29 })();
30
31
32 (function testConstructStrict() {
33 "use strict";
34 function TestClass(a, b, c) {
35 this.wasCalled = true;
36 this.args = [a, b, c];
37 }
38 TestClass.prototype.method = function() {
39 return this.args;
40 }
41
42 assertInstanceof(new TestClass(...[1, 2, 3]), TestClass);
43 assertEquals([1, 2, 3], (new TestClass(...[1, 2, 3])).method());
44 assertEquals([1, 2, 3], (new TestClass(...[1, 2, 3])).args);
45 assertTrue((new TestClass(...[1, 2, 3])).wasCalled);
46 })();
47
48
49 (function testConstructSloppy() {
50 function TestClass(a, b, c) {
51 this.wasCalled = true;
52 this.args = [a, b, c];
53 }
54 TestClass.prototype.method = function() {
55 return this.args;
56 }
57
58 assertInstanceof(new TestClass(...[1, 2, 3]), TestClass);
59 assertEquals([1, 2, 3], (new TestClass(...[1, 2, 3])).method());
60 assertEquals([1, 2, 3], (new TestClass(...[1, 2, 3])).args);
61 assertTrue((new TestClass(...[1, 2, 3])).wasCalled);
62 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698