js/src/jit-test/tests/jaeger/testForOps.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 // |jit-test|
     2 // vim: set ts=8 sts=4 et sw=4 tw=99:
     4 function assertObjectsEqual(obj1, obj2) {
     5     assertEq(obj1.a, obj2.a);
     6     assertEq(obj1.b, obj2.b);
     7     assertEq(obj1.c, obj2.c);
     8     assertEq(obj1.d, obj2.d);
     9     assertEq(obj2.a, 1);
    10     assertEq(obj2.b, "bee");
    11     assertEq(obj2.c, "crab");
    12     assertEq(obj2.d, 12);
    13 }
    15 function forName(obj) {
    16     eval('');
    17     var r = { };
    18     for (x in obj)
    19         r[x] = obj[x];
    20     return r;
    21 }
    23 function forGlobalName(obj) {
    24     var r = { };
    25     for (x in obj)
    26         r[x] = obj[x];
    27     return r;
    28 }
    30 function forProp(obj) {
    31     var r = { };
    32     var c = { };
    33     for (c.x in obj)
    34         r[c.x] = obj[c.x];
    35     return r;
    36 }
    38 function forElem(obj, x) {
    39     var r = { };
    40     var c = { };
    41     for (c[x] in obj)
    42         r[c[x]] = obj[c[x]];
    43     return r;
    44 }
    46 function forLocal(obj) {
    47     var r = { };
    48     for (var x in obj)
    49         r[x] = obj[x];
    50     return r;
    51 }
    53 function forArg(obj, x) {
    54     var r = { };
    55     for (x in obj)
    56         r[x] = obj[x];
    57     return r;
    58 }
    60 var obj = { a: 1, b: "bee", c: "crab", d: 12 };
    61 assertObjectsEqual(obj, forName(obj));
    62 assertObjectsEqual(obj, forGlobalName(obj));
    63 assertObjectsEqual(obj, forProp(obj));
    64 assertObjectsEqual(obj, forElem(obj, "v"));
    65 assertObjectsEqual(obj, forLocal(obj));
    66 assertObjectsEqual(obj, forArg(obj));

mercurial