Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "content/browser/media/android/media_session.h" | 5 #include "content/browser/media/android/media_session.h" |
| 6 | 6 |
| 7 #include <list> | 7 #include <list> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "content/browser/media/android/media_session_observer.h" | 10 #include "content/browser/media/android/media_session_observer.h" |
| (...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 147 bool HasAudioFocus() { return media_session_->IsActiveForTest(); } | 147 bool HasAudioFocus() { return media_session_->IsActiveForTest(); } |
| 148 | 148 |
| 149 MediaSession::Type GetSessionType() { | 149 MediaSession::Type GetSessionType() { |
| 150 return media_session_->audio_focus_type_for_test(); | 150 return media_session_->audio_focus_type_for_test(); |
| 151 } | 151 } |
| 152 | 152 |
| 153 bool IsControllable() { return media_session_->IsControllable(); } | 153 bool IsControllable() { return media_session_->IsControllable(); } |
| 154 | 154 |
| 155 bool IsSuspended() { return media_session_->IsSuspended(); } | 155 bool IsSuspended() { return media_session_->IsSuspended(); } |
| 156 | 156 |
| 157 void ResumeSession() { media_session_->Resume(); } | 157 void ResumeSession(content::MediaSession::SuspendType type) { |
| 158 media_session_->Resume(type); | |
| 159 } | |
| 158 | 160 |
| 159 void SuspendSession() { media_session_->Suspend(); } | 161 void SuspendSession(content::MediaSession::SuspendType type) { |
| 162 media_session_->Suspend(type); | |
| 163 } | |
| 160 | 164 |
| 161 MockWebContentsObserver* mock_web_contents_observer() { | 165 MockWebContentsObserver* mock_web_contents_observer() { |
| 162 return mock_web_contents_observer_.get(); | 166 return mock_web_contents_observer_.get(); |
| 163 } | 167 } |
| 164 | 168 |
| 165 protected: | 169 protected: |
| 166 MediaSession* media_session_; | 170 MediaSession* media_session_; |
| 167 scoped_ptr<MockWebContentsObserver> mock_web_contents_observer_; | 171 scoped_ptr<MockWebContentsObserver> mock_web_contents_observer_; |
| 168 | 172 |
| 169 DISALLOW_COPY_AND_ASSIGN(MediaSessionBrowserTest); | 173 DISALLOW_COPY_AND_ASSIGN(MediaSessionBrowserTest); |
| (...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 746 | 750 |
| 747 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, | 751 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, |
| 748 ControlsNotUpdatedDueToResumeSessionAction) { | 752 ControlsNotUpdatedDueToResumeSessionAction) { |
| 749 EXPECT_CALL(*mock_web_contents_observer(), | 753 EXPECT_CALL(*mock_web_contents_observer(), |
| 750 MediaSessionStateChanged(true, false)); | 754 MediaSessionStateChanged(true, false)); |
| 751 | 755 |
| 752 scoped_ptr<MockMediaSessionObserver> media_session_observer( | 756 scoped_ptr<MockMediaSessionObserver> media_session_observer( |
| 753 new MockMediaSessionObserver); | 757 new MockMediaSessionObserver); |
| 754 | 758 |
| 755 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); | 759 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); |
| 756 SuspendSession(); | 760 SuspendSession(content::MediaSession::SuspendType::UI); |
| 757 | 761 |
| 758 EXPECT_TRUE(IsControllable()); | 762 EXPECT_TRUE(IsControllable()); |
| 759 EXPECT_TRUE(IsSuspended()); | 763 EXPECT_TRUE(IsSuspended()); |
| 760 } | 764 } |
| 761 | 765 |
| 762 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, | 766 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, |
| 763 ControlsNotUpdatedDueToSuspendSessionAction) { | 767 ControlsNotUpdatedDueToSuspendSessionAction) { |
| 764 EXPECT_CALL(*mock_web_contents_observer(), | 768 EXPECT_CALL(*mock_web_contents_observer(), |
| 765 MediaSessionStateChanged(true, false)); | 769 MediaSessionStateChanged(true, false)); |
| 766 | 770 |
| 767 scoped_ptr<MockMediaSessionObserver> media_session_observer( | 771 scoped_ptr<MockMediaSessionObserver> media_session_observer( |
| 768 new MockMediaSessionObserver); | 772 new MockMediaSessionObserver); |
| 769 | 773 |
| 770 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); | 774 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); |
| 771 SuspendSession(); | 775 SuspendSession(content::MediaSession::SuspendType::UI); |
| 772 ResumeSession(); | 776 ResumeSession(content::MediaSession::SuspendType::UI); |
| 773 | 777 |
| 774 EXPECT_TRUE(IsControllable()); | 778 EXPECT_TRUE(IsControllable()); |
| 775 EXPECT_FALSE(IsSuspended()); | 779 EXPECT_FALSE(IsSuspended()); |
| 780 } | |
| 781 | |
| 782 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, | |
| 783 DontResumeBySystemUISuspendedSessions) { | |
| 784 scoped_ptr<MockMediaSessionObserver> media_session_observer( | |
| 785 new MockMediaSessionObserver); | |
| 786 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); | |
| 787 SuspendSession(content::MediaSession::SuspendType::UI); | |
| 788 ResumeSession(content::MediaSession::SuspendType::System); | |
| 789 | |
| 790 EXPECT_TRUE(IsControllable()); | |
| 791 EXPECT_TRUE(IsSuspended()); | |
| 792 } | |
| 793 | |
| 794 IN_PROC_BROWSER_TEST_F(MediaSessionBrowserTest, | |
| 795 AllowUIResumeForSystemSuspend) { | |
| 796 scoped_ptr<MockMediaSessionObserver> media_session_observer( | |
| 797 new MockMediaSessionObserver); | |
| 798 StartNewPlayer(media_session_observer.get(), MediaSession::Type::Content); | |
| 799 SuspendSession(content::MediaSession::SuspendType::System); | |
| 800 ResumeSession(content::MediaSession::SuspendType::UI); | |
| 801 | |
| 802 EXPECT_TRUE(IsControllable()); | |
| 803 EXPECT_FALSE(IsSuspended()); | |
|
whywhat
2015/07/21 19:21:28
Add a test that checks that Suspend(System) and Re
| |
| 776 } | 804 } |
| OLD | NEW |