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 131e1d05683727ecd9dbf16088ea921b4a7fe022..8ab1aa7a323b1704ad397b6a306129eccf4b4109 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 |
| @@ -13,11 +13,12 @@ |
| mediasource_testafterdataloaded(function(test, mediaElement, mediaSource, segmentInfo, sourceBuffer, mediaData) |
|
wolenetz
2016/04/27 21:39:54
nit indent everything 2 more columns between <scri
servolk
2016/04/27 23:41:35
Done.
|
| { |
| var initSegment = MediaSourceUtil.extractSegmentData(mediaData, segmentInfo.init); |
| - test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.'); |
| test.expectEvent(sourceBuffer.audioTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
|
wolenetz
2016/04/27 21:39:54
nit: use either ' or ", not mixed, to contain stri
wolenetz
2016/04/27 21:39:55
nit: s/video/audio/ in message.
servolk
2016/04/27 23:41:35
Done.
servolk
2016/04/27 23:41:36
Done.
|
| test.expectEvent(sourceBuffer.videoTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
| test.expectEvent(mediaElement.audioTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
|
wolenetz
2016/04/27 21:39:55
nit ditto here and below as appropriate.
servolk
2016/04/27 23:41:35
Done.
|
| test.expectEvent(mediaElement.videoTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
| + test.expectEvent(mediaElement, 'loadedmetadata', 'loadedmetadata done.'); |
| + test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.'); |
| sourceBuffer.appendBuffer(initSegment); |
| test.waitForExpectedEvents(function() |
| { |
| @@ -48,6 +49,60 @@ |
| 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.audioTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
|
wolenetz
2016/04/27 21:39:55
nit ditto (audio <-> video) here and below as appr
servolk
2016/04/27 23:41:35
Done.
|
| + test.expectEvent(sourceBuffer.videoTracks, 'addtrack', 'sourceBuffer.videoTracks addtrack event'); |
| + test.expectEvent(mediaElement.audioTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
| + test.expectEvent(mediaElement.videoTracks, 'addtrack', 'mediaElement.videoTracks addtrack event'); |
| + test.expectEvent(mediaElement, 'loadedmetadata', 'loadedmetadata done.'); |
| + test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.'); |
| + sourceBuffer.appendBuffer(initSegment); |
| + |
| + var audioTrack; |
| + var videoTrack; |
| + test.waitForExpectedEvents(function() |
|
wolenetz
2016/04/27 21:39:55
Since these first few lines are common across thes
servolk
2016/04/27 23:41:35
Done.
|
| + { |
| + assert_equals(mediaElement.videoTracks.length, 1, "videoTracks.length"); |
|
wolenetz
2016/04/27 21:39:54
nit:indentation
servolk
2016/04/27 23:41:35
Done.
|
| + assert_equals(mediaElement.audioTracks.length, 1, "audioTracks.length"); |
| + assert_equals(sourceBuffer.videoTracks.length, 1, "videoTracks.length"); |
| + assert_equals(sourceBuffer.audioTracks.length, 1, "audioTracks.length"); |
| + |
| + // The first video track is selected by default. |
| + videoTrack = sourceBuffer.videoTracks[0]; |
| + assert_true(videoTrack.selected, "sourceBuffer.videoTracks[0].selected"); |
| + assert_equals(videoTrack.sourceBuffer, sourceBuffer, "videoTrack.sourceBuffer"); |
| + // The first audio track is enabled by default. |
| + audioTrack = sourceBuffer.audioTracks[0]; |
| + assert_true(audioTrack.enabled, "sourceBuffer.audioTracks[0].enabled"); |
| + assert_equals(audioTrack.sourceBuffer, sourceBuffer, "audioTrack.sourceBuffer"); |
| + |
| + test.expectEvent(sourceBuffer.audioTracks, 'removetrack', 'sourceBuffer.videoTracks removetrack event'); |
|
wolenetz
2016/04/27 21:39:55
nit ditto (audio <-> video) here and below as appr
servolk
2016/04/27 23:41:35
Done.
|
| + test.expectEvent(sourceBuffer.videoTracks, 'removetrack', 'sourceBuffer.videoTracks removetrack event'); |
| + test.expectEvent(mediaElement.audioTracks, 'removetrack', 'mediaElement.videoTracks removetrack event'); |
| + test.expectEvent(mediaElement.videoTracks, 'removetrack', 'mediaElement.videoTracks removetrack event'); |
| + // Removing enabled audio track and selected video track should fire 'change' events on mediaElement track lists. |
| + test.expectEvent(mediaElement.audioTracks, 'change', 'mediaElement.audioTracks changed.'); |
| + test.expectEvent(mediaElement.videoTracks, 'change', 'mediaElement.videoTracks changed.'); |
| + test.expectEvent(mediaSource.sourceBuffers, 'removesourcebuffer', 'mediaSource.sourceBuffers removesourcebuffer event'); |
| + mediaSource.removeSourceBuffer(sourceBuffer); |
| + }); |
| + |
| + test.waitForExpectedEvents(function() |
| + { |
| + assert_equals(mediaSource.sourceBuffers.length, 0, "mediaSource.sourceBuffers.length"); |
|
wolenetz
2016/04/27 21:39:55
nit:indentation
servolk
2016/04/27 23:41:35
Done.
|
| + 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"); |
| + // Since audio and video tracks have been removed, their .sourceBuffer property should be null now. |
| + assert_equals(audioTrack.sourceBuffer, null, "audioTrack.sourceBuffer"); |
| + assert_equals(videoTrack.sourceBuffer, null, "videoTrack.sourceBuffer"); |
| + test.done(); |
| + }); |
| + }, "MediaSource media tracks must be removed when a SourceBuffer is removed"); |
| </script> |
|
wolenetz
2016/04/27 21:39:55
Please add a test specifically for this removal al
servolk
2016/04/27 23:41:36
Done.
|
| </body> |
| </html> |