dom/browser-element/mochitest/priority/test_Visibility.html

Wed, 31 Dec 2014 06:55:50 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:55:50 +0100
changeset 2
7e26c7da4463
permissions
-rw-r--r--

Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2

     1 <!DOCTYPE HTML>
     2 <html>
     3 <!--
     4 Test that setVisible() changes a process's priority.
     5 -->
     6 <head>
     7   <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
     8   <script type="application/javascript" src="../browserElementTestHelpers.js"></script>
     9   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
    10 </head>
    11 <body>
    13 <script type="application/javascript;version=1.7">
    14 "use strict";
    16 SimpleTest.waitForExplicitFinish();
    17 browserElementTestHelpers.setEnabledPref(true);
    18 browserElementTestHelpers.addPermission();
    19 browserElementTestHelpers.enableProcessPriorityManager();
    21 function runTest() {
    22   var iframe = document.createElement('iframe');
    23   iframe.setAttribute('mozbrowser', true);
    24   iframe.src = browserElementTestHelpers.emptyPage1;
    26   var childID = null;
    27   expectOnlyOneProcessCreated().then(function(chid) {
    28     childID = chid;
    29     return Promise.all(
    30       [expectPriorityChange(childID, 'FOREGROUND'),
    31        expectMozbrowserEvent(iframe, 'loadend')]);
    32   }).then(function() {
    33     // Mark the frame as not visible.  This should cause its priority to drop
    34     // to BACKGROUND.
    35     var p = expectPriorityChange(childID, 'BACKGROUND');
    36     iframe.setVisible(false);
    37     return p;
    38   }).then(function() {
    39     // Mark the frame as visible again.  This should cause its priority change
    40     // back to FOREGROUND.
    41     var p = expectPriorityChange(childID, 'FOREGROUND');
    42     iframe.setVisible(true);
    43     return p;
    44   }).then(SimpleTest.finish);
    46   document.body.appendChild(iframe);
    47 }
    49 addEventListener('testready', runTest);
    50 </script>
    51 </body>
    52 </html>

mercurial