| <body> |
| <video id="video" autoplay playsInline></video> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <script> |
| |
| promise_test(async() => { |
| |
| let stream = await navigator.mediaDevices.getUserMedia({video : true}); |
| |
| video.srcObject = stream; |
| assert_equals(video.currentTime, 0); |
| |
| await video.play(); |
| let currentTime = video.currentTime; |
| assert_not_equals(currentTime, 0, "Playback has started, currentTime must not be zero"); |
| |
| await new Promise(resolve => setTimeout(resolve, 10)); |
| assert_greater_than(video.currentTime, currentTime, "video is playing, time should advance"); |
| |
| video.pause(); |
| currentTime = video.currentTime; |
| await new Promise(resolve => setTimeout(resolve, 10)); |
| assert_equals(video.currentTime, currentTime, "video is paused, currentTime must not advance"); |
| |
| await video.play(); |
| await new Promise(resolve => setTimeout(resolve, 10)); |
| assert_greater_than(video.currentTime, currentTime, "Playback has started, currentTime should advance"); |
| |
| }, "Check video.currentTime behavior"); |
| </script> |
| </body> |