blob: 5049375e4d1dfa967d426a4ea0fa9e5acfe76aba (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/media/router/media_router_mojo_test.h"
#include "base/run_loop.h"
namespace media_router {
namespace {
const char kInstanceId[] = "instance123";
template <typename T1, typename T2>
void ExpectAsyncResultEqual(T1 expected, T2 actual) {
EXPECT_EQ(expected, actual);
}
} // namespace
MockMediaRouteProvider::MockMediaRouteProvider() {
}
MockMediaRouteProvider::~MockMediaRouteProvider() {
}
MediaRouterMojoTest::MediaRouterMojoTest()
: message_loop_(mojo::common::MessagePumpMojo::Create()),
extension_id_("ext-123"),
mock_media_router_(new MediaRouterMojoImpl(&mock_event_page_tracker_)) {
mock_media_router_->set_instance_id_for_test(kInstanceId);
}
MediaRouterMojoTest::~MediaRouterMojoTest() {
}
void MediaRouterMojoTest::ConnectProviderManagerService() {
// Bind the |media_route_provider| interface to |media_route_provider_|.
auto request = mojo::GetProxy(&media_router_proxy_);
mock_media_router_->BindToMojoRequest(request.Pass(), extension_id_);
// Bind the Mojo MediaRouter interface used by |mock_media_router_| to
// |mock_media_route_provider_service_|.
interfaces::MediaRouteProviderPtr mojo_media_router;
binding_.reset(new mojo::Binding<interfaces::MediaRouteProvider>(
&mock_media_route_provider_, mojo::GetProxy(&mojo_media_router)));
media_router_proxy_->RegisterMediaRouteProvider(
mojo_media_router.Pass(),
base::Bind(&ExpectAsyncResultEqual<std::string, mojo::String>,
kInstanceId));
}
void MediaRouterMojoTest::SetUp() {
ON_CALL(mock_event_page_tracker_, IsEventPageSuspended(extension_id_))
.WillByDefault(testing::Return(false));
ConnectProviderManagerService();
message_loop_.RunUntilIdle();
}
void MediaRouterMojoTest::ProcessEventLoop() {
base::RunLoop().RunUntilIdle();
}
} // namespace media_router
|