diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-03-18 14:18:40 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-03-18 14:38:27 +0000 |
commit | 0078283f3cf586ae8a0d0df501a08e7440636b43 (patch) | |
tree | 9e227bbc71af5611b00176d23bf4f474c09bf54c /chromium/services/media_session/media_controller_unittest.cc | |
parent | eaf1da4d961fbbda9455f9af3b23d1af777f43fa (diff) |
BASELINE: Update Chromium to 73.0.3683.83
Change-Id: Ie2948cebb1e9204f293fdf63c36d6215a5f5b507
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/services/media_session/media_controller_unittest.cc')
-rw-r--r-- | chromium/services/media_session/media_controller_unittest.cc | 92 |
1 files changed, 69 insertions, 23 deletions
diff --git a/chromium/services/media_session/media_controller_unittest.cc b/chromium/services/media_session/media_controller_unittest.cc index 16a15db88b3..9e2f0d28225 100644 --- a/chromium/services/media_session/media_controller_unittest.cc +++ b/chromium/services/media_session/media_controller_unittest.cc @@ -16,6 +16,7 @@ #include "services/media_session/media_session_service.h" #include "services/media_session/public/cpp/media_metadata.h" #include "services/media_session/public/cpp/test/mock_media_session.h" +#include "services/media_session/public/cpp/test/test_media_controller.h" #include "services/media_session/public/mojom/constants.mojom.h" #include "services/service_manager/public/cpp/test/test_connector_factory.h" #include "testing/gtest/include/gtest/gtest.h" @@ -416,18 +417,18 @@ TEST_F(MediaControllerTest, ActiveController_Observer_StateTransition) { } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); observer.WaitForState(mojom::MediaSessionInfo::SessionState::kActive); } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); controller()->Suspend(); observer.WaitForState(mojom::MediaSessionInfo::SessionState::kSuspended); } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); RequestAudioFocus(media_session_2, mojom::AudioFocusType::kGain); observer.WaitForState(mojom::MediaSessionInfo::SessionState::kActive); } @@ -439,7 +440,7 @@ TEST_F(MediaControllerTest, ActiveController_Observer_StateTransition) { } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); observer.WaitForState(mojom::MediaSessionInfo::SessionState::kActive); } } @@ -523,8 +524,8 @@ TEST_F(MediaControllerTest, ActiveController_Metadata_Observer_Abandoned) { media_session.AbandonAudioFocusFromClient(); { - test::MockMediaSessionMojoObserver observer(controller()); - EXPECT_FALSE(observer.WaitForMetadata()); + test::TestMediaControllerObserver observer(controller()); + observer.WaitForEmptyMetadata(); } } @@ -541,9 +542,9 @@ TEST_F(MediaControllerTest, ActiveController_Metadata_Observer_Empty) { } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); media_session.SimulateMetadataChanged(test_metadata); - EXPECT_EQ(test_metadata, observer.WaitForMetadata()); + observer.WaitForEmptyMetadata(); } } @@ -565,9 +566,10 @@ TEST_F(MediaControllerTest, ActiveController_Metadata_Observer_WithInfo) { } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); media_session.SimulateMetadataChanged(test_metadata); - EXPECT_EQ(metadata, observer.WaitForNonEmptyMetadata()); + observer.WaitForNonEmptyMetadata(); + EXPECT_EQ(metadata, observer.session_metadata()); } } @@ -586,8 +588,8 @@ TEST_F(MediaControllerTest, ActiveController_Metadata_AddObserver_Empty) { media_session.SimulateMetadataChanged(test_metadata); { - test::MockMediaSessionMojoObserver observer(controller()); - EXPECT_EQ(test_metadata, observer.WaitForMetadata()); + test::TestMediaControllerObserver observer(controller()); + observer.WaitForEmptyMetadata(); } } @@ -611,8 +613,9 @@ TEST_F(MediaControllerTest, ActiveController_Metadata_AddObserver_WithInfo) { media_session.SimulateMetadataChanged(test_metadata); { - test::MockMediaSessionMojoObserver observer(controller()); - EXPECT_EQ(metadata, *observer.WaitForMetadata()); + test::TestMediaControllerObserver observer(controller()); + observer.WaitForNonEmptyMetadata(); + EXPECT_EQ(metadata, observer.session_metadata()); } } @@ -740,7 +743,7 @@ TEST_F(MediaControllerTest, ActiveController_Actions_AddObserver_Empty) { } { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); observer.WaitForActions(); EXPECT_TRUE(observer.actions().empty()); } @@ -759,7 +762,7 @@ TEST_F(MediaControllerTest, ActiveController_Actions_AddObserver_WithInfo) { media_session.EnableAction(mojom::MediaSessionAction::kPlay); { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); observer.WaitForActions(); EXPECT_EQ(1u, observer.actions().size()); @@ -779,9 +782,7 @@ TEST_F(MediaControllerTest, ActiveController_Actions_Observer_Empty) { } { - test::MockMediaSessionMojoObserver observer(controller()); - observer.WaitForActions(); - + test::TestMediaControllerObserver observer(controller()); media_session.DisableAction(mojom::MediaSessionAction::kPlay); observer.WaitForActions(); @@ -800,9 +801,7 @@ TEST_F(MediaControllerTest, ActiveController_Actions_Observer_WithInfo) { } { - test::MockMediaSessionMojoObserver observer(controller()); - observer.WaitForActions(); - + test::TestMediaControllerObserver observer(controller()); media_session.EnableAction(mojom::MediaSessionAction::kPlay); observer.WaitForActions(); @@ -825,7 +824,54 @@ TEST_F(MediaControllerTest, ActiveController_Actions_Observer_Abandoned) { media_session.AbandonAudioFocusFromClient(); { - test::MockMediaSessionMojoObserver observer(controller()); + test::TestMediaControllerObserver observer(controller()); + observer.WaitForActions(); + EXPECT_TRUE(observer.actions().empty()); + } +} + +TEST_F(MediaControllerTest, ActiveController_Observer_Abandoned) { + test::MockMediaSession media_session; + media_session.SetIsControllable(true); + + { + test::MockMediaSessionMojoObserver observer(media_session); + RequestAudioFocus(media_session, mojom::AudioFocusType::kGain); + observer.WaitForState(mojom::MediaSessionInfo::SessionState::kActive); + } + + { + test::TestMediaControllerObserver observer(controller()); + media_session.AbandonAudioFocusFromClient(); + + // We should see empty info, metadata and actions flushed since the active + // controller is no longer bound to a media session. + observer.WaitForEmptyInfo(); + observer.WaitForEmptyMetadata(); + observer.WaitForActions(); + EXPECT_TRUE(observer.actions().empty()); + } +} + +TEST_F(MediaControllerTest, ActiveController_AddObserver_Abandoned) { + test::MockMediaSession media_session; + media_session.SetIsControllable(true); + + { + test::MockMediaSessionMojoObserver observer(media_session); + RequestAudioFocus(media_session, mojom::AudioFocusType::kGain); + observer.WaitForState(mojom::MediaSessionInfo::SessionState::kActive); + } + + media_session.AbandonAudioFocusFromClient(); + + { + test::TestMediaControllerObserver observer(controller()); + + // We should see empty info, metadata and actions since the active + // controller is no longer bound to a media session. + observer.WaitForEmptyInfo(); + observer.WaitForEmptyMetadata(); observer.WaitForActions(); EXPECT_TRUE(observer.actions().empty()); } |