js/src/jit-test/tests/proxy/testDirectProxyGetOwnPropertyDescriptor10.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 // Return the descriptor returned by the trap
     2 var target = {};
     3 Object.defineProperty(target, 'foo', {
     4     value: 'bar',
     5     writable: true,
     6     enumerable: false,
     7     configurable: true
     8 });
     9 var desc = {
    10     value: 'baz',
    11     writable: false,
    12     enumerable: true,
    13     configurable: true
    14 };
    15 var desc1 = Object.getOwnPropertyDescriptor(new Proxy(target, {
    16     getOwnPropertyDescriptor: function (target, name) {
    17         return desc;
    18     }
    19 }), 'foo');
    20 assertEq(desc1 == desc, false);
    21 assertEq(desc1.value, 'baz');
    22 assertEq(desc1.writable, false);
    23 assertEq(desc1.enumerable, true);
    24 assertEq(desc1.configurable, true);
    26 var desc = {};
    27 var desc1 = Object.getOwnPropertyDescriptor(new Proxy(target, {
    28     getOwnPropertyDescriptor: function (target, name) {
    29         return desc;
    30     }
    31 }), 'foo');
    32 assertEq(desc1 == desc, false);
    33 assertEq(desc1.value, undefined);
    34 assertEq(desc1.writable, false);
    35 assertEq(desc1.enumerable, false);
    36 assertEq(desc1.configurable, false);

mercurial