blob: 403068ae9cad53f56ab79f5f65727efb7e38afd7 [file] [log] [blame]
'playbackRate' should not change when play() is called.
'playbackRate' and 'defaultPlaybackRate' should always return the last value set.
*** setting src
EVENT(canplaythrough)
*** checking defaults
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '1') OK
*** setting defaultPlaybackRate
RUN(video.defaultPlaybackRate = 2)
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
EVENT(ratechange)
*** checking rates after event
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
*** setting playbackRate
RUN(video.playbackRate = 2)
EXPECTED (video.playbackRate == '2') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
EVENT(ratechange)
*** checking rates after event
EXPECTED (video.playbackRate == '2') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
*** beginning playback
RUN(video.playbackRate = 1)
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
RUN(video.play())
EVENT(ratechange)
*** checking rates after event
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
EVENT(ended)
EXPECTED (video.playbackRate == '1') OK
EXPECTED (video.defaultPlaybackRate == '2') OK
Test extreme playback rates
RUN(video.defaultPlaybackRate = Number.MIN_VALUE)
EXPECTED (video.defaultPlaybackRate == '5e-324') OK
RUN(video.defaultPlaybackRate = Number.MAX_VALUE)
EXPECTED (video.defaultPlaybackRate == '1.7976931348623157e+308') OK
RUN(video.playbackRate = Number.MIN_VALUE)
EXPECTED (video.playbackRate == '5e-324') OK
RUN(video.playbackRate = Number.MAX_VALUE)
EXPECTED (video.playbackRate == '1.7976931348623157e+308') OK
Test non-finite playback rates
TEST(video.defaultPlaybackRate = -Infinity) THROWS("TypeError: Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
TEST(video.defaultPlaybackRate = Infinity) THROWS("TypeError: Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
TEST(video.defaultPlaybackRate = NaN) THROWS("TypeError: Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
TEST(video.playbackRate = -Infinity) THROWS("TypeError: Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
TEST(video.playbackRate = Infinity) THROWS("TypeError: Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
TEST(video.playbackRate = NaN) THROWS("TypeError: Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided double value is non-finite.") OK
END OF TEST