| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdint.h> | 5 #include <stdint.h> |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/callback_helpers.h" | 8 #include "base/callback_helpers.h" |
| 9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 } | 122 } |
| 123 | 123 |
| 124 protected: | 124 protected: |
| 125 void SetReadyState(blink::WebMediaPlayer::ReadyState state) { | 125 void SetReadyState(blink::WebMediaPlayer::ReadyState state) { |
| 126 wmpi_->SetReadyState(state); | 126 wmpi_->SetReadyState(state); |
| 127 } | 127 } |
| 128 | 128 |
| 129 void SetPaused(bool is_paused) { wmpi_->paused_ = is_paused; } | 129 void SetPaused(bool is_paused) { wmpi_->paused_ = is_paused; } |
| 130 void SetSeeking(bool is_seeking) { wmpi_->seeking_ = is_seeking; } | 130 void SetSeeking(bool is_seeking) { wmpi_->seeking_ = is_seeking; } |
| 131 void SetEnded(bool is_ended) { wmpi_->ended_ = is_ended; } | 131 void SetEnded(bool is_ended) { wmpi_->ended_ = is_ended; } |
| 132 void SetFullscreen(bool is_fullscreen) { wmpi_->fullscreen_ = is_fullscreen; } |
| 132 | 133 |
| 133 void SetMetadata(bool has_audio, bool has_video) { | 134 void SetMetadata(bool has_audio, bool has_video) { |
| 134 wmpi_->SetNetworkState(blink::WebMediaPlayer::NetworkStateLoaded); | 135 wmpi_->SetNetworkState(blink::WebMediaPlayer::NetworkStateLoaded); |
| 135 wmpi_->SetReadyState(blink::WebMediaPlayer::ReadyStateHaveMetadata); | 136 wmpi_->SetReadyState(blink::WebMediaPlayer::ReadyStateHaveMetadata); |
| 136 wmpi_->pipeline_metadata_.has_audio = has_audio; | 137 wmpi_->pipeline_metadata_.has_audio = has_audio; |
| 137 wmpi_->pipeline_metadata_.has_video = has_video; | 138 wmpi_->pipeline_metadata_.has_video = has_video; |
| 138 } | 139 } |
| 139 | 140 |
| 140 WebMediaPlayerImpl::PlayState ComputePlayState() { | 141 WebMediaPlayerImpl::PlayState ComputePlayState() { |
| 141 wmpi_->is_idle_ = false; | 142 wmpi_->is_idle_ = false; |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 325 EXPECT_TRUE(state.is_suspended); | 326 EXPECT_TRUE(state.is_suspended); |
| 326 } | 327 } |
| 327 | 328 |
| 328 TEST_F(WebMediaPlayerImplTest, ComputePlayState_Paused_Seek) { | 329 TEST_F(WebMediaPlayerImplTest, ComputePlayState_Paused_Seek) { |
| 329 WebMediaPlayerImpl::PlayState state; | 330 WebMediaPlayerImpl::PlayState state; |
| 330 SetMetadata(true, true); | 331 SetMetadata(true, true); |
| 331 SetReadyState(blink::WebMediaPlayer::ReadyStateHaveFutureData); | 332 SetReadyState(blink::WebMediaPlayer::ReadyStateHaveFutureData); |
| 332 SetSeeking(true); | 333 SetSeeking(true); |
| 333 | 334 |
| 334 state = ComputePlayState(); | 335 state = ComputePlayState(); |
| 335 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::PAUSED_SEEK, | 336 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::PAUSED_BUT_NOT_IDLE, |
| 336 state.delegate_state); | 337 state.delegate_state); |
| 337 EXPECT_FALSE(state.is_memory_reporting_enabled); | 338 EXPECT_FALSE(state.is_memory_reporting_enabled); |
| 338 EXPECT_FALSE(state.is_suspended); | 339 EXPECT_FALSE(state.is_suspended); |
| 340 } |
| 341 |
| 342 TEST_F(WebMediaPlayerImplTest, ComputePlayState_Paused_Fullscreen) { |
| 343 WebMediaPlayerImpl::PlayState state; |
| 344 SetMetadata(true, true); |
| 345 SetReadyState(blink::WebMediaPlayer::ReadyStateHaveFutureData); |
| 346 SetFullscreen(true); |
| 347 |
| 348 state = ComputePlayState(); |
| 349 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::PAUSED_BUT_NOT_IDLE, |
| 350 state.delegate_state); |
| 351 EXPECT_FALSE(state.is_memory_reporting_enabled); |
| 352 EXPECT_FALSE(state.is_suspended); |
| 339 } | 353 } |
| 340 | 354 |
| 341 TEST_F(WebMediaPlayerImplTest, ComputePlayState_Ended) { | 355 TEST_F(WebMediaPlayerImplTest, ComputePlayState_Ended) { |
| 342 WebMediaPlayerImpl::PlayState state; | 356 WebMediaPlayerImpl::PlayState state; |
| 343 SetMetadata(true, true); | 357 SetMetadata(true, true); |
| 344 SetReadyState(blink::WebMediaPlayer::ReadyStateHaveFutureData); | 358 SetReadyState(blink::WebMediaPlayer::ReadyStateHaveFutureData); |
| 345 SetEnded(true); | 359 SetEnded(true); |
| 346 | 360 |
| 347 // The pipeline is not suspended immediately on ended. | 361 // The pipeline is not suspended immediately on ended. |
| 348 state = ComputePlayState(); | 362 state = ComputePlayState(); |
| 349 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::ENDED, state.delegate_state); | 363 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::ENDED, state.delegate_state); |
| 350 EXPECT_FALSE(state.is_memory_reporting_enabled); | 364 EXPECT_FALSE(state.is_memory_reporting_enabled); |
| 351 EXPECT_FALSE(state.is_suspended); | 365 EXPECT_FALSE(state.is_suspended); |
| 352 | 366 |
| 353 state = ComputeIdlePlayState(); | 367 state = ComputeIdlePlayState(); |
| 354 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::ENDED, state.delegate_state); | 368 EXPECT_EQ(WebMediaPlayerImpl::DelegateState::ENDED, state.delegate_state); |
| 355 EXPECT_FALSE(state.is_memory_reporting_enabled); | 369 EXPECT_FALSE(state.is_memory_reporting_enabled); |
| 356 EXPECT_TRUE(state.is_suspended); | 370 EXPECT_TRUE(state.is_suspended); |
| 357 } | 371 } |
| 358 | 372 |
| 359 } // namespace media | 373 } // namespace media |
| OLD | NEW |