Test of the media element 'played' attribute, ranges part 1.

EVENT(loadstart)
EVENT(loadedmetadata)
EVENT(canplay)
Test 1 OK

Test playing when there are no ranges
RUN(video.play())
RUN(video.pause())
EVENT(pause)
Test 2 OK
Test 3 OK
Test 4 OK

Test jumping forward into a new range and play
RUN(video.play())
RUN(video.pause())
EVENT(pause)
Test 5 OK
Test 6 OK
Test 7 OK
Test 8 OK
Test 9 OK

Test jumping backwards into a new range and play, should insert new range
RUN(video.play())
RUN(video.pause())
EVENT(pause)
Test 10 OK
Test 11 OK
Test 12 OK
Test 13 OK
Test 14 OK
Test 15 OK
Test 16 OK

Test playing into an existing range, should extend range start
RUN(video.play())
RUN(video.pause())
EVENT(pause)
Test 17 OK
Test 18 OK
Test 19 OK
Test 20 OK
Test 21 OK
Test 22 OK
Test 23 OK

Test jumping into an existing range and play beyond end, should extend range end
RUN(video.play())
RUN(video.pause())
EVENT(pause)
Test 24 OK
Test 25 OK
Test 26 OK
Test 27 OK
Test 28 OK
Test 29 OK
Test 30 OK
END OF TEST

