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

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: Adding 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..fe7f962d4d79124318dcfc4a64ee072591761237
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-events-and-exceptions.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<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.');
+
+streamOnActive = test.step_func(function() {
+ assert_equals(stream.active, true);
+ assert_equals(stream.getVideoTracks().length, 1);
+ assert_equals(stream.getVideoTracks()[0].readyState, 'live');
+ assert_equals(stream.getAudioTracks().length, 0);
+});
+
+streamOnEnded = test.step_func(function() {
+ assert_equals(stream.ended, true);
+});
+
+streamOnRemoveTrack = 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]);
+});
+
+gotStream = test.step_func(function(stream) {
+ stream.onactive = streamOnActive;
+ stream.onended = streamOnEnded;
+
+ var video = document.createElement('video');
+ try {
+ video.src = window.URL.createObjectURL(stream);;
+ } catch(e) {
+ assert_unreached('Exception plugging stream to <video>: ' + e);
+ }
+
+ removeTrack(stream);
+ test.done();
+});
+
+var canvas = document.createElement('canvas');
+var stream;
+try {
+ stream = canvas.captureStream();
+ gotStream(stream);
+} catch (e) {
+ assert_unreached('Exception calling captureStream(): ' + e);
+}
+
+</script>

Powered by Google App Engine
This is Rietveld 408576698