Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 function fetchManifestAndData(test, manifestFilename, callback) | |
| 2 { | |
| 3 var baseURL = '/media/resources/media-source/'; | |
| 4 var manifestURL = baseURL + manifestFilename; | |
| 5 MediaSourceUtil.loadTextData(test, manifestURL, function(manifestText) | |
| 6 { | |
| 7 var manifest = JSON.parse(manifestText); | |
| 8 | |
| 9 assert_true(MediaSource.isTypeSupported(manifest.type), manifest.type + " is supported."); | |
| 10 | |
| 11 var mediaURL = baseURL + manifest.url; | |
| 12 MediaSourceUtil.loadBinaryData(test, mediaURL, function(mediaData) | |
| 13 { | |
| 14 callback(manifest.type, mediaData); | |
| 15 }); | |
| 16 }); | |
| 17 } | |
| 18 | |
| 19 function appendBuffer(test, sourceBuffer, data) | |
| 20 { | |
| 21 test.expectEvent(sourceBuffer, "update"); | |
| 22 test.expectEvent(sourceBuffer, "updateend"); | |
| 23 sourceBuffer.appendBuffer(data); | |
| 24 } | |
| 25 | |
| 26 function mediasource_configchange_test(directory, idA, idB, description) | |
|
adamk
2013/06/18 21:54:23
Noticed this when reviewing the tests; why isn't t
acolwell GONE FROM CHROMIUM
2013/06/18 23:00:18
I did this just to match mediasource_test, which w
| |
| 27 { | |
| 28 var manifestFilenameA = directory + "/test-" + idA + "-manifest.json"; | |
| 29 var manifestFilenameB = directory + "/test-" + idB + "-manifest.json"; | |
| 30 mediasource_test(function(test, mediaElement, mediaSource) | |
|
adamk
2013/06/18 21:54:23
Does it have something to do with the fact that me
acolwell GONE FROM CHROMIUM
2013/06/18 23:00:18
Yes. Mind if I defer the renaming of mediasource_t
adamk
2013/06/19 00:22:36
Deferring is fine, and actually if it matches test
| |
| 31 { | |
| 32 mediaElement.pause(); | |
| 33 test.failOnEvent(mediaElement, 'error'); | |
| 34 test.endOnEvent(mediaElement, 'ended'); | |
| 35 | |
| 36 fetchManifestAndData(test, manifestFilenameA, function(typeA, dataA) | |
| 37 { | |
| 38 fetchManifestAndData(test, manifestFilenameB, function(typeB, dataB) | |
| 39 { | |
| 40 assert_equals(typeA, typeB, "Media format types match"); | |
| 41 | |
| 42 var sourceBuffer = mediaSource.addSourceBuffer(typeA); | |
| 43 | |
| 44 appendBuffer(test, sourceBuffer, dataA); | |
| 45 | |
| 46 test.waitForExpectedEvents(function() | |
| 47 { | |
| 48 // Add the second buffer starting at 0.5 second. | |
| 49 sourceBuffer.timestampOffset = 0.5; | |
| 50 appendBuffer(test, sourceBuffer, dataB); | |
| 51 }); | |
| 52 | |
| 53 test.waitForExpectedEvents(function() | |
| 54 { | |
| 55 // Add the first buffer starting at 1 second. | |
| 56 sourceBuffer.timestampOffset = 1; | |
| 57 appendBuffer(test, sourceBuffer, dataA); | |
| 58 }); | |
| 59 | |
| 60 test.waitForExpectedEvents(function() | |
| 61 { | |
| 62 // Add the second buffer starting at 1.5 second. | |
| 63 sourceBuffer.timestampOffset = 1.5; | |
| 64 appendBuffer(test, sourceBuffer, dataB); | |
| 65 }); | |
| 66 | |
| 67 test.waitForExpectedEvents(function() | |
| 68 { | |
| 69 // Truncate the presentation to a duration of 2 seconds. | |
| 70 mediaSource.duration = 2; | |
| 71 mediaSource.endOfStream(); | |
| 72 | |
| 73 mediaElement.play(); | |
| 74 }); | |
| 75 }); | |
| 76 }); | |
| 77 }, description, { timeout: 10000 } ); | |
| 78 }; | |
| OLD | NEW |