tor-browser

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

test_background_video_tainted_by_capturestream.html (1309B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>Test Background Video Is Tainted By captureStream</title>
      4 <script src="/tests/SimpleTest/SimpleTest.js"></script>
      5 <script src="manifest.js"></script>
      6 <script src="background_video.js"></script>
      7 <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
      8 <script type="text/javascript">
      9 "use strict";
     10 
     11 var manager = new MediaTestManager;
     12 
     13 function captureVideoAsStream(v) {
     14  v.mozCaptureStream();
     15 }
     16 
     17 startTest({
     18  desc: 'Test Background Video Is Tainted By captureStream',
     19  prefs: [
     20    [ "media.test.video-suspend", true ],
     21    [ "media.suspend-background-video.enabled", true ],
     22    [ "media.suspend-background-video.delay-ms", 1000 ]
     23  ],
     24  tests: gDecodeSuspendTests,
     25  runTest: (test, token) => {
     26    ok(true, `${test.name}`);
     27    let v = appendVideoToDoc(test.name, token);
     28    manager.started(token);
     29 
     30    waitUntilPlaying(v)
     31      .then(() => {
     32        captureVideoAsStream(v);
     33        ok(v.hasSuspendTaint(), "Video is tainted after captured");
     34        return checkVideoDoesntSuspend(v);
     35      })
     36      .then(() => {
     37        ok(true, 'Video ended before decode was suspended');
     38        manager.finished(token);
     39      })
     40      .catch((e) => {
     41        ok(false, 'Test failed: ' + e.toString());
     42        manager.finished(token);
     43      });
     44  }
     45 });
     46 </script>