| Index: test/mjsunit/harmony/classes-experimental.js
|
| diff --git a/test/mjsunit/harmony/classes-experimental.js b/test/mjsunit/harmony/classes-experimental.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..73944b182c607d82801e224c44d9e4c8bb288cf6
|
| --- /dev/null
|
| +++ b/test/mjsunit/harmony/classes-experimental.js
|
| @@ -0,0 +1,35 @@
|
| +// 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.
|
| +//
|
| +// Flags: --experimental-classes --harmony-classes
|
| +
|
| +'use strict';
|
| +
|
| +class Base {
|
| + constructor() {
|
| + let o = new Object();
|
| + o.prp = 1;
|
| + return o;
|
| + }
|
| +}
|
| +
|
| +class Subclass extends Base {
|
| + constructor() {
|
| + try {
|
| + this.prp1 = 3;
|
| + } catch (e) {
|
| + // TODO(dslomov): actually test the exception once TDZ is implemented.
|
| + }
|
| + super();
|
| + assertSame(1, this.prp);
|
| + assertSame(undefined, this.prp1);
|
| + assertFalse(this.hasOwnProperty("prp1"));
|
| + return this;
|
| + }
|
| +}
|
| +
|
| +let s = new Subclass();
|
| +assertSame(1, s.prp);
|
| +assertSame(undefined, s.prp1);
|
| +assertFalse(s.hasOwnProperty("prp1"));
|
|
|