31 lines
654 B
JavaScript

class Tripler {
static triple(n=1) {
return n * 3;
}
static toString() {
return '3' + super.toString() + '3';
}
}
class MegaTripler extends Tripler {
static triple(n=1) {
return super.triple(n) * super.triple(n);
}
}
var tripler = new Tripler();
expect(Tripler.triple()).toBe(3);
expect(Tripler.triple(2)).toBe(6);
expect(tripler.triple).toBeUndefined();
expect(Tripler.toString()).toBe('3' + Object.toString.call(Tripler) + '3');
var mega = new MegaTripler();
expect(MegaTripler.triple(2)).toBe(36);
expect(mega.triple).toBeUndefined();
expect(MegaTripler.toString()).toBe('3' + Object.toString.call(MegaTripler) + '3');