Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Side by Side Diff: media/blink/webmediaplayer_impl_unittest.cc

Issue 1880713002: media: Don't idle suspend the pipeline when in fullscreen (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: delete newline Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « media/blink/webmediaplayer_impl.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « media/blink/webmediaplayer_impl.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698