33 lines
679 B
JavaScript
33 lines
679 B
JavaScript
class MethodsA {
|
|
ma() {}
|
|
}
|
|
|
|
class MethodsB extends MethodsA {
|
|
mb() {}
|
|
}
|
|
|
|
class MethodsC extends MethodsB {
|
|
mc() {}
|
|
}
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
var a = new MethodsA();
|
|
var b = new MethodsB();
|
|
var c = new MethodsC();
|
|
|
|
var pa = Object.getPrototypeOf(a);
|
|
var pb = Object.getPrototypeOf(b);
|
|
var pc = Object.getPrototypeOf(c);
|
|
|
|
assertNoOwnProperties(a);
|
|
assertNoOwnProperties(b);
|
|
assertNoOwnProperties(c);
|
|
|
|
assertHasOwnProperty(pa, 'ma');
|
|
assertLacksOwnProperty(pa, 'mb', 'mc');
|
|
assertHasOwnProperty(pb, 'mb');
|
|
assertLacksOwnProperty(pb, 'ma', 'mc');
|
|
assertHasOwnProperty(pc, 'mc');
|
|
assertLacksOwnProperty(pc, 'ma', 'mb');
|