blob: 39c9887505271b157bdf1b27691c9315f729746d [file] [log] [blame]
<!doctype html>
<title>inserting another source before the candidate</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id=log></div>
<script>
var v;
function createSource(src) {
var source = document.createElement('source');
source.src = src;
return source;
}
var t = async_test(function(t) {
v = document.createElement('video');
v.addEventListener('loadstart', t.step_func(function() {
assert_equals(v.currentSrc.substr(v.currentSrc.lastIndexOf('#')), '#a');
t.done();
}), false);
v.appendChild(createSource('#a')); // invokes resource selection
});
</script>
<!-- now resource selection algorithm will continue its sync section (the </script> tag below provides a stable state) -->
<!-- #a is candidate -->
<!-- pointer is between #a and the end of the list -->
<script>
t.step(function() {
v.insertBefore(createSource('#b'), v.firstChild); // pointer is unchanged, #a is still candidate
});
</script>