| Index: LayoutTests/http/tests/media/media-source/mediasource-buffered.html
|
| diff --git a/LayoutTests/http/tests/media/media-source/mediasource-buffered.html b/LayoutTests/http/tests/media/media-source/mediasource-buffered.html
|
| index 92b93360ca7c2a270df87c12788eb07eead6886a..3c34916fe61c1548633907db5980338038184ba3 100644
|
| --- a/LayoutTests/http/tests/media/media-source/mediasource-buffered.html
|
| +++ b/LayoutTests/http/tests/media/media-source/mediasource-buffered.html
|
| @@ -11,17 +11,17 @@
|
| <script>
|
| var subType = MediaSourceUtil.getSubType(MediaSourceUtil.AUDIO_ONLY_TYPE);
|
|
|
| - var manifestFilenameA = subType + "/test-a-128k-44100Hz-1ch-manifest.json";
|
| - var manifestFilenameB = subType + "/test-v-128k-320x240-30fps-10kfr-manifest.json";
|
| + var manifestFilenameA = subType + '/test-a-128k-44100Hz-1ch-manifest.json';
|
| + var manifestFilenameB = subType + '/test-v-128k-320x240-30fps-10kfr-manifest.json';
|
|
|
| var expectationsA = {
|
| - webm: "{ [0.000, 2.022) }",
|
| - mp4: "{ [0.000, 2.043) }",
|
| + webm: '{ [0.000, 2.022) }',
|
| + mp4: '{ [0.000, 2.043) }',
|
| };
|
|
|
| var expectationsB = {
|
| - webm: "{ [0.000, 2.000) }",
|
| - mp4: "{ [0.000, 2.000) }",
|
| + webm: '{ [0.000, 2.000) }',
|
| + mp4: '{ [0.000, 2.000) }',
|
| };
|
|
|
| function mediaSourceDemuxedTest(callback, description)
|
| @@ -51,12 +51,12 @@
|
| var sourceBufferA = mediaSource.activeSourceBuffers[0];
|
| var sourceBufferB = mediaSource.activeSourceBuffers[1];
|
|
|
| - test.expectEvent(sourceBufferA, "update");
|
| - test.expectEvent(sourceBufferA, "updateend");
|
| + test.expectEvent(sourceBufferA, 'update');
|
| + test.expectEvent(sourceBufferA, 'updateend');
|
| sourceBufferA.appendBuffer(dataA);
|
|
|
| - test.expectEvent(sourceBufferB, "update");
|
| - test.expectEvent(sourceBufferB, "updateend");
|
| + test.expectEvent(sourceBufferB, 'update');
|
| + test.expectEvent(sourceBufferB, 'updateend');
|
| sourceBufferB.appendBuffer(dataB);
|
|
|
| test.waitForExpectedEvents(function()
|
| @@ -68,19 +68,19 @@
|
| mediaSourceDemuxedTest(function(test, mediaElement, mediaSource, dataA, dataB) {
|
| appendData(test, mediaSource, dataA, dataB, function()
|
| {
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[1], expectationsB[subType], "mediaSource.activeSourceBuffers[1]");
|
| - assertBufferedEquals(mediaElement, expectationsB[subType], "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[1], expectationsB[subType], 'mediaSource.activeSourceBuffers[1]');
|
| + assertBufferedEquals(mediaElement, expectationsB[subType], 'mediaElement.buffered');
|
|
|
| mediaSource.endOfStream();
|
|
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[1], expectationsB[subType], "mediaSource.activeSourceBuffers[1]");
|
| - assertBufferedEquals(mediaElement, expectationsA[subType], "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[1], expectationsB[subType], 'mediaSource.activeSourceBuffers[1]');
|
| + assertBufferedEquals(mediaElement, expectationsA[subType], 'mediaElement.buffered');
|
|
|
| test.done();
|
| });
|
| - }, "Demuxed content with different lengths");
|
| + }, 'Demuxed content with different lengths');
|
|
|
| mediasource_test(function(test, mediaElement, mediaSource)
|
| {
|
| @@ -88,53 +88,53 @@
|
| test.failOnEvent(mediaElement, 'error');
|
| test.endOnEvent(mediaElement, 'ended');
|
|
|
| - MediaSourceUtil.fetchManifestAndData(test, subType + "/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json", function(type, data)
|
| + MediaSourceUtil.fetchManifestAndData(test, subType + '/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json', function(type, data)
|
| {
|
| var sourceBuffer = mediaSource.addSourceBuffer(type);
|
| - test.expectEvent(sourceBuffer, "update");
|
| - test.expectEvent(sourceBuffer, "updateend");
|
| + test.expectEvent(sourceBuffer, 'update');
|
| + test.expectEvent(sourceBuffer, 'updateend');
|
| sourceBuffer.appendBuffer(data);
|
|
|
| test.waitForExpectedEvents(function()
|
| {
|
| var expectationsAV = {
|
| - webm: ["{ [0.000, 2.003) }", "{ [0.000, 2.022) }"],
|
| - mp4: ["{ [0.000, 2.000) }", "{ [0.000, 2.043) }"],
|
| + webm: ['{ [0.000, 2.003) }', '{ [0.000, 2.022) }'],
|
| + mp4: ['{ [0.000, 2.000) }', '{ [0.000, 2.043) }'],
|
| };
|
|
|
| var expectedBeforeEndOfStream = expectationsAV[subType][0];
|
| var expectedAfterEndOfStream = expectationsAV[subType][1];
|
|
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectedBeforeEndOfStream, "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, expectedBeforeEndOfStream, "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectedBeforeEndOfStream, 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, expectedBeforeEndOfStream, 'mediaElement.buffered');
|
|
|
| mediaSource.endOfStream();
|
|
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectedAfterEndOfStream, "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, expectedAfterEndOfStream, "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectedAfterEndOfStream, 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, expectedAfterEndOfStream, 'mediaElement.buffered');
|
|
|
| test.done();
|
| });
|
| });
|
| - }, "Muxed tracks with different lengths");
|
| + }, 'Muxed tracks with different lengths');
|
|
|
|
|
| mediaSourceDemuxedTest(function(test, mediaElement, mediaSource, dataA, dataB) {
|
| appendData(test, mediaSource, dataA, dataB.subarray(0, 318), function()
|
| {
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[1], "{ }", "mediaSource.activeSourceBuffers[1]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[1], '{ }', 'mediaSource.activeSourceBuffers[1]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
|
|
| mediaSource.endOfStream();
|
|
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[1], "{ }", "mediaSource.activeSourceBuffers[1]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], expectationsA[subType], 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[1], '{ }', 'mediaSource.activeSourceBuffers[1]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
|
|
| test.done();
|
| });
|
| - }, "Demuxed content with an empty buffered range on one SourceBuffer");
|
| + }, 'Demuxed content with an empty buffered range on one SourceBuffer');
|
|
|
| mediasource_test(function(test, mediaElement, mediaSource)
|
| {
|
| @@ -142,27 +142,27 @@
|
| test.failOnEvent(mediaElement, 'error');
|
| test.endOnEvent(mediaElement, 'ended');
|
|
|
| - MediaSourceUtil.fetchManifestAndData(test, subType + "/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json", function(type, data)
|
| + MediaSourceUtil.fetchManifestAndData(test, subType + '/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json', function(type, data)
|
| {
|
| var sourceBuffer = mediaSource.addSourceBuffer(type);
|
| - test.expectEvent(sourceBuffer, "update");
|
| - test.expectEvent(sourceBuffer, "updateend");
|
| + test.expectEvent(sourceBuffer, 'update');
|
| + test.expectEvent(sourceBuffer, 'updateend');
|
| sourceBuffer.appendBuffer(data.subarray(0, 4052));
|
|
|
| test.waitForExpectedEvents(function()
|
| {
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], "{ }", "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], '{ }', 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
|
|
| mediaSource.endOfStream();
|
|
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], "{ }", "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], '{ }', 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
|
|
| test.done();
|
| });
|
| });
|
| - }, "Muxed content empty buffered ranges.");
|
| + }, 'Muxed content empty buffered ranges.');
|
|
|
| mediasource_test(function(test, mediaElement, mediaSource)
|
| {
|
| @@ -174,27 +174,41 @@
|
|
|
| // FIXME: verify activeSourceBuffers is empty until init segment with at least
|
| // one active track is appended.
|
| - assertBufferedEquals(mediaSource.sourceBuffers[0], "{ }", "mediaSource.sourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.sourceBuffers[0], '{ }', 'mediaSource.sourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
| test.done();
|
|
|
| - }, "Get buffered range when sourcebuffer is empty.");
|
| + }, 'Get buffered range when sourcebuffer is empty.');
|
|
|
| mediasource_testafterdataloaded(function(test, mediaElement, mediaSource, segmentInfo, sourceBuffer, mediaData)
|
| {
|
| var initSegment = MediaSourceUtil.extractSegmentData(mediaData, segmentInfo.init);
|
|
|
| - test.expectEvent(sourceBuffer, "updateend", "initSegment append ended.");
|
| + test.expectEvent(sourceBuffer, 'updateend', 'initSegment append ended.');
|
| sourceBuffer.appendBuffer(initSegment);
|
| test.waitForExpectedEvents(function()
|
| {
|
| - assertBufferedEquals(mediaSource.sourceBuffers[0], "{ }", "mediaSource.sourceBuffers[0]");
|
| - assertBufferedEquals(mediaSource.activeSourceBuffers[0], "{ }", "mediaSource.activeSourceBuffers[0]");
|
| - assertBufferedEquals(mediaElement, "{ }", "mediaElement.buffered");
|
| + assertBufferedEquals(mediaSource.sourceBuffers[0], '{ }', 'mediaSource.sourceBuffers[0]');
|
| + assertBufferedEquals(mediaSource.activeSourceBuffers[0], '{ }', 'mediaSource.activeSourceBuffers[0]');
|
| + assertBufferedEquals(mediaElement, '{ }', 'mediaElement.buffered');
|
| test.done();
|
| });
|
|
|
| - }, "Get buffered range when only initsegment is appended.");
|
| + }, 'Get buffered range when only initsegment is appended.');
|
| +
|
| + mediasource_testafterdataloaded(function(test, mediaElement, mediaSource, segmentInfo, sourceBuffer, mediaData)
|
| + {
|
| + test.expectEvent(mediaSource.sourceBuffers, 'removesourcebuffer', 'SourceBuffer removed.');
|
| + mediaSource.removeSourceBuffer(sourceBuffer);
|
| +
|
| + test.waitForExpectedEvents(function()
|
| + {
|
| + assert_throws('InvalidStateError',
|
| + function() { sourceBuffer.buffered; },
|
| + 'get sourceBuffer.buffered throws an exception for InvalidStateError.');
|
| + test.done();
|
| + });
|
| + }, 'Get buffered range after removing sourcebuffer.');
|
| </script>
|
| </body>
|
| </html>
|
|
|