babel/test/core/fixtures/esnext/es6-classes/anonymous-class.js
2015-03-28 01:21:48 +11:00

30 lines
523 B
JavaScript

var Animal = class {
sayHi() {
return 'Hi, I am a '+this.type()+'.';
}
static getName() {
return 'Animal';
}
};
var Dog = class extends Animal {
type() { return 'dog'; }
sayHi() {
return super.sayHi() + ' WOOF!';
}
static getName() {
return super.getName() + '/Dog';
}
};
assert.equal(new Dog().sayHi(), 'Hi, I am a dog. WOOF!');
assert.equal(Dog.getName(), 'Animal/Dog');
var count = 0;
var Cat = class extends (function(){ count++; return Animal; })() {};
assert.equal(count, 1);