Correctly set the define property flags during [[Set] in case of Proxy (#4178)

JerryScript-DCO-1.0-Signed-off-by: Peter Gal pgal.usz@partner.samsung.com
This commit is contained in:
Péter Gál
2020-09-02 17:34:15 +02:00
committed by GitHub
parent 074945dafa
commit f03bf9074f
3 changed files with 21 additions and 4 deletions
+13
View File
@@ -138,3 +138,16 @@ try {
} catch (e) {
assert(e instanceof TypeError);
}
/* Setting a new property should be configurable, enumerable, and writable by default
* over a proxy.
*/
var setPropProxy = new Proxy({}, {});
setPropProxy["alma"] = 3;
var desc = Object.getOwnPropertyDescriptor(setPropProxy, "alma");
assert(desc.writable === true);
assert(desc.enumerable === true);
assert(desc.configurable === true);
assert(desc.value === 3);
-3
View File
@@ -822,7 +822,6 @@
<test id="built-ins/Object/prototype/toString/symbol-tag-non-str-builtin.js"><reason></reason></test>
<test id="built-ins/Object/prototype/toString/symbol-tag-non-str-proxy-function.js"><reason></reason></test>
<test id="built-ins/Object/subclass-object-arg.js"><reason></reason></test>
<test id="built-ins/Object/values/order-after-define-property.js"><reason></reason></test>
<test id="built-ins/Promise/all/invoke-resolve-get-error.js"><reason></reason></test>
<test id="built-ins/Promise/all/invoke-resolve-get-once-multiple-calls.js"><reason></reason></test>
<test id="built-ins/Promise/all/invoke-resolve-get-once-no-calls.js"><reason></reason></test>
@@ -995,8 +994,6 @@
<test id="built-ins/Proxy/revocable/target-is-revoked-function-proxy.js"><reason></reason></test>
<test id="built-ins/Proxy/revocable/target-is-revoked-proxy.js"><reason></reason></test>
<test id="built-ins/Proxy/set/call-parameters-prototype-index.js"><reason></reason></test>
<test id="built-ins/Proxy/set/trap-is-missing-receiver-multiple-calls-index.js"><reason></reason></test>
<test id="built-ins/Proxy/set/trap-is-missing-receiver-multiple-calls.js"><reason></reason></test>
<test id="built-ins/Proxy/set/trap-is-missing-target-is-proxy.js"><reason></reason></test>
<test id="built-ins/Proxy/set/trap-is-not-callable-realm.js"><reason></reason></test>
<test id="built-ins/Proxy/set/trap-is-null-target-is-proxy.js"><reason></reason></test>