ES6 classes: Invalid test for constructor property
authorrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 May 2015 19:22:38 +0000 (19:22 +0000)
committerrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 May 2015 19:22:38 +0000 (19:22 +0000)
https://bugs.webkit.org/show_bug.cgi?id=144278

Reviewed by Darin Adler.

Fixed the test. The constructors of two distinct classes should definitely be distinct.

* js/class-syntax-default-constructor-expected.txt:
* js/script-tests/class-syntax-default-constructor.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@183758 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/js/class-syntax-default-constructor-expected.txt
LayoutTests/js/script-tests/class-syntax-default-constructor.js

index c1a077ad77ed0608beb3f014261e0e597488959a..7208eaa9b6bdd08077bb3afd1eb917dc1d19de82 100644 (file)
@@ -1,3 +1,15 @@
+2015-05-04  Ryosuke Niwa  <rniwa@webkit.org>
+
+        ES6 classes: Invalid test for constructor property
+        https://bugs.webkit.org/show_bug.cgi?id=144278
+
+        Reviewed by Darin Adler.
+
+        Fixed the test. The constructors of two distinct classes should definitely be distinct.
+
+        * js/class-syntax-default-constructor-expected.txt:
+        * js/script-tests/class-syntax-default-constructor.js:
+
 2015-05-04  Ryosuke Niwa  <rniwa@webkit.org>
 
         new super should be a syntax error
 2015-05-04  Ryosuke Niwa  <rniwa@webkit.org>
 
         new super should be a syntax error
index dba988e97364ffcfd4a2a1da74d9baec7b3571ac..0a0815a4fbfd5282c539df49107f0f61989172e6 100644 (file)
@@ -11,7 +11,7 @@ PASS new B instanceof A; new B instanceof A is true
 PASS B() threw exception TypeError: Cannot call a class constructor.
 PASS B.prototype.constructor.name is "B"
 PASS A !== B is true
 PASS B() threw exception TypeError: Cannot call a class constructor.
 PASS B.prototype.constructor.name is "B"
 PASS A !== B is true
-FAIL A.prototype.constructor should be function B() { super(...arguments); }. Was function A() { }.
+PASS A.prototype.constructor is not B.prototype.constructor
 PASS new (class extends (class { constructor(a, b) { return [a, b]; } }) {})(1, 2) is [1, 2]
 PASS successfullyParsed is true
 
 PASS new (class extends (class { constructor(a, b) { return [a, b]; } }) {})(1, 2) is [1, 2]
 PASS successfullyParsed is true
 
index c2cbcee2b1a8560ecaf0fe3227b89c0dd2a680d3..cf4f60ce50ba333da0a37fae3515493fcd23d320 100644 (file)
@@ -12,7 +12,7 @@ shouldBeTrue('new B instanceof A; new B instanceof A');
 shouldThrow('B()', '"TypeError: Cannot call a class constructor"');
 shouldBe('B.prototype.constructor.name', '"B"');
 shouldBeTrue('A !== B');
 shouldThrow('B()', '"TypeError: Cannot call a class constructor"');
 shouldBe('B.prototype.constructor.name', '"B"');
 shouldBeTrue('A !== B');
-shouldBe('A.prototype.constructor', 'B.prototype.constructor');
+shouldNotBe('A.prototype.constructor', 'B.prototype.constructor');
 shouldBe('new (class extends (class { constructor(a, b) { return [a, b]; } }) {})(1, 2)', '[1, 2]');
 
 var successfullyParsed = true;
 shouldBe('new (class extends (class { constructor(a, b) { return [a, b]; } }) {})(1, 2)', '[1, 2]');
 
 var successfullyParsed = true;