dom/events/test/test_bug855741.html

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 <!DOCTYPE HTML>
     2 <html>
     3 <!--
     4 https://bugzilla.mozilla.org/show_bug.cgi?id=855741
     5 -->
     6 <head>
     7   <title>Test for Bug 855741</title>
     8   <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
     9   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
    10   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
    11 </head>
    12 <body>
    13 <p id="display"></p>
    14 <div id="content" style="display: none">
    15 </div>
    16 <input type="text" id="testTarget"  value="focus">
    17 <pre id="test">
    18 <script class="testbody" type="text/javascript">
    20 /** Test for Bug 855741 **/
    21 function testFocusEvent(event) {
    22   ok(('relatedTarget' in event), 'FocusEvent.relatedTarget exists');
    24   if (event.construct_test == true) {
    25     ok(event.relatedTarget == $("content"), 'FocusEvent.relatedTarget is ' + $("content").id);
    26   }
    27 }
    29 function testUIEvent(event) {
    30   ok((event.detail == 0),
    31      'UIEvent.detail should be 0 in ' + event.target.value + ' event');
    33   ok((event.defaultView == null),
    34      'UIEvent.defaultView should be null in ' + event.target.value + ' event');
    35 }
    37 function testEventType(event, type) {
    38   ok((event.type == type), 'Event.type match: ' + type);
    39 }
    41 function eventhandle(event) {
    42   testFocusEvent(event);
    43   testUIEvent(event);
    44   testEventType(event, event.target.value);
    46   if (event.target.value == 'blur') {
    47     event.target.value = 'focus';
    48   } else {
    49     event.target.value = 'blur';
    50   }
    51 }
    53 //
    54 // event handler:
    55 //
    56 $("testTarget").addEventListener("focus", eventhandle, true);
    57 $("testTarget").addEventListener("blur", eventhandle, true);
    59 //
    60 // FocusEvent structure test
    61 //
    62 $("testTarget").focus();
    63 $("testTarget").blur();
    65 //
    66 // Focus/Blur constructor test
    67 //
    68 var focus_event = new FocusEvent("focus",
    69                                  {bubbles: true,
    70                                   cancelable: true,
    71                                   relatedTarget: $("content")});
    72 focus_event.construct_test = true;
    74 var blur_event = new FocusEvent("blur",
    75                                 {bubbles: true,
    76                                  cancelable: true,
    77                                  relatedTarget: $("content")});
    78 blur_event.construct_test = true;
    80 // create cycle referece for leak test
    81 $("content").foo_focus = focus_event;
    82 $("content").foo_blur = blur_event;
    84 $("testTarget").dispatchEvent(focus_event);
    85 $("testTarget").dispatchEvent(blur_event);
    87 </script>
    88 </pre>
    89 </body>
    90 </html>

mercurial