content/base/test/test_xbl_userdata.xhtml

Thu, 15 Jan 2015 21:03:48 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 21:03:48 +0100
branch
TOR_BUG_9701
changeset 11
deefc01c0e14
permissions
-rw-r--r--

Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)

     1 <!DOCTYPE HTML>
     2 <html xmlns="http://www.w3.org/1999/xhtml">
     3 <head>
     4   <title>Test for getUserData/setUserData support in XBL</title>
     5   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     6   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     8 <style type="text/css">
     9 #t {
    10 -moz-binding: url(#xbl);
    11 }
    12 </style>
    14 <bindings xmlns="http://www.mozilla.org/xbl">
    15 <binding id="xbl" inheritstyle="false">
    16 <implementation><constructor><![CDATA[
    17   this.textContent = !!(this.getUserData && this.setUserData);
    18 ]]></constructor></implementation>
    19 </binding>
    20 </bindings>
    22 </head>
    23 <body>
    24 <p id="display"></p>
    26 <pre id="test">
    27 <script class="testbody">
    28 <![CDATA[
    29 "use strict";
    31 var url = 'data:text/html;charset=utf-8,' +
    32           encodeURIComponent('<div id=t style="-moz-binding:url(' + location + '#xbl)"></div>');
    34 SimpleTest.waitForExplicitFinish();
    35 addLoadEvent(test1);
    37 function test1() {
    38   var iframe = document.createElement('iframe');
    39   iframe.src = url;
    40   iframe.onload = function() {
    41     var t = iframe.contentWindow.t;
    42     is(!!(t.getUserData || t.setUserData), false,
    43        "getUserData and setUserData should not be visible from the regular content");
    44     is(t.textContent, "true",
    45        "getUserData and setUserData should be visible from XBL");
    46     document.body.removeChild(iframe);
    47     SimpleTest.finish();
    48   };
    49   document.body.appendChild(iframe);
    50 }
    52 ]]>
    53 </script>
    54 </pre>
    55 </body>
    56 </html>

mercurial