1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 01:47:34 +00:00

LibJS: Handle "receiver" argument in Reflect.{get,set}()

This commit is contained in:
Linus Groh 2020-06-25 14:00:13 +01:00 committed by Andreas Kling
parent f08aa6324e
commit afcfea2001
7 changed files with 60 additions and 17 deletions

View file

@ -33,6 +33,23 @@ try {
assert(Reflect.get(new String("foo"), 2) === "o");
assert(Reflect.get(new String("foo"), 3) === undefined);
const foo = {
get prop() {
this.getPropCalled = true;
}
};
const bar = {};
Object.setPrototypeOf(bar, foo);
assert(foo.getPropCalled === undefined);
assert(bar.getPropCalled === undefined);
Reflect.get(bar, "prop");
assert(foo.getPropCalled === undefined);
assert(bar.getPropCalled === true);
Reflect.get(bar, "prop", foo);
assert(foo.getPropCalled === true);
assert(bar.getPropCalled === true);
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e);