Merge pull request #582 from kruppel/kurt/setter-super

Support use of super inside instance setter.
This commit is contained in:
Sebastian McKenzie
2015-01-30 21:47:24 +11:00
4 changed files with 86 additions and 3 deletions

View File

@@ -2,6 +2,14 @@ class Base {
get sound() {
return 'I am a ' + this.type + '.';
}
get name() {
return this._name;
}
set name(val) {
this._name = val;
}
}
class Animal extends Base {}
@@ -12,6 +20,18 @@ class Cat extends Animal {
get sound() {
return super.sound + ' MEOW!';
}
get name() {
return super.name;
}
set name(val) {
super.name = val + ' Cat';
}
}
assert.equal(new Cat().sound, 'I am a cat. MEOW!');
var cat = new Cat();
assert.equal(cat.sound, 'I am a cat. MEOW!');
cat.name = 'Nyan';
assert.equal(cat.name, 'Nyan Cat');