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

Side by Side Diff: LayoutTests/http/tests/media/media-source/mediasource-sourcebuffer-trackdefaults.html

Issue 754463008: MSE: Implement SourceBuffer.trackDefaults (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@Implement_TrackDefaultList_object
Patch Set: Created 6 years 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
(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
8 <link rel='stylesheet' href='/w3c/resources/testharness.css'>
9 </head>
10 <body>
11 <div id="log"></div>
12 <script>
13
14 function sourceBufferTrackDefaultsTest(callback, description)
15 {
16 mediasource_test(function(test, mediaElement, mediaSource)
17 {
18 var sourceBuffer = mediaSource.addSourceBuffer(MediaSourceUtil .AUDIO_VIDEO_TYPE);
19 assert_true(sourceBuffer != null, "SourceBuffer returned");
philipj_slow 2014/12/04 16:17:53 I see there's quite a bit of this in the other tes
wolenetz 2014/12/12 22:15:06 Done.
20 assert_array_equals(sourceBuffer.trackDefaults, [], "Empty ini tial SourceBuffer.trackDefaults");
21 callback(test, mediaElement, mediaSource, sourceBuffer);
22 }, description);
23 };
24
25 sourceBufferTrackDefaultsTest(function(test, mediaElement, mediaSource , sourceBuffer)
26 {
27 var emptyList = new TrackDefaultList([]);
28 assert_false(sourceBuffer.trackDefaults == emptyList, "Initial tra ckDefaults object differs from new empty list");
philipj_slow 2014/12/04 16:17:53 assert_not_equals will give better error messages.
wolenetz 2014/12/12 22:15:06 Done.
29
30 sourceBuffer.trackDefaults = emptyList;
31
32 assert_array_equals(sourceBuffer.trackDefaults, [], "Round-tripped empty trackDefaults");
33 assert_true(sourceBuffer.trackDefaults == emptyList, "Round-trippe d the empty TrackDefaultList object");
34 test.done();
35 }, "Test round-trip of empty SourceBuffer.trackDefaults");
36
37 sourceBufferTrackDefaultsTest(function(test, mediaElement, mediaSource , sourceBuffer)
38 {
39 var trackDefault = new TrackDefault("audio", "en-US", "audio label ", ["main"], "1");
40 var trackDefaults = new TrackDefaultList([ trackDefault ]);
41
42 sourceBuffer.trackDefaults = trackDefaults;
43
44 assert_array_equals(sourceBuffer.trackDefaults, trackDefaults, "Ro und-tripped non-empty trackDefaults");
45 assert_equals(sourceBuffer.trackDefaults.length, 1, "Confirm non-e mpty trackDefaults");
46 assert_equals(sourceBuffer.trackDefaults, trackDefaults, "Round-tr ipped the non-empty TrackDefaultList object");
47 test.done();
48 }, "Test round-trip of non-empty SourceBuffer.trackDefaults");
49
50 sourceBufferTrackDefaultsTest(function(test, mediaElement, mediaSource , sourceBuffer)
51 {
52 mediaSource.removeSourceBuffer(sourceBuffer);
53 assert_throws("InvalidStateError",
54 function() { sourceBuffer.trackDefaults = new TrackD efaultList([]); },
55 "Exception thrown when setting trackDefaults on Sour ceBuffer that is removed from MediaSource");
56 test.done();
57 }, "Test setting trackDefaults on an already-removed SourceBuffer");
58
59 mediasource_testafterdataloaded(function(test, mediaElement, mediaSour ce, segmentInfo, sourceBuffer, mediaData)
60 {
61 assert_array_equals(sourceBuffer.trackDefaults, [], "Empty initial SourceBuffer.trackDefaults");
62 test.expectEvent(sourceBuffer, "updateend", "Append ended");
63 sourceBuffer.appendBuffer(mediaData);
64 assert_true(sourceBuffer.updating, "SourceBuffer is updating");
65
66 assert_throws("InvalidStateError",
67 function() { sourceBuffer.trackDefaults = new TrackD efaultList([]); },
68 "Exception thrown when setting trackDefaults on Sour ceBuffer that is updating");
69
70 test.waitForExpectedEvents(function()
71 {
72 assert_false(sourceBuffer.updating, "SourceBuffer is not updat ing");
73 sourceBuffer.trackDefaults = new TrackDefaultList([]);
74 test.done();
75 });
76 }, "Test setting trackDefaults on a SourceBuffer that is updating");
77
78 sourceBufferTrackDefaultsTest(function(test, mediaElement, mediaSource , sourceBuffer)
79 {
80 assert_throws(new TypeError(),
81 function() { sourceBuffer.trackDefaults = null; },
82 "null should be disallowed by trackDefaults setter");
83 test.done();
84 }, "Test setting null SourceBuffer.trackDefaults");
85 </script>
86 </body>
87 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698