File: seek-to-currentTime.html

package info (click to toggle)
thunderbird 1%3A144.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 4,725,312 kB
  • sloc: cpp: 7,869,225; javascript: 5,974,276; ansic: 3,946,747; python: 1,421,062; xml: 654,642; asm: 474,045; java: 183,117; sh: 110,973; makefile: 20,398; perl: 14,362; objc: 13,086; yacc: 4,583; pascal: 3,448; lex: 1,720; ruby: 999; exp: 762; sql: 731; awk: 580; php: 436; lisp: 430; sed: 69; csh: 10
file content (34 lines) | stat: -rw-r--r-- 1,293 bytes parent folder | download | duplicates (31)
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
30
31
32
33
34
<!doctype html>
<title>seek to currentTime</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/media.js"></script>
<div id=log></div>
<script>
async_test(function(t) {
  var v = document.createElement('video');
  v.src = getVideoURI('/media/movie_5');
  v.onloadedmetadata = t.step_func(function() {
    assert_greater_than(v.readyState, v.HAVE_NOTHING, 'readyState');
    assert_greater_than(v.seekable.length, 0, 'seekable ranges');
    assert_false(v.seeking, 'seeking before setting currentTime');
    v.currentTime = v.currentTime;
    assert_true(v.seeking, 'seeking after setting currentTime');
    var events = [];
    v.onseeking = v.ontimeupdate = v.onseeked = t.step_func(function(e) {
      events.push(e.type);
      // v.seeking can be true or false in the seeking event, see
      // https://www.w3.org/Bugs/Public/show_bug.cgi?id=24774
      if (e.type != 'seeking') {
        assert_equals(v.seeking, false, 'seeking in ' + e.type + ' event');
      }
      if (e.type == 'seeked') {
        assert_array_equals(events, ['seeking', 'timeupdate', 'seeked'],
                            'fired events');
        t.done();
      }
    });
  });
});
</script>