| Index: content/browser/media/session/audio_focus_manager_unittest.cc
|
| diff --git a/content/browser/media/session/audio_focus_manager_unittest.cc b/content/browser/media/session/audio_focus_manager_unittest.cc
|
| index d853a2cba2a7d50242cea446ad3295300fc2f2f7..37c577cf7a42d781bde00ff1dcee0a1a2ce3d11c 100644
|
| --- a/content/browser/media/session/audio_focus_manager_unittest.cc
|
| +++ b/content/browser/media/session/audio_focus_manager_unittest.cc
|
| @@ -5,7 +5,7 @@
|
| #include "content/browser/media/session/audio_focus_manager.h"
|
|
|
| #include "base/command_line.h"
|
| -#include "content/browser/media/session/media_session.h"
|
| +#include "content/browser/media/session/media_session_impl.h"
|
| #include "content/browser/media/session/media_session_player_observer.h"
|
| #include "content/public/test/mock_render_process_host.h"
|
| #include "content/public/test/test_browser_context.h"
|
| @@ -50,7 +50,7 @@ class AudioFocusManagerTest : public testing::Test {
|
| rph_factory_.reset();
|
| }
|
|
|
| - MediaSession* GetAudioFocusedSession() const {
|
| + MediaSessionImpl* GetAudioFocusedSession() const {
|
| const auto& audio_focus_stack =
|
| AudioFocusManager::GetInstance()->audio_focus_stack_;
|
| for (auto iter = audio_focus_stack.rbegin();
|
| @@ -79,16 +79,16 @@ class AudioFocusManagerTest : public testing::Test {
|
| return count;
|
| }
|
|
|
| - double IsSessionDucking(MediaSession* session) {
|
| + double IsSessionDucking(MediaSessionImpl* session) {
|
| return session->is_ducking_; // Quack! Quack!
|
| }
|
|
|
| - void RequestAudioFocus(MediaSession* session,
|
| + void RequestAudioFocus(MediaSessionImpl* session,
|
| AudioFocusManager::AudioFocusType audio_focus_type) {
|
| session->RequestSystemAudioFocus(audio_focus_type);
|
| }
|
|
|
| - void AbandonAudioFocus(MediaSession* session) {
|
| + void AbandonAudioFocus(MediaSessionImpl* session) {
|
| session->AbandonSystemAudioFocusIfNeeded();
|
| }
|
|
|
| @@ -115,13 +115,16 @@ TEST_F(AudioFocusManagerTest, InstanceAvailableAndSame) {
|
|
|
| TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_ReplaceFocusedEntry) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_3(CreateWebContents());
|
| - MediaSession* media_session_3 = MediaSession::Get(web_contents_3.get());
|
| + MediaSessionImpl* media_session_3 =
|
| + MediaSessionImpl::Get(web_contents_3.get());
|
|
|
| ASSERT_EQ(nullptr, GetAudioFocusedSession());
|
|
|
| @@ -137,7 +140,7 @@ TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_ReplaceFocusedEntry) {
|
|
|
| TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_Duplicate) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| ASSERT_EQ(nullptr, GetAudioFocusedSession());
|
|
|
| @@ -150,7 +153,7 @@ TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_Duplicate) {
|
|
|
| TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_FromTransient) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(
|
| media_session, AudioFocusManager::AudioFocusType::GainTransientMayDuck);
|
| @@ -164,7 +167,7 @@ TEST_F(AudioFocusManagerTest, RequestAudioFocusGain_FromTransient) {
|
|
|
| TEST_F(AudioFocusManagerTest, RequestAudioFocusTransient_FromGain) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(media_session, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(media_session, GetAudioFocusedSession());
|
| @@ -179,10 +182,12 @@ TEST_F(AudioFocusManagerTest, RequestAudioFocusTransient_FromGain) {
|
|
|
| TEST_F(AudioFocusManagerTest, RequestAudioFocusTransient_FromGainWhileDucking) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(0, GetTransientMaybeDuckCount());
|
| @@ -201,7 +206,7 @@ TEST_F(AudioFocusManagerTest, RequestAudioFocusTransient_FromGainWhileDucking) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandonAudioFocus_RemovesFocusedEntry) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(media_session, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(media_session, GetAudioFocusedSession());
|
| @@ -212,7 +217,7 @@ TEST_F(AudioFocusManagerTest, AbandonAudioFocus_RemovesFocusedEntry) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandonAudioFocus_NoAssociatedEntry) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| AbandonAudioFocus(media_session);
|
| ASSERT_EQ(nullptr, GetAudioFocusedSession());
|
| @@ -220,7 +225,7 @@ TEST_F(AudioFocusManagerTest, AbandonAudioFocus_NoAssociatedEntry) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandonAudioFocus_RemovesTransientEntry) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(
|
| media_session, AudioFocusManager::AudioFocusType::GainTransientMayDuck);
|
| @@ -232,10 +237,12 @@ TEST_F(AudioFocusManagerTest, AbandonAudioFocus_RemovesTransientEntry) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandonAudioFocus_WhileDuckingThenResume) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(0, GetTransientMaybeDuckCount());
|
| @@ -258,10 +265,12 @@ TEST_F(AudioFocusManagerTest, AbandonAudioFocus_WhileDuckingThenResume) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandonAudioFocus_StopsDucking) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(0, GetTransientMaybeDuckCount());
|
| @@ -279,10 +288,12 @@ TEST_F(AudioFocusManagerTest, AbandonAudioFocus_StopsDucking) {
|
|
|
| TEST_F(AudioFocusManagerTest, DuckWhilePlaying) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_FALSE(IsSessionDucking(media_session_1));
|
| @@ -294,10 +305,12 @@ TEST_F(AudioFocusManagerTest, DuckWhilePlaying) {
|
|
|
| TEST_F(AudioFocusManagerTest, GainSuspendsTransient) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(
|
| media_session_2, AudioFocusManager::AudioFocusType::GainTransientMayDuck);
|
| @@ -308,13 +321,16 @@ TEST_F(AudioFocusManagerTest, GainSuspendsTransient) {
|
|
|
| TEST_F(AudioFocusManagerTest, DuckWithMultipleTransients) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_3(CreateWebContents());
|
| - MediaSession* media_session_3 = MediaSession::Get(web_contents_3.get());
|
| + MediaSessionImpl* media_session_3 =
|
| + MediaSessionImpl::Get(web_contents_3.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_FALSE(IsSessionDucking(media_session_1));
|
| @@ -336,7 +352,7 @@ TEST_F(AudioFocusManagerTest, DuckWithMultipleTransients) {
|
|
|
| TEST_F(AudioFocusManagerTest, WebContentsDestroyed_ReleasesFocus) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(media_session, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_EQ(media_session, GetAudioFocusedSession());
|
| @@ -347,7 +363,7 @@ TEST_F(AudioFocusManagerTest, WebContentsDestroyed_ReleasesFocus) {
|
|
|
| TEST_F(AudioFocusManagerTest, WebContentsDestroyed_ReleasesTransients) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| RequestAudioFocus(
|
| media_session, AudioFocusManager::AudioFocusType::GainTransientMayDuck);
|
| @@ -359,10 +375,12 @@ TEST_F(AudioFocusManagerTest, WebContentsDestroyed_ReleasesTransients) {
|
|
|
| TEST_F(AudioFocusManagerTest, WebContentsDestroyed_StopsDucking) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| RequestAudioFocus(media_session_1, AudioFocusManager::AudioFocusType::Gain);
|
| ASSERT_FALSE(IsSessionDucking(media_session_1));
|
| @@ -377,7 +395,7 @@ TEST_F(AudioFocusManagerTest, WebContentsDestroyed_StopsDucking) {
|
|
|
| TEST_F(AudioFocusManagerTest, PepperRequestsGainFocus) {
|
| std::unique_ptr<WebContents> web_contents(CreateWebContents());
|
| - MediaSession* media_session = MediaSession::Get(web_contents.get());
|
| + MediaSessionImpl* media_session = MediaSessionImpl::Get(web_contents.get());
|
|
|
| media_session->AddPlayer(
|
| pepper_observer_.get(), 0, media::MediaContentType::Pepper);
|
| @@ -389,10 +407,12 @@ TEST_F(AudioFocusManagerTest, PepperRequestsGainFocus) {
|
|
|
| TEST_F(AudioFocusManagerTest, GainDucksPepper) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| media_session_1->AddPlayer(
|
| pepper_observer_.get(), 0, media::MediaContentType::Pepper);
|
| @@ -407,13 +427,16 @@ TEST_F(AudioFocusManagerTest, GainDucksPepper) {
|
|
|
| TEST_F(AudioFocusManagerTest, AbandoningGainFocusRevokesTopMostPepperSession) {
|
| std::unique_ptr<WebContents> web_contents_1(CreateWebContents());
|
| - MediaSession* media_session_1 = MediaSession::Get(web_contents_1.get());
|
| + MediaSessionImpl* media_session_1 =
|
| + MediaSessionImpl::Get(web_contents_1.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_2(CreateWebContents());
|
| - MediaSession* media_session_2 = MediaSession::Get(web_contents_2.get());
|
| + MediaSessionImpl* media_session_2 =
|
| + MediaSessionImpl::Get(web_contents_2.get());
|
|
|
| std::unique_ptr<WebContents> web_contents_3(CreateWebContents());
|
| - MediaSession* media_session_3 = MediaSession::Get(web_contents_3.get());
|
| + MediaSessionImpl* media_session_3 =
|
| + MediaSessionImpl::Get(web_contents_3.get());
|
|
|
| media_session_1->AddPlayer(
|
| pepper_observer_.get(), 0, media::MediaContentType::Pepper);
|
|
|