Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-avtracks.html |
| diff --git a/third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-avtracks.html b/third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-avtracks.html |
| index 5af7ffae6a23b8740005598d70d856c1ce9423fd..93effa6fe1b45cb56ef4e8af0374c579bfa85e55 100644 |
| --- a/third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-avtracks.html |
| +++ b/third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-avtracks.html |
| @@ -17,25 +17,14 @@ |
| sourceBuffer.appendBuffer(initSegment); |
| test.waitForExpectedEvents(function() |
| { |
| - // TODO(servolk): Find a way to make tests more concise in JS |
| - assert_equals(mediaElement.videoTracks.length, 1, "videoTracks.length"); |
| - assert_equals(mediaElement.videoTracks[0].id, "1", "videoTrack.id"); |
| - assert_equals(mediaElement.videoTracks[0].kind, "main", "videoTrack.kind"); |
| - assert_equals(mediaElement.videoTracks[0].label, "", "videoTrack.label"); |
| - assert_equals(mediaElement.videoTracks[0].language, "eng", "videoTrack.language"); |
| - |
| - assert_equals(mediaElement.audioTracks.length, 1, "audioTracks.length"); |
| - assert_equals(mediaElement.audioTracks[0].id, "2", "audioTrack.id"); |
| - assert_equals(mediaElement.audioTracks[0].kind, "main", "audioTrack.kind"); |
| - assert_equals(mediaElement.audioTracks[0].label, "", "audioTrack.label"); |
| - assert_equals(mediaElement.audioTracks[0].language, "eng", "audioTrack.language"); |
| - |
| assert_equals(sourceBuffer.videoTracks.length, 1, "videoTracks.length"); |
| assert_equals(sourceBuffer.videoTracks[0].id, "1", "videoTrack.id"); |
| assert_equals(sourceBuffer.videoTracks[0].kind, "main", "videoTrack.kind"); |
| assert_equals(sourceBuffer.videoTracks[0].label, "", "videoTrack.label"); |
| assert_equals(sourceBuffer.videoTracks[0].language, "eng", "videoTrack.language"); |
| assert_equals(sourceBuffer.videoTracks[0].sourceBuffer, sourceBuffer, "videoTrack.sourceBuffer"); |
| + // The first video track is selected by default. |
| + assert_true(sourceBuffer.videoTracks[0].selected, "sourceBuffer.videoTracks[0].selected"); |
| assert_equals(sourceBuffer.audioTracks.length, 1, "audioTracks.length"); |
| assert_equals(sourceBuffer.audioTracks[0].id, "2", "audioTrack.id"); |
| @@ -43,10 +32,48 @@ |
| assert_equals(sourceBuffer.audioTracks[0].label, "", "audioTrack.label"); |
| assert_equals(sourceBuffer.audioTracks[0].language, "eng", "audioTrack.language"); |
| assert_equals(sourceBuffer.audioTracks[0].sourceBuffer, sourceBuffer, "audioTrack.sourceBuffer"); |
| + // The first audio track is enabled by default. |
| + assert_true(sourceBuffer.audioTracks[0].enabled, "sourceBuffer.audioTracks[0].enabled"); |
| + |
| + assert_equals(mediaElement.videoTracks.length, 1, "videoTracks.length"); |
| + assert_equals(mediaElement.videoTracks[0], sourceBuffer.videoTracks[0], "mediaElement.videoTrack == sourceBuffer.videoTrack"); |
| + |
| + assert_equals(mediaElement.audioTracks.length, 1, "audioTracks.length"); |
| + assert_equals(mediaElement.audioTracks[0], sourceBuffer.audioTracks[0], "mediaElement.audioTrack == sourceBuffer.audioTrack"); |
| + |
| + test.done(); |
| + }); |
| + }, "MediaSource media track properties"); |
| + mediasource_testafterdataloaded(function(test, mediaElement, mediaSource, segmentInfo, sourceBuffer, mediaData) |
| + { |
| + var initSegment = MediaSourceUtil.extractSegmentData(mediaData, segmentInfo.init); |
| + test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.'); |
| + sourceBuffer.appendBuffer(initSegment); |
| + test.waitForExpectedEvents(function() |
| + { |
| + assert_equals(mediaElement.videoTracks.length, 1, "videoTracks.length"); |
| + assert_equals(mediaElement.audioTracks.length, 1, "audioTracks.length"); |
| + assert_equals(sourceBuffer.videoTracks.length, 1, "videoTracks.length"); |
| + assert_equals(sourceBuffer.audioTracks.length, 1, "audioTracks.length"); |
| + |
| + test.expectEvent(mediaSource.sourceBuffers, 'removesourcebuffer', 'SourceBuffer removed.'); |
| + // Removing enabled audio track and selected video track should fire 'change' events on mediaElement track lists. |
|
wolenetz
2016/03/31 19:06:15
Please also check for all of the HTMLME.{audio,vid
servolk
2016/03/31 22:39:51
Done.
|
| + test.expectEvent(mediaElement.audioTracks, 'change', 'mediaElement.audioTracks changed.'); |
| + test.expectEvent(mediaElement.videoTracks, 'change', 'mediaElement.videoTracks changed.'); |
| + mediaSource.removeSourceBuffer(sourceBuffer); |
| + }); |
| + |
| + test.waitForExpectedEvents(function() |
| + { |
| + assert_equals(mediaSource.sourceBuffers.length, 0, "mediaSource.sourceBuffers.length"); |
| + assert_equals(mediaElement.videoTracks.length, 0, "videoTracks.length"); |
| + assert_equals(mediaElement.audioTracks.length, 0, "audioTracks.length"); |
| + assert_equals(sourceBuffer.videoTracks.length, 0, "videoTracks.length"); |
| + assert_equals(sourceBuffer.audioTracks.length, 0, "audioTracks.length"); |
| test.done(); |
| }); |
| - }, "MediaSource audio tracks"); |
| + }, "MediaSource media tracks must be removed when a SourceBuffer is removed"); |
| </script> |
| </body> |
| </html> |