dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 function getTestContent()
     2 {
     3   yield "hello";
     4   yield 2+3;
     5   yield 12;
     6   yield null;
     7   yield "complex" + "string";
     8   yield new Object();
     9   yield new Date(1306113544);
    10   yield [1, 2, 3, 4, 5];
    11   let obj = new Object();
    12   obj.foo = 3;
    13   obj.bar = "hi";
    14   obj.baz = new Date(1306113544);
    15   obj.boo = obj;
    16   yield obj;
    18   let recursiveobj = new Object();
    19   recursiveobj.a = recursiveobj;
    20   recursiveobj.foo = new Object();
    21   recursiveobj.foo.bar = "bar";
    22   recursiveobj.foo.backref = recursiveobj;
    23   recursiveobj.foo.baz = 84;
    24   recursiveobj.foo.backref2 = recursiveobj;
    25   recursiveobj.bar = new Object();
    26   recursiveobj.bar.foo = "foo";
    27   recursiveobj.bar.backref = recursiveobj;
    28   recursiveobj.bar.baz = new Date(1306113544);
    29   recursiveobj.bar.backref2 = recursiveobj;
    30   recursiveobj.expando = recursiveobj;
    31   yield recursiveobj;
    33   let obj = new Object();
    34   obj.expando1 = 1;
    35   obj.foo = new Object();
    36   obj.foo.bar = 2;
    37   obj.bar = new Object();
    38   obj.bar.foo = obj.foo;
    39   obj.expando = new Object();
    40   obj.expando.expando = new Object();
    41   obj.expando.expando.obj = obj;
    42   obj.expando2 = 4;
    43   obj.baz = obj.expando.expando;
    44   obj.blah = obj.bar;
    45   obj.foo.baz = obj.blah;
    46   obj.foo.blah = obj.blah;
    47   yield obj;
    49   let diamond = new Object();
    50   let obj = new Object();
    51   obj.foo = "foo";
    52   obj.bar = 92;
    53   obj.backref = diamond;
    54   diamond.ref1 = obj;
    55   diamond.ref2 = obj;
    56   yield diamond;
    58   let doubleref = new Object();
    59   let obj = new Object();
    60   doubleref.ref1 = obj;
    61   doubleref.ref2 = obj;
    62   yield doubleref;
    63 }

mercurial