layout/base/tests/chrome/default_background_window.xul

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/layout/base/tests/chrome/default_background_window.xul	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,60 @@
     1.4 +<?xml version="1.0"?>
     1.5 +<?xml-stylesheet type="text/css" href="chrome://global/skin"?>
     1.6 +<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
     1.7 +                 type="text/css"?>
     1.8 +<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
     1.9 +        onload="runTests()">
    1.10 +  <script type="application/javascript"
    1.11 +          src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
    1.12 +  <script type="text/javascript"
    1.13 +          src="chrome://mochikit/content/tests/SimpleTest/WindowSnapshot.js"></script>
    1.14 +
    1.15 +  <iframe type="content" id="f" src="about:blank" style="border:1px solid black;"/>
    1.16 +
    1.17 +  <script type="application/javascript">
    1.18 +  <![CDATA[
    1.19 +    SimpleTest.waitForExplicitFinish();
    1.20 +
    1.21 +    var imports = [ "SimpleTest", "is", "isnot", "ok" ];
    1.22 +    for each (var name in imports) {
    1.23 +      window[name] = window.opener.wrappedJSObject[name];
    1.24 +    }
    1.25 +    
    1.26 +    function snapshot(win) {
    1.27 +      var el = document.createElementNS("http://www.w3.org/1999/xhtml", "canvas");
    1.28 +      el.width = win.innerWidth;
    1.29 +      el.height = win.innerHeight;
    1.30 +
    1.31 +      var ctx = el.getContext("2d");
    1.32 +      ctx.drawWindow(win, 0, 0,
    1.33 +                     win.innerWidth, win.innerHeight,
    1.34 +                     "rgba(0,0,0,0)", 0);
    1.35 +      return el;
    1.36 +    }
    1.37 +
    1.38 +    var color = '#2468AC';
    1.39 +    var prefs = Components.classes["@mozilla.org/preferences-service;1"]
    1.40 +        .getService(Components.interfaces.nsIPrefBranch);
    1.41 +    prefs.setCharPref('browser.display.background_color', color);
    1.42 +
    1.43 +    function runTests() {
    1.44 +      var f = document.getElementById("f");
    1.45 +
    1.46 +      var testCanvas = snapshot(f.contentWindow);
    1.47 +      prefs.clearUserPref('browser.display.background_color');
    1.48 +
    1.49 +      var refCanvas = snapshot(f.contentWindow);
    1.50 +      var ctx = refCanvas.getContext('2d');
    1.51 +      ctx.fillStyle = color;
    1.52 +      ctx.fillRect(0, 0, refCanvas.width, refCanvas.height);
    1.53 +
    1.54 +      var comparison = compareSnapshots(testCanvas, refCanvas, true);
    1.55 +      ok(comparison[0], "Rendering OK, got " + comparison[1] + ", expected " + comparison[2]);
    1.56 +
    1.57 +      var tester = window.SimpleTest;
    1.58 +      window.close();
    1.59 +      tester.finish();
    1.60 +    }
    1.61 +  ]]>
    1.62 +  </script>
    1.63 +</window>

mercurial