OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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/common/media_router/mojo/media_router_struct_traits.h" | 5 #include "chrome/common/media_router/mojo/media_router_struct_traits.h" |
6 | 6 |
| 7 #include <utility> |
| 8 |
7 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
8 #include "chrome/common/media_router/discovery/media_sink_internal.h" | 10 #include "chrome/common/media_router/discovery/media_sink_internal.h" |
9 #include "chrome/common/media_router/mojo/media_router.mojom.h" | 11 #include "chrome/common/media_router/mojo/media_router.mojom.h" |
10 #include "chrome/common/media_router/mojo/media_router_traits_test_service.mojom
.h" | 12 #include "chrome/common/media_router/mojo/media_router_traits_test_service.mojom
.h" |
11 #include "mojo/public/cpp/bindings/binding_set.h" | 13 #include "mojo/public/cpp/bindings/binding_set.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 14 #include "testing/gtest/include/gtest/gtest.h" |
13 | 15 |
14 namespace media_router { | 16 namespace media_router { |
15 | 17 |
16 class MediaRouterStructTraitsTest | 18 class MediaRouterStructTraitsTest |
17 : public testing::Test, | 19 : public testing::Test, |
18 public media_router::mojom::MediaRouterTraitsTestService { | 20 public media_router::mojom::MediaRouterTraitsTestService { |
19 public: | 21 public: |
20 MediaRouterStructTraitsTest() {} | 22 MediaRouterStructTraitsTest() {} |
21 | 23 |
22 protected: | 24 protected: |
23 mojom::MediaRouterTraitsTestServicePtr GetTraitsTestProxy() { | 25 mojom::MediaRouterTraitsTestServicePtr GetTraitsTestProxy() { |
24 return traits_test_bindings_.CreateInterfacePtrAndBind(this); | 26 return traits_test_bindings_.CreateInterfacePtrAndBind(this); |
25 } | 27 } |
26 | 28 |
27 private: | 29 private: |
28 // MediaRouterTraitsTestService Impl | 30 // MediaRouterTraitsTestService Impl |
29 void EchoMediaSink(const MediaSinkInternal& sink, | 31 void EchoMediaSink(const MediaSinkInternal& sink, |
30 const EchoMediaSinkCallback& callback) override { | 32 EchoMediaSinkCallback callback) override { |
31 callback.Run(sink); | 33 std::move(callback).Run(sink); |
32 } | 34 } |
33 | 35 |
34 base::MessageLoop loop_; | 36 base::MessageLoop loop_; |
35 mojo::BindingSet<MediaRouterTraitsTestService> traits_test_bindings_; | 37 mojo::BindingSet<MediaRouterTraitsTestService> traits_test_bindings_; |
36 | 38 |
37 DISALLOW_COPY_AND_ASSIGN(MediaRouterStructTraitsTest); | 39 DISALLOW_COPY_AND_ASSIGN(MediaRouterStructTraitsTest); |
38 }; | 40 }; |
39 | 41 |
40 TEST_F(MediaRouterStructTraitsTest, DialMediaSink) { | 42 TEST_F(MediaRouterStructTraitsTest, DialMediaSink) { |
41 MediaSink::Id sink_id("sinkId123"); | 43 MediaSink::Id sink_id("sinkId123"); |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 generic_sink.set_sink(sink); | 95 generic_sink.set_sink(sink); |
94 | 96 |
95 mojom::MediaRouterTraitsTestServicePtr proxy = GetTraitsTestProxy(); | 97 mojom::MediaRouterTraitsTestServicePtr proxy = GetTraitsTestProxy(); |
96 MediaSinkInternal output; | 98 MediaSinkInternal output; |
97 proxy->EchoMediaSink(generic_sink, &output); | 99 proxy->EchoMediaSink(generic_sink, &output); |
98 | 100 |
99 EXPECT_EQ(generic_sink, output); | 101 EXPECT_EQ(generic_sink, output); |
100 } | 102 } |
101 | 103 |
102 } // namespace media_router | 104 } // namespace media_router |
OLD | NEW |