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 mediasource_configchange_test = function(directory, idA, idB, description) | |
|
scherkus (not reviewing)
2013/06/18 01:22:09
any reason not to use a normal function declaratio
acolwell GONE FROM CHROMIUM
2013/06/18 16:33:45
Done. Not sure why I originally did this.
| |
| 27 { | |
| 28 var manifestFilenameA = directory + "/test-" + idA + "-manifest.json"; | |
| 29 var manifestFilenameB = directory + "/test-" + idB + "-manifest.json"; | |
| 30 mediasource_test(function(test, mediaElement, mediaSource) | |
| 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} ); | |
|
scherkus (not reviewing)
2013/06/18 01:22:09
space after 10000
also ... timeouts!? :(
acolwell GONE FROM CHROMIUM
2013/06/18 16:33:45
Done.
| |
| 78 }; | |
| OLD | NEW |