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>