* Improve get/set helper
* fixtures
* Edge cases
* Add loose edge cases
* Spec compliant
* Add issue case
* Even more edge cases!
* Final updates
* Fix name
* Use Reflect.{get, set} when available
* Avoid block scoping in loose
* Remove semicolon
* Do not redefine a non-enumerable
* Get strictness from call site, not helpers
* Add called assertions
* Classes are always strict
* Update test fixture
20 lines
252 B
JavaScript
20 lines
252 B
JavaScript
"use strict";
|
|
const Base = {
|
|
get test() {
|
|
assert.equal(this, obj);
|
|
return 1;
|
|
}
|
|
};
|
|
|
|
const obj = {
|
|
test: 2,
|
|
|
|
get() {
|
|
return super.test;
|
|
},
|
|
};
|
|
Object.setPrototypeOf(obj, Base);
|
|
|
|
assert.equal(obj.test, 2);
|
|
assert.equal(obj.get(), 1);
|