summaryrefslogtreecommitdiffstats
path: root/chromium/services/media_session/media_controller_unittest.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2019-03-18 14:18:40 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2019-03-18 14:38:27 +0000
commit0078283f3cf586ae8a0d0df501a08e7440636b43 (patch)
tree9e227bbc71af5611b00176d23bf4f474c09bf54c /chromium/services/media_session/media_controller_unittest.cc
parenteaf1da4d961fbbda9455f9af3b23d1af777f43fa (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.cc92
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());
}