| <!DOCTYPE html> |
| <title>Seeking forwards dispatches 'endEvent' if the element is not active at the seeked-to time</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <svg> |
| <rect width="50" height="100" fill="red"> |
| <set id="anim1" attributeName="fill" to="green" begin="5s" dur="1s" repeatCount="2" fill="freeze"/> |
| </rect> |
| <rect width="50" height="100" x="50" fill="green"> |
| <set id="anim2" attributeName="fill" to="red" begin="9s" dur="2s"/> |
| </rect> |
| </svg> |
| <script> |
| const SMIL_EVENTS = ['beginEvent', 'repeatEvent', 'endEvent']; |
| |
| promise_test(function(t) { |
| let svg = document.querySelector('svg'); |
| svg.pauseAnimations(); |
| svg.setCurrentTime(5.5); |
| let anim1_watcher = new EventWatcher(t, document.getElementById('anim1'), SMIL_EVENTS); |
| new EventWatcher(t, document.getElementById('anim2'), SMIL_EVENTS); |
| return anim1_watcher.wait_for('beginEvent').then(() => { |
| svg.setCurrentTime(11); |
| return anim1_watcher.wait_for('endEvent'); |
| }); |
| }); |
| </script> |