tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_taintedfilters.html (2728B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=941887
      5 -->
      6 <head>
      7  <title>Test for Bug 941887</title>
      8  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      9  <script src="/tests/SimpleTest/WindowSnapshot.js"></script>
     10  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
     11  <style>
     12    iframe {
     13      width: 500px;
     14      height: 300px;
     15    }
     16  </style>
     17 </head>
     18 <body>
     19 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=941887">Mozilla Bug 941887</a>
     20 <p id="display"></p>
     21 <div id="content">
     22 <iframe id="f1"></iframe>
     23 <iframe id="f2"></iframe>
     24 </div>
     25 <pre id="test">
     26 <script type="application/javascript">
     27 
     28 /** Test for Bug 941887 */
     29 SimpleTest.waitForExplicitFinish();
     30 
     31 var f = [document.getElementById("f1"), document.getElementById("f2")];
     32 
     33 var testList = [
     34  ["file_taintedfilters_feDisplacementMap-untainted-1.svg", "file_taintedfilters_feDisplacementMap-untainted-ref.svg"],
     35 
     36  // Disabled until CORS for feImage is implemented.
     37  // ["file_taintedfilters_feDisplacementMap-untainted-2.svg", "file_taintedfilters_feDisplacementMap-untainted-ref.svg"],
     38 
     39  ["file_taintedfilters_feDisplacementMap-tainted-1.svg", "file_taintedfilters_feDisplacementMap-tainted-ref.svg"],
     40  ["file_taintedfilters_feDisplacementMap-tainted-2.svg", "file_taintedfilters_feDisplacementMap-tainted-ref.svg"],
     41  ["file_taintedfilters_feDisplacementMap-tainted-3.svg", "file_taintedfilters_feDisplacementMap-tainted-ref.svg"],
     42 ];
     43 
     44 var currentTestIndex = 0;
     45 var currentTest = testList[0];
     46 var loaded = [false, false];
     47 
     48 function didLoadIframe(iframe, index) {
     49  if (iframe.contentWindow.location.href == iframe.src) {
     50    loaded[index] = true;
     51    if (loaded[0] && loaded[1]) {
     52      checkCurrentTest();
     53    }
     54  }
     55 }
     56 
     57 f[0].onload = function (e) { didLoadIframe(e.target, 0); }
     58 f[1].onload = function (e) { didLoadIframe(e.target, 1); }
     59 
     60 function loadCurrentTest() {
     61  currentTest = testList[currentTestIndex];
     62  f[0].contentWindow.stop();
     63  f[0].src = currentTest[0];
     64  f[1].contentWindow.stop();
     65  f[1].src = currentTest[1];
     66  loaded = [false, false];
     67 }
     68 
     69 function okEqualSnapshots(c1, c2, msg) {
     70  var [correct, c1url, c2url] = compareSnapshots(c1, c2, true);
     71  if (correct) {
     72    ok(true, msg);
     73  } else {
     74    ok(false, msg + "\nTEST: " + c1url + "\nREFERENCE: " + c1url);
     75  }
     76 }
     77 
     78 function checkCurrentTest() {
     79  okEqualSnapshots(snapshotWindow(f[0].contentWindow),
     80                   snapshotWindow(f[1].contentWindow),
     81                   currentTest[0] + " and " + currentTest[1] + " should match.");
     82 
     83  currentTestIndex++;
     84 
     85  if (currentTestIndex < testList.length)
     86    loadCurrentTest();
     87  else
     88    SimpleTest.finish();
     89 }
     90 
     91 loadCurrentTest();
     92 
     93 </script>
     94 </pre>
     95 </body>
     96 </html>