interval-restart-events.html (1033B)
1 <!DOCTYPE html> 2 <title>Event dispatching on interval restart</title> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <svg height="0"> 6 <rect width="100" height="100" fill="blue"> 7 <animate attributeName="x" begin="0s; 10ms" end="20ms" from="0" to="100" 8 id="target"/> 9 <set attributeName="visibility" begin="0s" end="50ms" from="visible" to="visible" 10 id="timekeeper"/> 11 </rect> 12 </svg> 13 <script> 14 async_test(t => { 15 let begin_count = 0, end_count = 0; 16 let target = document.getElementById("target"); 17 target.addEventListener("beginEvent", t.step_func(() => { 18 begin_count++; 19 })); 20 target.addEventListener("endEvent", t.step_func(() => { 21 end_count++; 22 })); 23 let timekeeper = document.getElementById("timekeeper"); 24 timekeeper.addEventListener("endEvent", t.step_func(() => { 25 requestAnimationFrame(t.step_func_done(() => { 26 assert_equals(begin_count, end_count); 27 })); 28 })); 29 }); 30 </script>