Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Unified Diff: third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html

Issue 1467103003: Basic use implementation for MediaStream from Canvas: captureStream() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Updated LayoutTests. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html
diff --git a/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html b/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html
new file mode 100644
index 0000000000000000000000000000000000000000..d68c27e96428b97755470aafbb6ad1f840a8bf9c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html>
Justin Novosad 2015/12/03 15:44:37 missing -expected.txt
+<script src=../../resources/testharness.js></script>
+<script src=../../resources/testharnessreport.js></script>
+<script>
+
+var test = async_test('exercises the potential exceptions on ' +
+ 'CanvasCaptureMediaStream and possible events on MediaStream element.');
+
+onStreamActive = test.step_func(function() {
Justin Novosad 2015/12/03 15:44:37 The assertion implementation in testharness.js lea
+ assert_equals(stream.active, true);
+ assert_equals(stream.getVideoTracks().length, 1);
+ assert_equals(stream.getVideoTracks()[0].readyState, 'live');
+ assert_equals(stream.getAudioTracks().length, 0);
+});
+
+onStreamEnded = test.step_func(function() {
+ assert_equals(stream.ended, true);
+});
+
+onStreamRemoveTrack = test.step_func(function() {
+ assert_equals(stream.getVideoTracks().length, 0);
+ assert_equals(stream.getAudioTracks().length, 0);
+});
+
+removeTrack = test.step_func(function(stream) {
+ stream.removeTrack(stream.getVideoTracks()[0]);
+});
+
+onTrackStarted = test.step_func(function() {
+ assert_equals(track.readyState, 'live');
+ assert_equals(track.enabled, true);
+ assert_equals(track.muted, false);
+});
+
+onTrackEnded = test.step_func(function() {
+ assert_equals(track.readyState, 'ended');
+});
+
+gotStream = test.step_func(function(stream) {
+ stream.onactive = onStreamActive;
+ stream.onended = onStreamEnded;
+
+ track = stream.getVideoTracks()[0];
+ track.onstarted = onTrackStarted;
+ track.onended = onTrackEnded;
+
+ var video = document.createElement('video');
+ try {
+ video.src = window.URL.createObjectURL(stream);;
+ } catch(e) {
+ assert_unreached('Exception plugging stream to <video>: ' + e);
+ }
+ video.play();
+
+ removeTrack(stream);
+ test.done();
Justin Novosad 2015/12/03 15:44:37 Maybe I am misunderstanding how this test works, b
esprehn 2015/12/03 18:47:34 Yeah are you sure this is right?
+});
+
+var canvas = document.createElement('canvas');
+var stream;
+var track;
+try {
+ stream = canvas.captureStream();
+} catch (e) {
+ assert_unreached('Exception calling captureStream(): ' + e);
+}
+gotStream(stream);
+
+</script>

Powered by Google App Engine
This is Rietveld 408576698