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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/media/media-source/mediasource-initsegmentreceived-alg.html

Issue 1678523003: Implement InitSegmentReceived algorithm in blink (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@blink-sb-audiotrack
Patch Set: rebase Created 4 years, 7 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
« no previous file with comments | « no previous file | third_party/WebKit/Source/modules/mediasource/SourceBuffer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="/w3c/resources/testharness.js"></script>
5 <script src="/w3c/resources/testharnessreport.js"></script>
6 <script src="mediasource-util.js"></script>
7 <link rel="stylesheet" href="/w3c/resources/testharness.css">
wolenetz 2016/05/12 20:42:04 nit: drop this link -- it's auto-included already
servolk 2016/06/21 17:44:52 Done.
8 </head>
9 <body>
10 <div id="log"></div>
wolenetz 2016/05/12 20:42:04 nit: drop this div. unnecessary legacy cruft copy-
servolk 2016/06/21 17:44:52 Done.
11 <script>
12
13 mediasource_testafterdataloaded(function(test, mediaElement, mediaSo urce, segmentInfo, sourceBuffer, mediaData)
14 {
15 var initSegment = MediaSourceUtil.extractSegmentData(mediaData, se gmentInfo.init);
wolenetz 2016/05/12 20:42:04 nit: 4-space script indent here and below.
servolk 2016/06/21 17:44:52 Done.
16 test.expectEvent(sourceBuffer.audioTracks, 'addtrack', 'sourceBuff er.videoTracks addtrack event');
wolenetz 2016/05/12 20:42:04 nit: use ' or " consistently within the script bod
servolk 2016/06/21 17:44:52 Done.
17 test.expectEvent(sourceBuffer.videoTracks, 'addtrack', 'sourceBuff er.videoTracks addtrack event');
18 test.expectEvent(mediaElement.audioTracks, 'addtrack', 'mediaEleme nt.videoTracks addtrack event');
19 test.expectEvent(mediaElement.videoTracks, 'addtrack', 'mediaEleme nt.videoTracks addtrack event');
20 test.expectEvent(mediaElement, 'durationchange', 'mediaElement got duration');
21 test.expectEvent(sourceBuffer, 'updateend', 'InitSegment append en ded.');
22 test.expectEvent(mediaElement, 'loadedmetadata', 'loadedmetadata e vent received.');
23 sourceBuffer.appendBuffer(initSegment);
24 test.waitForExpectedEvents(function()
25 {
26 assert_equals(mediaElement.readyState, mediaElement.HAVE_METAD ATA);
27 assert_equals(mediaElement.duration, 6.042);
wolenetz 2016/05/12 20:42:04 nit: use the field from segmentInfo, not hardcodin
servolk 2016/06/21 17:44:52 Done.
28 assert_equals(mediaElement.audioTracks.length, 1, "mediaElemen t.audioTracks.length");
29 assert_equals(mediaElement.videoTracks.length, 1, "mediaElemen t.videoTracks.length");
30 assert_equals(sourceBuffer.audioTracks.length, 1, "sourceBuffe r.audioTracks.length");
31 assert_equals(sourceBuffer.videoTracks.length, 1, "sourceBuffe r.videoTracks.length");
32 assert_equals(mediaElement.audioTracks[0], sourceBuffer.audioT racks[0], "mediaElement.audioTrack == sourceBuffer.audioTrack");
33 assert_equals(mediaElement.videoTracks[0], sourceBuffer.videoT racks[0], "mediaElement.videoTrack == sourceBuffer.videoTrack");
34 // The first audio track is enabled by default.
35 assert_true(sourceBuffer.audioTracks[0].enabled, "sourceBuffer .audioTracks[0].enabled");
36 // The first video track is selected by default.
37 assert_true(sourceBuffer.videoTracks[0].selected, "sourceBuffe r.videoTracks[0].selected");
38
39 // Now append the same exact init segment again. This should s ucceed, but no new tracks should
40 // be added to the SourceBuffer or MediaElement.
41 test.failOnEvent(sourceBuffer.audioTracks, 'addtrack', 'Unexpe cted addtrack event on sourceBuffer.audioTracks for second init segment');
42 test.failOnEvent(sourceBuffer.videoTracks, 'addtrack', 'Unexpe cted addtrack event on sourceBuffer.videoTracks for second init segment');
43 test.failOnEvent(mediaElement.audioTracks, 'addtrack', 'Unexpe cted addtrack event on mediaElement.audioTracks for second init segment');
44 test.failOnEvent(mediaElement.videoTracks, 'addtrack', 'Unexpe cted addtrack event on mediaElement.videoTracks for second init segment');
45
46 test.expectEvent(sourceBuffer, 'updateend', 'InitSegment appen d ended.');
47 sourceBuffer.appendBuffer(initSegment);
48 });
49 test.waitForExpectedEvents(function()
50 {
51 assert_equals(mediaElement.audioTracks.length, 1, "mediaElemen t.audioTracks.length");
52 assert_equals(mediaElement.videoTracks.length, 1, "mediaElemen t.videoTracks.length");
53 assert_equals(sourceBuffer.audioTracks.length, 1, "sourceBuffe r.audioTracks.length");
54 assert_equals(sourceBuffer.videoTracks.length, 1, "sourceBuffe r.videoTracks.length");
55 test.done();
56 });
57 }, 'Init segment received algorithm');
58
wolenetz 2016/05/12 20:42:04 Please add testing of the application of TrackDefa
59 </script>
60 </body>
61 </html>
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/modules/mediasource/SourceBuffer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698