summaryrefslogtreecommitdiff
path: root/chromium/content/browser/media/session/media_session_impl_browsertest.cc
diff options
context:
space:
mode:
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.cc28
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>();