diff options
Diffstat (limited to 'chromium/content/browser/media/session/media_session_impl_browsertest.cc')
-rw-r--r-- | chromium/content/browser/media/session/media_session_impl_browsertest.cc | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/chromium/content/browser/media/session/media_session_impl_browsertest.cc b/chromium/content/browser/media/session/media_session_impl_browsertest.cc index df48df6df53..28fdcebf58d 100644 --- a/chromium/content/browser/media/session/media_session_impl_browsertest.cc +++ b/chromium/content/browser/media/session/media_session_impl_browsertest.cc @@ -336,6 +336,34 @@ IN_PROC_BROWSER_TEST_F(MediaSessionImplBrowserTest, AudioFocusInitialState) { EXPECT_FALSE(IsActive()); } +IN_PROC_BROWSER_TEST_F(MediaSessionImplBrowserTest, + AddPlayerOnSuspendedFocusUnducks) { + auto player_observer = std::make_unique<MockMediaSessionPlayerObserver>(); + StartNewPlayer(player_observer.get(), media::MediaContentType::Persistent); + + UISuspend(); + EXPECT_FALSE(IsActive()); + + SystemStartDucking(); + EXPECT_EQ(kDuckingVolumeMultiplier, player_observer->GetVolumeMultiplier(0)); + + EXPECT_TRUE( + AddPlayer(player_observer.get(), 0, media::MediaContentType::Persistent)); + EXPECT_EQ(kDefaultVolumeMultiplier, player_observer->GetVolumeMultiplier(0)); +} + +IN_PROC_BROWSER_TEST_F(MediaSessionImplBrowserTest, + CanRequestFocusBeforePlayerCreation) { + auto player_observer = std::make_unique<MockMediaSessionPlayerObserver>(); + + media_session_->RequestSystemAudioFocus( + content::AudioFocusManager::AudioFocusType::Gain); + EXPECT_TRUE(IsActive()); + + StartNewPlayer(player_observer.get(), media::MediaContentType::Persistent); + EXPECT_TRUE(IsActive()); +} + IN_PROC_BROWSER_TEST_F(MediaSessionImplBrowserTest, StartPlayerGivesFocus) { auto player_observer = std::make_unique<MockMediaSessionPlayerObserver>(); |