blob: 139f7013c9252e850ef323e272add1fb75f073e1 [file] [log] [blame]
<!DOCTYPE html>
<title>Verify that moving a video element to a new document, still loads it normally</title>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script src="media-file.js"></script>
<video></video>
<iframe></iframe>
<script>
async_test(function(t) {
var video = document.querySelector('video');
video.src = findMediaFile("video", "content/test");
video.onloadeddata = this.step_func(function() {
video.onloadeddata = null;
assert_true(video.networkState == video.NETWORK_IDLE || video.networkState == video.NETWORK_LOADING);
assert_greater_than(video.readyState, video.HAVE_METADATA);
// Move the video element to iframe document from
// main document and verify that it loads properly
document.querySelector('iframe').contentDocument.body.appendChild(video);
assert_equals(video.networkState, video.NETWORK_NO_SOURCE);
assert_equals(video.readyState, video.HAVE_NOTHING);
var actual_events = [];
var expected_events = ['emptied', 'loadstart', 'loadeddata'];
expected_events.forEach(function(type) {
video.addEventListener(type, t.step_func(function() {
actual_events.push(type);
if (type == 'loadeddata') {
assert_array_equals(actual_events, expected_events);
t.done();
}
}));
});
});
});
</script>