summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html
blob: 01a2d4bea9610c41ad2f48c6e388c88346cd8496 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
<head>
  <title>Seeking to the end of looping audio</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="/common/media.js"></script>
</head>
<body>
<div id="log"></div>
<audio id="a" controls loop></audio>
<script type="text/javascript">

promise_test(async t => {
  const a = document.getElementById("a");
  a.src = getAudioURI("/media/sound_5") + "?" + new Date() + Math.random();
  await a.play();

  // Seek to the end of audio (EOS). However, as audio is looping, it should
  // keep playing after seeking.
  a.currentTime = a.duration;
  await new Promise(r => a.onseeked = r);
  await new Promise(r => a.ontimeupdate = r);
  assert_false(a.paused);
} , "seeking to the end of looping audio");

</script>
</body>
</html>