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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/mediacapturefromelement/HTMLMediaElementCapture-creation.html

Issue 1522463003: Refactor resource load and resource selection algorithms as per spec (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added tests using internals.idl Created 4 years, 9 months 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 unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src=../../resources/testharness.js></script> 2 <script src=../../resources/testharness.js></script>
3 <script src=../../resources/testharnessreport.js></script> 3 <script src=../../resources/testharnessreport.js></script>
4 <script> 4 <script>
5 // Run createStream() on <video>s and <audio>s. 5 // Run createStream() on <video>s and <audio>s.
6 6
7 test(function() { 7 test(function() {
8 var video = document.createElement('video'); 8 var video = document.createElement('video');
9 assert_throws("NotSupportedError", function () { video.captureStream() }, 9 assert_throws("NotSupportedError", function () { video.captureStream() },
10 "captureStream() cannot be created out of a source-less <video>" ); 10 "captureStream() cannot be created out of a source-less <video>" );
11 }, 'check that captureStream() raises an exception on a <video> with no source.' ); 11 }, 'check that captureStream() raises an exception on a <video> with no source.' );
12 12
13 test(function() { 13 test(function() {
14 var audio = document.createElement('audio'); 14 var audio = document.createElement('audio');
15 assert_throws("NotSupportedError", function () { audio.captureStream() }, 15 assert_throws("NotSupportedError", function () { audio.captureStream() },
16 "captureStream() cannot be created out of a source-less <audio>" ); 16 "captureStream() cannot be created out of a source-less <audio>" );
17 }, 'check that captureStream() raises an exception on an <audio> with no source. '); 17 }, 'check that captureStream() raises an exception on an <audio> with no source. ');
18 18
19 test(function() { 19 test(function() {
20 var video = document.createElement('video'); 20 var video = document.createElement('video');
21 video.src = "file:///super_duper_videos/amazing_video.webm"; 21 video.src = "file:///super_duper_videos/amazing_video.webm";
22 video.load(); 22 video.load();
philipj_slow 2016/03/14 13:03:15 The extra load() after setting src should now be r
Srirama 2016/03/14 15:12:54 Done.
23 var stream = video.captureStream(); 23 video.onloadstart = function() {
24 var stream = video.captureStream();
24 25
25 assert_not_equals(stream, null); 26 assert_not_equals(stream, null);
26 assert_equals(1, stream.getVideoTracks().length); 27 assert_equals(1, stream.getVideoTracks().length);
27 assert_equals(0, stream.getAudioTracks().length); 28 assert_equals(0, stream.getAudioTracks().length);
29 }
28 }, 'check <video> captureStream().'); 30 }, 'check <video> captureStream().');
29 31
30 test(function() { 32 test(function() {
31 var audio = document.createElement('audio'); 33 var audio = document.createElement('audio');
32 audio.src = "file:///super_duper_videos/amazing_audio_file.webm"; 34 audio.src = "file:///super_duper_videos/amazing_audio_file.webm";
33 audio.load(); 35 audio.load();
34 var stream = audio.captureStream(); 36 audio.onloadstart = function() {
37 var stream = audio.captureStream();
35 38
36 // TODO(mcasas): http://crbug.com/575492, implement <audio>.captureStream(). 39 // TODO(mcasas): http://crbug.com/575492, implement <audio>.captureStream().
37 assert_equals(stream, null); 40 assert_equals(stream, null);
41 };
38 }, 'check <audio> captureStream().'); 42 }, 'check <audio> captureStream().');
39 43
40 test(function() { 44 test(function() {
41 var video = document.createElement('video'); 45 var video = document.createElement('video');
42 46
43 const onEncrypted = this.step_func_done(); 47 const onEncrypted = this.step_func_done();
44 48
45 assert_equals(null, video.error); 49 assert_equals(null, video.error);
46 assert_equals(null, video.mediaKeys); 50 assert_equals(null, video.mediaKeys);
47 video.onencrypted = onEncrypted; 51 video.onencrypted = onEncrypted;
48 52
49 navigator.requestMediaKeySystemAccess('org.w3.clearkey', [{}]).then(function(a ccess) { 53 navigator.requestMediaKeySystemAccess('org.w3.clearkey', [{}]).then(function(a ccess) {
50 return access.createMediaKeys(); 54 return access.createMediaKeys();
51 }).then(function(mediaKeys) { 55 }).then(function(mediaKeys) {
52 return video.setMediaKeys(mediaKeys); 56 return video.setMediaKeys(mediaKeys);
53 }).then(function(result) { 57 }).then(function(result) {
54 video.src = "../../media/content/test-encrypted.webm"; 58 video.src = "../../media/content/test-encrypted.webm";
55 video.load(); 59 video.load();
56 assert_throws("NotSupportedError", 60 assert_throws("NotSupportedError",
57 function() { var stream = video.captureStream(); }, 61 function() { var stream = video.captureStream(); },
58 "Cannot create a captureStream() out of a protected <video>" ); 62 "Cannot create a captureStream() out of a protected <video>" );
59 }); 63 });
60 64
61 }, 'check <video> captureStream() fails on an encrypted/protected media'); 65 }, 'check <video> captureStream() fails on an encrypted/protected media');
62 66
63 </script> 67 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698