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

Side by Side Diff: remoting/host/host_status_logger_unittest.cc

Issue 2798393007: Use SignalingAddress in SignalStrategy insterface. (Closed)
Patch Set: header Created 3 years, 8 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 #include "remoting/host/host_status_logger.h" 5 #include "remoting/host/host_status_logger.h"
6 6
7 #include "base/message_loop/message_loop.h" 7 #include "base/message_loop/message_loop.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "remoting/host/fake_host_status_monitor.h" 9 #include "remoting/host/fake_host_status_monitor.h"
10 #include "remoting/signaling/mock_signal_strategy.h" 10 #include "remoting/signaling/mock_signal_strategy.h"
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 if (log_entry->NextChild()) { 117 if (log_entry->NextChild()) {
118 return false; 118 return false;
119 } 119 }
120 return true; 120 return true;
121 } 121 }
122 122
123 } // namespace 123 } // namespace
124 124
125 class HostStatusLoggerTest : public testing::Test { 125 class HostStatusLoggerTest : public testing::Test {
126 public: 126 public:
127 HostStatusLoggerTest() {} 127 HostStatusLoggerTest() : signal_strategy_(SignalingAddress(kHostJid)) {}
128 void SetUp() override { 128 void SetUp() override {
129 EXPECT_CALL(signal_strategy_, AddListener(_)); 129 EXPECT_CALL(signal_strategy_, AddListener(_));
130 host_status_logger_.reset( 130 host_status_logger_.reset(
131 new HostStatusLogger(host_status_monitor_.AsWeakPtr(), 131 new HostStatusLogger(host_status_monitor_.AsWeakPtr(),
132 ServerLogEntry::ME2ME, 132 ServerLogEntry::ME2ME,
133 &signal_strategy_, 133 &signal_strategy_,
134 kTestBotJid)); 134 kTestBotJid));
135 EXPECT_CALL(signal_strategy_, RemoveListener(_)); 135 EXPECT_CALL(signal_strategy_, RemoveListener(_));
136 } 136 }
137 137
138 protected: 138 protected:
139 base::MessageLoop message_loop_; 139 base::MessageLoop message_loop_;
140 MockSignalStrategy signal_strategy_; 140 MockSignalStrategy signal_strategy_;
141 std::unique_ptr<HostStatusLogger> host_status_logger_; 141 std::unique_ptr<HostStatusLogger> host_status_logger_;
142 FakeHostStatusMonitor host_status_monitor_; 142 FakeHostStatusMonitor host_status_monitor_;
143 }; 143 };
144 144
145 TEST_F(HostStatusLoggerTest, SendNow) { 145 TEST_F(HostStatusLoggerTest, SendNow) {
146 base::RunLoop run_loop; 146 base::RunLoop run_loop;
147 { 147 {
148 InSequence s; 148 InSequence s;
149 EXPECT_CALL(signal_strategy_, GetLocalJid())
150 .WillRepeatedly(Return(kHostJid));
151 EXPECT_CALL(signal_strategy_, AddListener(_)); 149 EXPECT_CALL(signal_strategy_, AddListener(_));
152 EXPECT_CALL(signal_strategy_, GetNextId()); 150 EXPECT_CALL(signal_strategy_, GetNextId());
153 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct"))) 151 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct")))
154 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 152 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
155 EXPECT_CALL(signal_strategy_, RemoveListener(_)) 153 EXPECT_CALL(signal_strategy_, RemoveListener(_))
156 .WillOnce(QuitRunLoop(&run_loop)) 154 .WillOnce(QuitRunLoop(&run_loop))
157 .RetiresOnSaturation(); 155 .RetiresOnSaturation();
158 } 156 }
159 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED); 157 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED);
160 protocol::TransportRoute route; 158 protocol::TransportRoute route;
161 route.type = protocol::TransportRoute::DIRECT; 159 route.type = protocol::TransportRoute::DIRECT;
162 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route); 160 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route);
163 host_status_logger_->OnClientAuthenticated(kClientJid1); 161 host_status_logger_->OnClientAuthenticated(kClientJid1);
164 host_status_logger_->OnClientConnected(kClientJid1); 162 host_status_logger_->OnClientConnected(kClientJid1);
165 host_status_logger_->SetSignalingStateForTest( 163 host_status_logger_->SetSignalingStateForTest(
166 SignalStrategy::DISCONNECTED); 164 SignalStrategy::DISCONNECTED);
167 run_loop.Run(); 165 run_loop.Run();
168 } 166 }
169 167
170 TEST_F(HostStatusLoggerTest, SendLater) { 168 TEST_F(HostStatusLoggerTest, SendLater) {
171 base::RunLoop run_loop; 169 base::RunLoop run_loop;
172 protocol::TransportRoute route; 170 protocol::TransportRoute route;
173 route.type = protocol::TransportRoute::DIRECT; 171 route.type = protocol::TransportRoute::DIRECT;
174 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route); 172 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route);
175 host_status_logger_->OnClientAuthenticated(kClientJid1); 173 host_status_logger_->OnClientAuthenticated(kClientJid1);
176 host_status_logger_->OnClientConnected(kClientJid1); 174 host_status_logger_->OnClientConnected(kClientJid1);
175
177 { 176 {
178 InSequence s; 177 InSequence s;
179 EXPECT_CALL(signal_strategy_, GetLocalJid())
180 .WillRepeatedly(Return(kHostJid));
181 EXPECT_CALL(signal_strategy_, AddListener(_)); 178 EXPECT_CALL(signal_strategy_, AddListener(_));
182 EXPECT_CALL(signal_strategy_, GetNextId()); 179 EXPECT_CALL(signal_strategy_, GetNextId());
183 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct"))) 180 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct")))
184 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 181 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
185 EXPECT_CALL(signal_strategy_, RemoveListener(_)) 182 EXPECT_CALL(signal_strategy_, RemoveListener(_))
186 .WillOnce(QuitRunLoop(&run_loop)) 183 .WillOnce(QuitRunLoop(&run_loop))
187 .RetiresOnSaturation(); 184 .RetiresOnSaturation();
188 } 185 }
189 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED); 186 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED);
190 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED); 187 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED);
191 run_loop.Run(); 188 run_loop.Run();
192 } 189 }
193 190
194 TEST_F(HostStatusLoggerTest, SendTwoEntriesLater) { 191 TEST_F(HostStatusLoggerTest, SendTwoEntriesLater) {
195 base::RunLoop run_loop; 192 base::RunLoop run_loop;
196 protocol::TransportRoute route1; 193 protocol::TransportRoute route1;
197 route1.type = protocol::TransportRoute::DIRECT; 194 route1.type = protocol::TransportRoute::DIRECT;
198 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route1); 195 host_status_logger_->OnClientRouteChange(kClientJid1, "video", route1);
199 host_status_logger_->OnClientAuthenticated(kClientJid1); 196 host_status_logger_->OnClientAuthenticated(kClientJid1);
200 host_status_logger_->OnClientConnected(kClientJid1); 197 host_status_logger_->OnClientConnected(kClientJid1);
201 protocol::TransportRoute route2; 198 protocol::TransportRoute route2;
202 route2.type = protocol::TransportRoute::STUN; 199 route2.type = protocol::TransportRoute::STUN;
203 host_status_logger_->OnClientRouteChange(kClientJid2, "video", route2); 200 host_status_logger_->OnClientRouteChange(kClientJid2, "video", route2);
204 host_status_logger_->OnClientAuthenticated(kClientJid2); 201 host_status_logger_->OnClientAuthenticated(kClientJid2);
205 host_status_logger_->OnClientConnected(kClientJid2); 202 host_status_logger_->OnClientConnected(kClientJid2);
203
206 { 204 {
207 InSequence s; 205 InSequence s;
208 EXPECT_CALL(signal_strategy_, GetLocalJid())
209 .WillRepeatedly(Return(kHostJid));
210 EXPECT_CALL(signal_strategy_, AddListener(_)); 206 EXPECT_CALL(signal_strategy_, AddListener(_));
211 EXPECT_CALL(signal_strategy_, GetNextId()); 207 EXPECT_CALL(signal_strategy_, GetNextId());
212 EXPECT_CALL(signal_strategy_, 208 EXPECT_CALL(signal_strategy_,
213 SendStanzaPtr(IsTwoClientsConnected("direct", "stun"))) 209 SendStanzaPtr(IsTwoClientsConnected("direct", "stun")))
214 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 210 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
215 EXPECT_CALL(signal_strategy_, RemoveListener(_)) 211 EXPECT_CALL(signal_strategy_, RemoveListener(_))
216 .WillOnce(QuitRunLoop(&run_loop)) 212 .WillOnce(QuitRunLoop(&run_loop))
217 .RetiresOnSaturation(); 213 .RetiresOnSaturation();
218 } 214 }
219 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED); 215 host_status_logger_->SetSignalingStateForTest(SignalStrategy::CONNECTED);
220 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED); 216 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED);
221 run_loop.Run(); 217 run_loop.Run();
222 } 218 }
223 219
224 TEST_F(HostStatusLoggerTest, HandleRouteChangeInUnusualOrder) { 220 TEST_F(HostStatusLoggerTest, HandleRouteChangeInUnusualOrder) {
225 base::RunLoop run_loop; 221 base::RunLoop run_loop;
222
226 { 223 {
227 InSequence s; 224 InSequence s;
228 EXPECT_CALL(signal_strategy_, GetLocalJid())
229 .WillRepeatedly(Return(kHostJid));
230 EXPECT_CALL(signal_strategy_, AddListener(_)); 225 EXPECT_CALL(signal_strategy_, AddListener(_));
231 EXPECT_CALL(signal_strategy_, GetNextId()); 226 EXPECT_CALL(signal_strategy_, GetNextId());
232 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct"))) 227 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("direct")))
233 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 228 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
234 EXPECT_CALL(signal_strategy_, GetNextId()); 229 EXPECT_CALL(signal_strategy_, GetNextId());
235 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientDisconnected())) 230 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientDisconnected()))
236 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 231 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
237 EXPECT_CALL(signal_strategy_, GetNextId()); 232 EXPECT_CALL(signal_strategy_, GetNextId());
238 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("stun"))) 233 EXPECT_CALL(signal_strategy_, SendStanzaPtr(IsClientConnected("stun")))
239 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 234 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
(...skipping 11 matching lines...) Expand all
251 route2.type = protocol::TransportRoute::STUN; 246 route2.type = protocol::TransportRoute::STUN;
252 host_status_logger_->OnClientRouteChange(kClientJid2, "video", route2); 247 host_status_logger_->OnClientRouteChange(kClientJid2, "video", route2);
253 host_status_logger_->OnClientDisconnected(kClientJid1); 248 host_status_logger_->OnClientDisconnected(kClientJid1);
254 host_status_logger_->OnClientAuthenticated(kClientJid2); 249 host_status_logger_->OnClientAuthenticated(kClientJid2);
255 host_status_logger_->OnClientConnected(kClientJid2); 250 host_status_logger_->OnClientConnected(kClientJid2);
256 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED); 251 host_status_logger_->SetSignalingStateForTest(SignalStrategy::DISCONNECTED);
257 run_loop.Run(); 252 run_loop.Run();
258 } 253 }
259 254
260 } // namespace remoting 255 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/host/host_change_notification_listener_unittest.cc ('k') | remoting/host/it2me/it2me_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698