OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <html> | |
3 <head> | |
4 <script src="../../resources/js-test.js"></script> | |
5 </head> | |
6 <body> | |
7 <p id="description"></p> | |
8 <div id="console"></div> | |
9 <canvas id="canvas_source"></canvas> | |
10 <script> | |
11 description("Exercises the potential events on CanvasCaptureMediaStream."); | |
Justin Novosad
2015/12/04 14:45:29
Thanks for cleaning up this test. It is much easie
| |
12 | |
13 var canvas = document.getElementById('canvas_source'); | |
14 var stream; | |
15 var track; | |
16 | |
17 function onVideoPlay() { | |
18 testPassed('Video play callback succeeded.'); | |
19 drawToCanvas(canvas); | |
20 }; | |
21 | |
22 function onVideoCanPlayThrough() { | |
23 testPassed('Video canplaythrough callback succeeded.'); | |
24 finishJSTest(); | |
25 }; | |
26 | |
27 function drawToCanvas(canvas) { | |
28 testPassed('Drawing to canvas.'); | |
29 var ctx = canvas.getContext("2d"); | |
30 ctx.strokeStyle="#FF0204"; | |
31 ctx.beginPath(); | |
32 ctx.moveTo(0,0); | |
33 ctx.lineTo(100, 100); | |
34 ctx.stroke(); | |
35 } | |
36 | |
37 function gotStream() { | |
38 shouldBe('stream.getVideoTracks().length', '1'); | |
39 track = stream.getVideoTracks()[0]; | |
40 shouldBeEqualToString('track.readyState', 'live'); | |
41 | |
42 var video = document.createElement('video'); | |
43 try { | |
44 video.src = window.URL.createObjectURL(stream); | |
45 testPassed('Plugged stream to video tag.'); | |
46 } catch(e) { | |
47 testFailed('Exception plugging stream to <video>: ' + e); | |
48 finishJSTest(); | |
49 } | |
50 video.addEventListener("play", onVideoPlay); | |
51 video.addEventListener("canplaythrough", onVideoCanPlayThrough); | |
52 video.play(); | |
53 }; | |
54 | |
55 try { | |
56 stream = canvas.captureStream(); | |
57 testPassed('Got a stream from canvas.'); | |
58 } catch (e) { | |
59 testFailed('Exception calling captureStream(): ' + e); | |
60 finishJSTest(); | |
Justin Novosad
2015/12/04 14:45:29
Here you are potentially calling finishJSTest befo
Justin Novosad
2015/12/04 14:49:24
FWIW, this ordering does not actually matter other
emircan
2015/12/04 18:49:37
Moving it to the beginning of the file.
| |
61 } | |
62 gotStream(); | |
Justin Novosad
2015/12/04 14:45:29
Should not call this if there was an exception. Al
emircan
2015/12/04 18:49:37
Renaming it to playMediaStream() and moving inside
| |
63 | |
64 window.jsTestIsAsync = true; | |
65 window.successfullyParsed = true; | |
Justin Novosad
2015/12/04 14:45:29
This is not necessary.
emircan
2015/12/04 18:49:37
Done.
| |
66 </script> | |
67 </body> | |
68 </html> | |
OLD | NEW |