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 "chrome/browser/media/router/mojo/media_router_mojo_test.h" | 5 #include "chrome/browser/media/router/mojo/media_router_mojo_test.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
10 #include "extensions/common/test_util.h" | 10 #include "extensions/common/test_util.h" |
11 | 11 |
12 namespace media_router { | 12 namespace media_router { |
13 namespace { | 13 namespace { |
14 | |
15 const char kInstanceId[] = "instance123"; | 14 const char kInstanceId[] = "instance123"; |
16 | |
17 void ExpectEqualStrings(const std::string& expected, | |
18 const std::string& actual) { | |
19 EXPECT_EQ(expected, actual); | |
20 } | |
21 | |
22 } // namespace | 15 } // namespace |
23 | 16 |
24 MockMediaRouteProvider::MockMediaRouteProvider() {} | 17 MockMediaRouteProvider::MockMediaRouteProvider() {} |
25 | 18 |
26 MockMediaRouteProvider::~MockMediaRouteProvider() {} | 19 MockMediaRouteProvider::~MockMediaRouteProvider() {} |
27 | 20 |
28 MockEventPageTracker::MockEventPageTracker() {} | 21 MockEventPageTracker::MockEventPageTracker() {} |
29 | 22 |
30 MockEventPageTracker::~MockEventPageTracker() {} | 23 MockEventPageTracker::~MockEventPageTracker() {} |
31 | 24 |
32 MockMediaController::MockMediaController() : binding_(this) {} | 25 MockMediaController::MockMediaController() : binding_(this) {} |
33 | 26 |
34 MockMediaController::~MockMediaController() {} | 27 MockMediaController::~MockMediaController() {} |
35 | 28 |
| 29 RegisterMediaRouteProviderHandler::RegisterMediaRouteProviderHandler() {} |
| 30 RegisterMediaRouteProviderHandler::~RegisterMediaRouteProviderHandler() {} |
| 31 |
36 void MockMediaController::Bind(mojom::MediaControllerRequest request) { | 32 void MockMediaController::Bind(mojom::MediaControllerRequest request) { |
37 binding_.Bind(std::move(request)); | 33 binding_.Bind(std::move(request)); |
38 } | 34 } |
39 | 35 |
40 mojom::MediaControllerPtr MockMediaController::BindInterfacePtr() { | 36 mojom::MediaControllerPtr MockMediaController::BindInterfacePtr() { |
41 return binding_.CreateInterfacePtrAndBind(); | 37 return binding_.CreateInterfacePtrAndBind(); |
42 } | 38 } |
43 | 39 |
44 void MockMediaController::CloseBinding() { | 40 void MockMediaController::CloseBinding() { |
45 binding_.Close(); | 41 binding_.Close(); |
46 } | 42 } |
47 | 43 |
48 MockMediaRouteControllerObserver::MockMediaRouteControllerObserver( | 44 MockMediaRouteControllerObserver::MockMediaRouteControllerObserver( |
49 scoped_refptr<MediaRouteController> controller) | 45 scoped_refptr<MediaRouteController> controller) |
50 : MediaRouteController::Observer(controller) {} | 46 : MediaRouteController::Observer(controller) {} |
51 | 47 |
52 MockMediaRouteControllerObserver::~MockMediaRouteControllerObserver() {} | 48 MockMediaRouteControllerObserver::~MockMediaRouteControllerObserver() {} |
53 | 49 |
54 MediaRouterMojoTest::MediaRouterMojoTest() | 50 MediaRouterMojoTest::MediaRouterMojoTest() |
55 : mock_media_router_(new MediaRouterMojoImpl(&mock_event_page_tracker_)) { | 51 : profile_(new TestingProfile()), |
| 52 mock_media_router_( |
| 53 new MediaRouterMojoImpl(&mock_event_page_tracker_, profile_.get())) { |
56 mock_media_router_->Initialize(); | 54 mock_media_router_->Initialize(); |
57 mock_media_router_->set_instance_id_for_test(kInstanceId); | 55 mock_media_router_->set_instance_id_for_test(kInstanceId); |
58 extension_ = extensions::test_util::CreateEmptyExtension(); | 56 extension_ = extensions::test_util::CreateEmptyExtension(); |
59 } | 57 } |
60 | 58 |
61 MediaRouterMojoTest::~MediaRouterMojoTest() {} | 59 MediaRouterMojoTest::~MediaRouterMojoTest() {} |
62 | 60 |
63 void MediaRouterMojoTest::ConnectProviderManagerService() { | 61 void MediaRouterMojoTest::ConnectProviderManagerService() { |
64 // Bind the |media_route_provider| interface to |media_route_provider_|. | 62 // Bind the |media_route_provider| interface to |media_route_provider_|. |
65 auto request = mojo::MakeRequest(&media_router_proxy_); | 63 auto request = mojo::MakeRequest(&media_router_proxy_); |
66 mock_media_router_->BindToMojoRequest(std::move(request), *extension_); | 64 mock_media_router_->BindToMojoRequest(std::move(request), *extension_); |
67 | 65 |
68 // Bind the Mojo MediaRouter interface used by |mock_media_router_| to | 66 // Bind the Mojo MediaRouter interface used by |mock_media_router_| to |
69 // |mock_media_route_provider_service_|. | 67 // |mock_media_route_provider_service_|. |
70 mojom::MediaRouteProviderPtr mojo_media_router; | 68 mojom::MediaRouteProviderPtr mojo_media_router; |
71 binding_.reset(new mojo::Binding<mojom::MediaRouteProvider>( | 69 binding_.reset(new mojo::Binding<mojom::MediaRouteProvider>( |
72 &mock_media_route_provider_, mojo::MakeRequest(&mojo_media_router))); | 70 &mock_media_route_provider_, mojo::MakeRequest(&mojo_media_router))); |
| 71 EXPECT_CALL(provide_handler_, InvokeRaw(kInstanceId, testing::_)); |
73 media_router_proxy_->RegisterMediaRouteProvider( | 72 media_router_proxy_->RegisterMediaRouteProvider( |
74 std::move(mojo_media_router), | 73 std::move(mojo_media_router), |
75 base::Bind(&ExpectEqualStrings, kInstanceId)); | 74 base::Bind(&RegisterMediaRouteProviderHandler::Invoke, |
| 75 base::Unretained(&provide_handler_))); |
76 } | 76 } |
77 | 77 |
78 void MediaRouterMojoTest::SetUp() { | 78 void MediaRouterMojoTest::SetUp() { |
79 ON_CALL(mock_event_page_tracker_, IsEventPageSuspended(extension_id())) | 79 ON_CALL(mock_event_page_tracker_, IsEventPageSuspended(extension_id())) |
80 .WillByDefault(testing::Return(false)); | 80 .WillByDefault(testing::Return(false)); |
81 ConnectProviderManagerService(); | 81 ConnectProviderManagerService(); |
82 base::RunLoop().RunUntilIdle(); | 82 base::RunLoop().RunUntilIdle(); |
83 } | 83 } |
84 | 84 |
85 void MediaRouterMojoTest::TearDown() { | 85 void MediaRouterMojoTest::TearDown() { |
86 mock_media_router_->Shutdown(); | 86 mock_media_router_->Shutdown(); |
87 } | 87 } |
88 | 88 |
89 void MediaRouterMojoTest::ProcessEventLoop() { | 89 void MediaRouterMojoTest::ProcessEventLoop() { |
90 base::RunLoop().RunUntilIdle(); | 90 base::RunLoop().RunUntilIdle(); |
91 } | 91 } |
92 | 92 |
93 } // namespace media_router | 93 } // namespace media_router |
OLD | NEW |