Implement srcObject logic for Blob media providers

This commit is contained in:
Fernando Jiménez Moreno 2019-03-26 12:52:10 +01:00
parent 3c27dc993d
commit d15640081c
4 changed files with 115 additions and 14 deletions

View file

@ -1,5 +1,8 @@
{
"items": {
"conformancechecker": {
"html/semantics/embedded-content/media-elements/src_object_blob.html": []
},
"manual": {
"2dcontext/conformance-requirements/2d.coordinatespace-manual.html": [
[
@ -12775,6 +12778,7 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"html/semantics/embedded-content/media-elements/video_controls_present-manual.html": [
[
"html/semantics/embedded-content/media-elements/video_controls_present-manual.html",
@ -194571,6 +194575,7 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html": [
[
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html",
@ -201711,6 +201716,7 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"infrastructure/assumptions/ahem-ref.html": [
[
"infrastructure/assumptions/ahem-ref.html",
@ -201809,6 +201815,7 @@
]
},
"stub": {
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"service-workers/stub-3.1-service-worker-obj.html": [
[
"service-workers/stub-3.1-service-worker-obj.html",
@ -300426,6 +300433,7 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js": [
[
{}
@ -388893,6 +388901,12 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [
[
"html/semantics/embedded-content/media-elements/src_object_blob.html",
{}
]
],
"html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html": [
[
"html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html",
@ -474312,6 +474326,7 @@
{}
]
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"svg/text/visualtests/text-inline-size-001-visual.svg": [
[
"svg/text/visualtests/text-inline-size-001-visual.svg",
@ -474362,6 +474377,7 @@
]
},
"wdspec": {
"html/semantics/embedded-content/media-elements/src_object_blob.html": [],
"infrastructure/webdriver/tests/test_load_file.py": [
[
"infrastructure/webdriver/tests/test_load_file.py",
@ -660109,6 +660125,10 @@
"56a99028deb273359f32fc14b53b9317a4b9c76d",
"testharness"
],
"html/semantics/embedded-content/media-elements/src_object_blob.html": [
"481a8184ea2fdc6220b147d43a653ed510cfd104",
"testharness"
],
"html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html": [
"3dd43cc3f5524a32b7438e33481552653076cbe8",
"testharness"

View file

@ -0,0 +1,31 @@
<!doctype html>
<meta charset="utf-8">
<title>HTMLMediaElement.srcObject blob</title>
<script src='/common/media.js'></script>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<video></video>
<script>
async_test(function(t) {
t.step(function() {
fetch(getVideoURI('/media/movie_5'))
.then(function(response) {
return response.blob();
})
.then(function(blob) {
let video = document.querySelector("video");
video.srcObject = blob;
video.addEventListener('ended', function() {
t.done();
});
video.play().catch(function(error) {
assert(false, error);
});
})
.catch(function(error) {
assert(false, error);
});
});
});
</script>