Fri, 16 Jan 2015 04:50:19 +0100
Replace accessor implementation with direct member state manipulation, by
request https://trac.torproject.org/projects/tor/ticket/9701#comment:32
1 function test_seek11(v, seekTime, is, ok, finish) {
3 // Test for bug 476973, multiple seeks to the same position shouldn't cause problems.
5 var seekedNonZero = false;
6 var completed = false;
7 var target = 0;
9 function startTest() {
10 if (completed)
11 return;
12 target = v.duration / 2;
13 v.currentTime = target;
14 v.currentTime = target;
15 v._seekTarget = target;
16 }
18 function startSeeking() {
19 ok(v.currentTime >= v._seekTarget - 0.1,
20 "Video currentTime should be around " + v._seekTarget + ": " + v.currentTime);
21 if (!seekedNonZero) {
22 v.currentTime = target;
23 v._seekTarget = target;
24 seekedNonZero = true;
25 }
26 }
28 function seekEnded() {
29 if (completed)
30 return;
32 if (v.currentTime > 0) {
33 ok(v.currentTime > target - 0.1 && v.currentTime < target + 0.1,
34 "Seek to wrong destination " + v.currentTime);
35 v.currentTime = 0.0;
36 v._seekTarget = 0.0;
37 } else {
38 ok(seekedNonZero, "Successfully seeked to nonzero");
39 ok(true, "Seek back to zero was successful");
40 completed = true;
41 finish();
42 }
43 }
45 v.addEventListener("loadedmetadata", startTest, false);
46 v.addEventListener("seeking", startSeeking, false);
47 v.addEventListener("seeked", seekEnded, false);
49 }