OLD | NEW |
(Empty) | |
| 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 |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "base/command_line.h" |
| 6 #include "content/browser/media/session/media_session.h" |
| 7 #include "content/browser/media/session/mock_media_session_observer.h" |
| 8 #include "content/public/test/content_browser_test.h" |
| 9 #include "content/shell/browser/shell.h" |
| 10 #include "media/base/media_switches.h" |
| 11 |
| 12 namespace content { |
| 13 |
| 14 class MediaSessionDelegateDefaultBrowserTest : public ContentBrowserTest { |
| 15 protected: |
| 16 void SetUpCommandLine(base::CommandLine* command_line) override { |
| 17 command_line->AppendSwitch(switches::kEnableDefaultMediaSession); |
| 18 } |
| 19 }; |
| 20 |
| 21 IN_PROC_BROWSER_TEST_F(MediaSessionDelegateDefaultBrowserTest, |
| 22 ActiveWebContentsPauseOthers) { |
| 23 scoped_ptr<MockMediaSessionObserver> media_session_observer( |
| 24 new MockMediaSessionObserver); |
| 25 |
| 26 MediaSession* media_session = MediaSession::Get(shell()->web_contents()); |
| 27 ASSERT_TRUE(media_session); |
| 28 |
| 29 WebContents* other_web_contents = CreateBrowser()->web_contents(); |
| 30 MediaSession* other_media_session = MediaSession::Get(other_web_contents); |
| 31 ASSERT_TRUE(other_media_session); |
| 32 |
| 33 media_session_observer->StartNewPlayer(); |
| 34 media_session->AddPlayer( |
| 35 media_session_observer.get(), 0, MediaSession::Type::Content); |
| 36 EXPECT_TRUE(media_session->IsActive()); |
| 37 EXPECT_FALSE(other_media_session->IsActive()); |
| 38 |
| 39 media_session_observer->StartNewPlayer(); |
| 40 other_media_session->AddPlayer( |
| 41 media_session_observer.get(), 1, MediaSession::Type::Content); |
| 42 EXPECT_FALSE(media_session->IsActive()); |
| 43 EXPECT_TRUE(other_media_session->IsActive()); |
| 44 |
| 45 media_session->Stop(MediaSession::SuspendType::UI); |
| 46 other_media_session->Stop(MediaSession::SuspendType::UI); |
| 47 } |
| 48 |
| 49 } // namespace content |
OLD | NEW |