mirror of
https://github.com/tc39/test262.git
synced 2025-05-11 10:20:35 +02:00
sourceRevisionAtLastExport: 33f2fb0e53d135f0ee17cfccd9d993eb2a6f47de targetRevisionAtLastExport: 31340cbd9add103f586d501b0c3354b7b182abc0
38 lines
971 B
JavaScript
38 lines
971 B
JavaScript
// 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.
|
|
|
|
(function StoreToSuper () {
|
|
"use strict";
|
|
class A {
|
|
s() {
|
|
super.bla = 10;
|
|
}
|
|
};
|
|
|
|
let a = new A();
|
|
(new A).s.call(a);
|
|
assertEquals(10, a.bla);
|
|
assertThrows(function() { (new A).s.call(undefined); }, TypeError);
|
|
assertThrows(function() { (new A).s.call(42); }, TypeError);
|
|
assertThrows(function() { (new A).s.call(null); }, TypeError);
|
|
assertThrows(function() { (new A).s.call("abc"); }, TypeError);
|
|
})();
|
|
|
|
|
|
(function LoadFromSuper () {
|
|
"use strict";
|
|
class A {
|
|
s() {
|
|
return super.bla;
|
|
}
|
|
};
|
|
|
|
let a = new A();
|
|
assertSame(undefined, (new A).s.call(a));
|
|
assertSame(undefined, (new A).s.call(undefined));
|
|
assertSame(undefined, (new A).s.call(42));
|
|
assertSame(undefined, (new A).s.call(null));
|
|
assertSame(undefined, (new A).s.call("abc"));
|
|
})();
|