Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Side by Side Diff: components/cast_channel/cast_test_util.h

Issue 2942993003: [cast_channel] Make CastMessageHandler a CastSocket::Observer instead of CastTransport::Delegate (Closed)
Patch Set: resolve code review comments from Derek Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_ 5 #ifndef COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_
6 #define COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_ 6 #define COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_
7 7
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 ~MockCastTransportDelegate() override; 47 ~MockCastTransportDelegate() override;
48 48
49 MOCK_METHOD1(OnError, void(ChannelError error)); 49 MOCK_METHOD1(OnError, void(ChannelError error));
50 MOCK_METHOD1(OnMessage, void(const CastMessage& message)); 50 MOCK_METHOD1(OnMessage, void(const CastMessage& message));
51 MOCK_METHOD0(Start, void(void)); 51 MOCK_METHOD0(Start, void(void));
52 52
53 private: 53 private:
54 DISALLOW_COPY_AND_ASSIGN(MockCastTransportDelegate); 54 DISALLOW_COPY_AND_ASSIGN(MockCastTransportDelegate);
55 }; 55 };
56 56
57 class MockCastSocketObserver : public CastSocket::Observer {
58 public:
59 MockCastSocketObserver();
60 ~MockCastSocketObserver() override;
61
62 MOCK_METHOD2(OnError, void(const CastSocket& socket, ChannelError error));
63 MOCK_METHOD2(OnMessage,
64 void(const CastSocket& socket, const CastMessage& message));
65 };
66
57 class MockCastSocket : public CastSocket { 67 class MockCastSocket : public CastSocket {
58 public: 68 public:
59 MockCastSocket(); 69 MockCastSocket();
60 ~MockCastSocket() override; 70 ~MockCastSocket() override;
61 71
62 // Mockable version of Connect. Accepts a bare pointer to a mock object. 72 MOCK_METHOD1(Connect, void(base::Callback<void(ChannelError)> callback));
63 // (GMock won't compile with scoped_ptr method parameters.)
64 MOCK_METHOD2(ConnectRawPtr,
65 void(CastTransport::Delegate* delegate,
66 base::Callback<void(ChannelError)> callback));
67
68 // Proxy for ConnectRawPtr. Unpacks scoped_ptr into a GMock-friendly bare
69 // ptr.
70 void Connect(std::unique_ptr<CastTransport::Delegate> delegate,
71 base::Callback<void(ChannelError)> callback) override {
72 delegate_ = std::move(delegate);
73 ConnectRawPtr(delegate_.get(), callback);
74 }
75
76 MOCK_METHOD1(Close, void(const net::CompletionCallback& callback)); 73 MOCK_METHOD1(Close, void(const net::CompletionCallback& callback));
77 MOCK_CONST_METHOD0(ip_endpoint, const net::IPEndPoint&()); 74 MOCK_CONST_METHOD0(ip_endpoint, const net::IPEndPoint&());
78 MOCK_CONST_METHOD0(id, int()); 75 MOCK_CONST_METHOD0(id, int());
79 MOCK_METHOD1(set_id, void(int id)); 76 MOCK_METHOD1(set_id, void(int id));
80 MOCK_CONST_METHOD0(ready_state, ReadyState()); 77 MOCK_CONST_METHOD0(ready_state, ReadyState());
81 MOCK_CONST_METHOD0(error_state, ChannelError()); 78 MOCK_CONST_METHOD0(error_state, ChannelError());
82 MOCK_CONST_METHOD0(keep_alive, bool(void)); 79 MOCK_CONST_METHOD0(keep_alive, bool(void));
83 MOCK_CONST_METHOD0(audio_only, bool(void)); 80 MOCK_CONST_METHOD0(audio_only, bool(void));
84 MOCK_METHOD1(SetErrorState, void(ChannelError error_state)); 81 MOCK_METHOD1(SetErrorState, void(ChannelError error_state));
82 MOCK_METHOD1(AddObserver, void(Observer* observer));
85 83
86 CastTransport* transport() const override { return mock_transport_.get(); } 84 CastTransport* transport() const override { return mock_transport_.get(); }
87 85
88 MockCastTransport* mock_transport() const { return mock_transport_.get(); } 86 MockCastTransport* mock_transport() const { return mock_transport_.get(); }
89 87
90 private: 88 private:
91 std::unique_ptr<MockCastTransport> mock_transport_; 89 std::unique_ptr<MockCastTransport> mock_transport_;
92 std::unique_ptr<CastTransport::Delegate> delegate_; 90 std::unique_ptr<Observer> observer_;
93 91
94 DISALLOW_COPY_AND_ASSIGN(MockCastSocket); 92 DISALLOW_COPY_AND_ASSIGN(MockCastSocket);
95 }; 93 };
96 94
97 // Creates the IPEndpoint 192.168.1.1. 95 // Creates the IPEndpoint 192.168.1.1.
98 net::IPEndPoint CreateIPEndPointForTest(); 96 net::IPEndPoint CreateIPEndPointForTest();
99 97
100 // Checks if two proto messages are the same. 98 // Checks if two proto messages are the same.
101 // From 99 // From
102 // third_party/cacheinvalidation/overrides/google/cacheinvalidation/deps/gmock.h 100 // third_party/cacheinvalidation/overrides/google/cacheinvalidation/deps/gmock.h
103 // TODO(kmarshall): promote to a shared testing library. 101 // TODO(kmarshall): promote to a shared testing library.
104 MATCHER_P(EqualsProto, message, "") { 102 MATCHER_P(EqualsProto, message, "") {
105 std::string expected_serialized, actual_serialized; 103 std::string expected_serialized, actual_serialized;
106 message.SerializeToString(&expected_serialized); 104 message.SerializeToString(&expected_serialized);
107 arg.SerializeToString(&actual_serialized); 105 arg.SerializeToString(&actual_serialized);
108 return expected_serialized == actual_serialized; 106 return expected_serialized == actual_serialized;
109 } 107 }
110 108
111 ACTION_TEMPLATE(PostCompletionCallbackTask, 109 ACTION_TEMPLATE(PostCompletionCallbackTask,
112 HAS_1_TEMPLATE_PARAMS(int, cb_idx), 110 HAS_1_TEMPLATE_PARAMS(int, cb_idx),
113 AND_1_VALUE_PARAMS(rv)) { 111 AND_1_VALUE_PARAMS(rv)) {
114 base::ThreadTaskRunnerHandle::Get()->PostTask( 112 base::ThreadTaskRunnerHandle::Get()->PostTask(
115 FROM_HERE, base::Bind(testing::get<cb_idx>(args), rv)); 113 FROM_HERE, base::Bind(testing::get<cb_idx>(args), rv));
116 } 114 }
117 115
118 } // namespace cast_channel 116 } // namespace cast_channel
119 117
120 #endif // COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_ 118 #endif // COMPONENTS_CAST_CHANNEL_CAST_TEST_UTIL_H_
OLDNEW
« no previous file with comments | « components/cast_channel/cast_socket_unittest.cc ('k') | components/cast_channel/cast_test_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698