TEST_F(HTMLVideoElementTest, setBufferingStrategy_UserPause) { setSrc("http://foo.bar/"); MockWebMediaPlayer* player = webMediaPlayer(); ASSERT_TRUE(player); // On play, the strategy is set to normal. EXPECT_CALL(*player, setBufferingStrategy(WebMediaPlayer::BufferingStrategy::Normal)); m_video->play(); ::testing::Mock::VerifyAndClearExpectations(player); // On a user pause, the strategy is set to aggressive. EXPECT_CALL(*player, setBufferingStrategy( WebMediaPlayer::BufferingStrategy::Aggressive)); { UserGestureIndicator gesture( DocumentUserGestureToken::create(&m_video->document())); m_video->pause(); } ::testing::Mock::VerifyAndClearExpectations(player); // On play, the strategy is set to normal. EXPECT_CALL(*player, setBufferingStrategy(WebMediaPlayer::BufferingStrategy::Normal)); m_video->play(); ::testing::Mock::VerifyAndClearExpectations(player); }
TEST_F(HTMLVideoElementTest, setBufferingStrategy_NonUserPause) { setSrc("http://foo.bar/"); MockWebMediaPlayer* player = webMediaPlayer(); ASSERT_TRUE(player); // On play, the strategy is set to normal. EXPECT_CALL(*player, setBufferingStrategy(WebMediaPlayer::BufferingStrategy::Normal)); m_video->play(); ::testing::Mock::VerifyAndClearExpectations(player); // On a non-user pause, the strategy is not changed. m_video->pause(); ::testing::Mock::VerifyAndClearExpectations(player); // On play, the strategy is set to normal. EXPECT_CALL(*player, setBufferingStrategy(WebMediaPlayer::BufferingStrategy::Normal)); m_video->play(); ::testing::Mock::VerifyAndClearExpectations(player); }