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

Side by Side Diff: chrome/test/chromedriver/chrome/devtools_client_impl_unittest.cc

Issue 637933002: Replace FINAL and OVERRIDE with their C++11 counterparts in chrome/test (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 <list> 5 #include <list>
6 #include <string> 6 #include <string>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/json/json_reader.h" 10 #include "base/json/json_reader.h"
(...skipping 13 matching lines...) Expand all
24 24
25 Status CloserFunc() { 25 Status CloserFunc() {
26 return Status(kOk); 26 return Status(kOk);
27 } 27 }
28 28
29 class MockSyncWebSocket : public SyncWebSocket { 29 class MockSyncWebSocket : public SyncWebSocket {
30 public: 30 public:
31 MockSyncWebSocket() : connected_(false), id_(-1), queued_messages_(1) {} 31 MockSyncWebSocket() : connected_(false), id_(-1), queued_messages_(1) {}
32 virtual ~MockSyncWebSocket() {} 32 virtual ~MockSyncWebSocket() {}
33 33
34 virtual bool IsConnected() OVERRIDE { 34 virtual bool IsConnected() override {
35 return connected_; 35 return connected_;
36 } 36 }
37 37
38 virtual bool Connect(const GURL& url) OVERRIDE { 38 virtual bool Connect(const GURL& url) override {
39 EXPECT_STREQ("http://url/", url.possibly_invalid_spec().c_str()); 39 EXPECT_STREQ("http://url/", url.possibly_invalid_spec().c_str());
40 connected_ = true; 40 connected_ = true;
41 return true; 41 return true;
42 } 42 }
43 43
44 virtual bool Send(const std::string& message) OVERRIDE { 44 virtual bool Send(const std::string& message) override {
45 EXPECT_TRUE(connected_); 45 EXPECT_TRUE(connected_);
46 scoped_ptr<base::Value> value(base::JSONReader::Read(message)); 46 scoped_ptr<base::Value> value(base::JSONReader::Read(message));
47 base::DictionaryValue* dict = NULL; 47 base::DictionaryValue* dict = NULL;
48 EXPECT_TRUE(value->GetAsDictionary(&dict)); 48 EXPECT_TRUE(value->GetAsDictionary(&dict));
49 if (!dict) 49 if (!dict)
50 return false; 50 return false;
51 EXPECT_TRUE(dict->GetInteger("id", &id_)); 51 EXPECT_TRUE(dict->GetInteger("id", &id_));
52 std::string method; 52 std::string method;
53 EXPECT_TRUE(dict->GetString("method", &method)); 53 EXPECT_TRUE(dict->GetString("method", &method));
54 EXPECT_STREQ("method", method.c_str()); 54 EXPECT_STREQ("method", method.c_str());
55 base::DictionaryValue* params = NULL; 55 base::DictionaryValue* params = NULL;
56 EXPECT_TRUE(dict->GetDictionary("params", &params)); 56 EXPECT_TRUE(dict->GetDictionary("params", &params));
57 if (!params) 57 if (!params)
58 return false; 58 return false;
59 int param = -1; 59 int param = -1;
60 EXPECT_TRUE(params->GetInteger("param", &param)); 60 EXPECT_TRUE(params->GetInteger("param", &param));
61 EXPECT_EQ(1, param); 61 EXPECT_EQ(1, param);
62 return true; 62 return true;
63 } 63 }
64 64
65 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 65 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
66 std::string* message, 66 std::string* message,
67 const base::TimeDelta& timeout) OVERRIDE { 67 const base::TimeDelta& timeout) override {
68 if (timeout <= base::TimeDelta()) 68 if (timeout <= base::TimeDelta())
69 return SyncWebSocket::kTimeout; 69 return SyncWebSocket::kTimeout;
70 base::DictionaryValue response; 70 base::DictionaryValue response;
71 response.SetInteger("id", id_); 71 response.SetInteger("id", id_);
72 base::DictionaryValue result; 72 base::DictionaryValue result;
73 result.SetInteger("param", 1); 73 result.SetInteger("param", 1);
74 response.Set("result", result.DeepCopy()); 74 response.Set("result", result.DeepCopy());
75 base::JSONWriter::Write(&response, message); 75 base::JSONWriter::Write(&response, message);
76 --queued_messages_; 76 --queued_messages_;
77 return SyncWebSocket::kOk; 77 return SyncWebSocket::kOk;
78 } 78 }
79 79
80 virtual bool HasNextMessage() OVERRIDE { 80 virtual bool HasNextMessage() override {
81 return queued_messages_ > 0; 81 return queued_messages_ > 0;
82 } 82 }
83 83
84 protected: 84 protected:
85 bool connected_; 85 bool connected_;
86 int id_; 86 int id_;
87 int queued_messages_; 87 int queued_messages_;
88 }; 88 };
89 89
90 template <typename T> 90 template <typename T>
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 ASSERT_STREQ("{\"param\":1}", json.c_str()); 128 ASSERT_STREQ("{\"param\":1}", json.c_str());
129 } 129 }
130 130
131 namespace { 131 namespace {
132 132
133 class MockSyncWebSocket2 : public SyncWebSocket { 133 class MockSyncWebSocket2 : public SyncWebSocket {
134 public: 134 public:
135 MockSyncWebSocket2() {} 135 MockSyncWebSocket2() {}
136 virtual ~MockSyncWebSocket2() {} 136 virtual ~MockSyncWebSocket2() {}
137 137
138 virtual bool IsConnected() OVERRIDE { 138 virtual bool IsConnected() override {
139 return false; 139 return false;
140 } 140 }
141 141
142 virtual bool Connect(const GURL& url) OVERRIDE { 142 virtual bool Connect(const GURL& url) override {
143 return false; 143 return false;
144 } 144 }
145 145
146 virtual bool Send(const std::string& message) OVERRIDE { 146 virtual bool Send(const std::string& message) override {
147 EXPECT_TRUE(false); 147 EXPECT_TRUE(false);
148 return false; 148 return false;
149 } 149 }
150 150
151 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 151 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
152 std::string* message, 152 std::string* message,
153 const base::TimeDelta& timeout) OVERRIDE { 153 const base::TimeDelta& timeout) override {
154 EXPECT_TRUE(false); 154 EXPECT_TRUE(false);
155 return SyncWebSocket::kDisconnected; 155 return SyncWebSocket::kDisconnected;
156 } 156 }
157 157
158 virtual bool HasNextMessage() OVERRIDE { 158 virtual bool HasNextMessage() override {
159 return true; 159 return true;
160 } 160 }
161 }; 161 };
162 162
163 } // namespace 163 } // namespace
164 164
165 TEST_F(DevToolsClientImplTest, ConnectIfNecessaryConnectFails) { 165 TEST_F(DevToolsClientImplTest, ConnectIfNecessaryConnectFails) {
166 SyncWebSocketFactory factory = 166 SyncWebSocketFactory factory =
167 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket2>); 167 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket2>);
168 DevToolsClientImpl client(factory, "http://url", "id", 168 DevToolsClientImpl client(factory, "http://url", "id",
169 base::Bind(&CloserFunc)); 169 base::Bind(&CloserFunc));
170 ASSERT_EQ(kDisconnected, client.ConnectIfNecessary().code()); 170 ASSERT_EQ(kDisconnected, client.ConnectIfNecessary().code());
171 } 171 }
172 172
173 namespace { 173 namespace {
174 174
175 class MockSyncWebSocket3 : public SyncWebSocket { 175 class MockSyncWebSocket3 : public SyncWebSocket {
176 public: 176 public:
177 MockSyncWebSocket3() : connected_(false) {} 177 MockSyncWebSocket3() : connected_(false) {}
178 virtual ~MockSyncWebSocket3() {} 178 virtual ~MockSyncWebSocket3() {}
179 179
180 virtual bool IsConnected() OVERRIDE { 180 virtual bool IsConnected() override {
181 return connected_; 181 return connected_;
182 } 182 }
183 183
184 virtual bool Connect(const GURL& url) OVERRIDE { 184 virtual bool Connect(const GURL& url) override {
185 connected_ = true; 185 connected_ = true;
186 return true; 186 return true;
187 } 187 }
188 188
189 virtual bool Send(const std::string& message) OVERRIDE { 189 virtual bool Send(const std::string& message) override {
190 return false; 190 return false;
191 } 191 }
192 192
193 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 193 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
194 std::string* message, 194 std::string* message,
195 const base::TimeDelta& timeout) OVERRIDE { 195 const base::TimeDelta& timeout) override {
196 EXPECT_TRUE(false); 196 EXPECT_TRUE(false);
197 return SyncWebSocket::kDisconnected; 197 return SyncWebSocket::kDisconnected;
198 } 198 }
199 199
200 virtual bool HasNextMessage() OVERRIDE { 200 virtual bool HasNextMessage() override {
201 return true; 201 return true;
202 } 202 }
203 203
204 private: 204 private:
205 bool connected_; 205 bool connected_;
206 }; 206 };
207 207
208 } // namespace 208 } // namespace
209 209
210 TEST_F(DevToolsClientImplTest, SendCommandSendFails) { 210 TEST_F(DevToolsClientImplTest, SendCommandSendFails) {
211 SyncWebSocketFactory factory = 211 SyncWebSocketFactory factory =
212 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket3>); 212 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket3>);
213 DevToolsClientImpl client(factory, "http://url", "id", 213 DevToolsClientImpl client(factory, "http://url", "id",
214 base::Bind(&CloserFunc)); 214 base::Bind(&CloserFunc));
215 ASSERT_EQ(kOk, client.ConnectIfNecessary().code()); 215 ASSERT_EQ(kOk, client.ConnectIfNecessary().code());
216 base::DictionaryValue params; 216 base::DictionaryValue params;
217 ASSERT_TRUE(client.SendCommand("method", params).IsError()); 217 ASSERT_TRUE(client.SendCommand("method", params).IsError());
218 } 218 }
219 219
220 namespace { 220 namespace {
221 221
222 class MockSyncWebSocket4 : public SyncWebSocket { 222 class MockSyncWebSocket4 : public SyncWebSocket {
223 public: 223 public:
224 MockSyncWebSocket4() : connected_(false) {} 224 MockSyncWebSocket4() : connected_(false) {}
225 virtual ~MockSyncWebSocket4() {} 225 virtual ~MockSyncWebSocket4() {}
226 226
227 virtual bool IsConnected() OVERRIDE { 227 virtual bool IsConnected() override {
228 return connected_; 228 return connected_;
229 } 229 }
230 230
231 virtual bool Connect(const GURL& url) OVERRIDE { 231 virtual bool Connect(const GURL& url) override {
232 connected_ = true; 232 connected_ = true;
233 return true; 233 return true;
234 } 234 }
235 235
236 virtual bool Send(const std::string& message) OVERRIDE { 236 virtual bool Send(const std::string& message) override {
237 return true; 237 return true;
238 } 238 }
239 239
240 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 240 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
241 std::string* message, 241 std::string* message,
242 const base::TimeDelta& timeout) OVERRIDE { 242 const base::TimeDelta& timeout) override {
243 return SyncWebSocket::kDisconnected; 243 return SyncWebSocket::kDisconnected;
244 } 244 }
245 245
246 virtual bool HasNextMessage() OVERRIDE { 246 virtual bool HasNextMessage() override {
247 return true; 247 return true;
248 } 248 }
249 249
250 private: 250 private:
251 bool connected_; 251 bool connected_;
252 }; 252 };
253 253
254 } // namespace 254 } // namespace
255 255
256 TEST_F(DevToolsClientImplTest, SendCommandReceiveNextMessageFails) { 256 TEST_F(DevToolsClientImplTest, SendCommandReceiveNextMessageFails) {
257 SyncWebSocketFactory factory = 257 SyncWebSocketFactory factory =
258 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket4>); 258 base::Bind(&CreateMockSyncWebSocket<MockSyncWebSocket4>);
259 DevToolsClientImpl client(factory, "http://url", "id", 259 DevToolsClientImpl client(factory, "http://url", "id",
260 base::Bind(&CloserFunc)); 260 base::Bind(&CloserFunc));
261 ASSERT_EQ(kOk, client.ConnectIfNecessary().code()); 261 ASSERT_EQ(kOk, client.ConnectIfNecessary().code());
262 base::DictionaryValue params; 262 base::DictionaryValue params;
263 ASSERT_TRUE(client.SendCommand("method", params).IsError()); 263 ASSERT_TRUE(client.SendCommand("method", params).IsError());
264 } 264 }
265 265
266 namespace { 266 namespace {
267 267
268 class FakeSyncWebSocket : public SyncWebSocket { 268 class FakeSyncWebSocket : public SyncWebSocket {
269 public: 269 public:
270 FakeSyncWebSocket() : connected_(false) {} 270 FakeSyncWebSocket() : connected_(false) {}
271 virtual ~FakeSyncWebSocket() {} 271 virtual ~FakeSyncWebSocket() {}
272 272
273 virtual bool IsConnected() OVERRIDE { 273 virtual bool IsConnected() override {
274 return connected_; 274 return connected_;
275 } 275 }
276 276
277 virtual bool Connect(const GURL& url) OVERRIDE { 277 virtual bool Connect(const GURL& url) override {
278 EXPECT_FALSE(connected_); 278 EXPECT_FALSE(connected_);
279 connected_ = true; 279 connected_ = true;
280 return true; 280 return true;
281 } 281 }
282 282
283 virtual bool Send(const std::string& message) OVERRIDE { 283 virtual bool Send(const std::string& message) override {
284 return true; 284 return true;
285 } 285 }
286 286
287 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 287 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
288 std::string* message, 288 std::string* message,
289 const base::TimeDelta& timeout) OVERRIDE { 289 const base::TimeDelta& timeout) override {
290 return SyncWebSocket::kOk; 290 return SyncWebSocket::kOk;
291 } 291 }
292 292
293 virtual bool HasNextMessage() OVERRIDE { 293 virtual bool HasNextMessage() override {
294 return true; 294 return true;
295 } 295 }
296 296
297 private: 297 private:
298 bool connected_; 298 bool connected_;
299 }; 299 };
300 300
301 bool ReturnCommand( 301 bool ReturnCommand(
302 const std::string& message, 302 const std::string& message,
303 int expected_id, 303 int expected_id,
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 return true; 346 return true;
347 } 347 }
348 348
349 class MockListener : public DevToolsEventListener { 349 class MockListener : public DevToolsEventListener {
350 public: 350 public:
351 MockListener() : called_(false) {} 351 MockListener() : called_(false) {}
352 virtual ~MockListener() { 352 virtual ~MockListener() {
353 EXPECT_TRUE(called_); 353 EXPECT_TRUE(called_);
354 } 354 }
355 355
356 virtual Status OnConnected(DevToolsClient* client) OVERRIDE { 356 virtual Status OnConnected(DevToolsClient* client) override {
357 return Status(kOk); 357 return Status(kOk);
358 } 358 }
359 359
360 virtual Status OnEvent(DevToolsClient* client, 360 virtual Status OnEvent(DevToolsClient* client,
361 const std::string& method, 361 const std::string& method,
362 const base::DictionaryValue& params) OVERRIDE { 362 const base::DictionaryValue& params) override {
363 called_ = true; 363 called_ = true;
364 EXPECT_STREQ("method", method.c_str()); 364 EXPECT_STREQ("method", method.c_str());
365 EXPECT_TRUE(params.HasKey("key")); 365 EXPECT_TRUE(params.HasKey("key"));
366 return Status(kOk); 366 return Status(kOk);
367 } 367 }
368 368
369 private: 369 private:
370 bool called_; 370 bool called_;
371 }; 371 };
372 372
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
695 on_event_called_(false) { 695 on_event_called_(false) {
696 client_->AddListener(this); 696 client_->AddListener(this);
697 } 697 }
698 virtual ~OnConnectedListener() {} 698 virtual ~OnConnectedListener() {}
699 699
700 void VerifyCalled() { 700 void VerifyCalled() {
701 EXPECT_TRUE(on_connected_called_); 701 EXPECT_TRUE(on_connected_called_);
702 EXPECT_TRUE(on_event_called_); 702 EXPECT_TRUE(on_event_called_);
703 } 703 }
704 704
705 virtual Status OnConnected(DevToolsClient* client) OVERRIDE { 705 virtual Status OnConnected(DevToolsClient* client) override {
706 EXPECT_EQ(client_, client); 706 EXPECT_EQ(client_, client);
707 EXPECT_STREQ("onconnected-id", client->GetId().c_str()); 707 EXPECT_STREQ("onconnected-id", client->GetId().c_str());
708 EXPECT_FALSE(on_connected_called_); 708 EXPECT_FALSE(on_connected_called_);
709 EXPECT_FALSE(on_event_called_); 709 EXPECT_FALSE(on_event_called_);
710 on_connected_called_ = true; 710 on_connected_called_ = true;
711 base::DictionaryValue params; 711 base::DictionaryValue params;
712 return client_->SendCommand(method_, params); 712 return client_->SendCommand(method_, params);
713 } 713 }
714 714
715 virtual Status OnEvent(DevToolsClient* client, 715 virtual Status OnEvent(DevToolsClient* client,
716 const std::string& method, 716 const std::string& method,
717 const base::DictionaryValue& params) OVERRIDE { 717 const base::DictionaryValue& params) override {
718 EXPECT_EQ(client_, client); 718 EXPECT_EQ(client_, client);
719 EXPECT_STREQ("onconnected-id", client->GetId().c_str()); 719 EXPECT_STREQ("onconnected-id", client->GetId().c_str());
720 EXPECT_TRUE(on_connected_called_); 720 EXPECT_TRUE(on_connected_called_);
721 on_event_called_ = true; 721 on_event_called_ = true;
722 return Status(kOk); 722 return Status(kOk);
723 } 723 }
724 724
725 private: 725 private:
726 std::string method_; 726 std::string method_;
727 DevToolsClient* client_; 727 DevToolsClient* client_;
728 bool on_connected_called_; 728 bool on_connected_called_;
729 bool on_event_called_; 729 bool on_event_called_;
730 }; 730 };
731 731
732 class OnConnectedSyncWebSocket : public SyncWebSocket { 732 class OnConnectedSyncWebSocket : public SyncWebSocket {
733 public: 733 public:
734 OnConnectedSyncWebSocket() : connected_(false) {} 734 OnConnectedSyncWebSocket() : connected_(false) {}
735 virtual ~OnConnectedSyncWebSocket() {} 735 virtual ~OnConnectedSyncWebSocket() {}
736 736
737 virtual bool IsConnected() OVERRIDE { 737 virtual bool IsConnected() override {
738 return connected_; 738 return connected_;
739 } 739 }
740 740
741 virtual bool Connect(const GURL& url) OVERRIDE { 741 virtual bool Connect(const GURL& url) override {
742 connected_ = true; 742 connected_ = true;
743 return true; 743 return true;
744 } 744 }
745 745
746 virtual bool Send(const std::string& message) OVERRIDE { 746 virtual bool Send(const std::string& message) override {
747 EXPECT_TRUE(connected_); 747 EXPECT_TRUE(connected_);
748 scoped_ptr<base::Value> value(base::JSONReader::Read(message)); 748 scoped_ptr<base::Value> value(base::JSONReader::Read(message));
749 base::DictionaryValue* dict = NULL; 749 base::DictionaryValue* dict = NULL;
750 EXPECT_TRUE(value->GetAsDictionary(&dict)); 750 EXPECT_TRUE(value->GetAsDictionary(&dict));
751 if (!dict) 751 if (!dict)
752 return false; 752 return false;
753 int id; 753 int id;
754 EXPECT_TRUE(dict->GetInteger("id", &id)); 754 EXPECT_TRUE(dict->GetInteger("id", &id));
755 std::string method; 755 std::string method;
756 EXPECT_TRUE(dict->GetString("method", &method)); 756 EXPECT_TRUE(dict->GetString("method", &method));
(...skipping 11 matching lines...) Expand all
768 event.Set("params", new base::DictionaryValue()); 768 event.Set("params", new base::DictionaryValue());
769 std::string json_event; 769 std::string json_event;
770 base::JSONWriter::Write(&event, &json_event); 770 base::JSONWriter::Write(&event, &json_event);
771 queued_response_.push_back(json_event); 771 queued_response_.push_back(json_event);
772 772
773 return true; 773 return true;
774 } 774 }
775 775
776 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 776 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
777 std::string* message, 777 std::string* message,
778 const base::TimeDelta& timeout) OVERRIDE { 778 const base::TimeDelta& timeout) override {
779 if (queued_response_.empty()) 779 if (queued_response_.empty())
780 return SyncWebSocket::kDisconnected; 780 return SyncWebSocket::kDisconnected;
781 *message = queued_response_.front(); 781 *message = queued_response_.front();
782 queued_response_.pop_front(); 782 queued_response_.pop_front();
783 return SyncWebSocket::kOk; 783 return SyncWebSocket::kOk;
784 } 784 }
785 785
786 virtual bool HasNextMessage() OVERRIDE { 786 virtual bool HasNextMessage() override {
787 return !queued_response_.empty(); 787 return !queued_response_.empty();
788 } 788 }
789 789
790 private: 790 private:
791 bool connected_; 791 bool connected_;
792 std::list<std::string> queued_response_; 792 std::list<std::string> queued_response_;
793 }; 793 };
794 794
795 } // namespace 795 } // namespace
796 796
(...skipping 28 matching lines...) Expand all
825 listener3.VerifyCalled(); 825 listener3.VerifyCalled();
826 } 826 }
827 827
828 namespace { 828 namespace {
829 829
830 class MockSyncWebSocket5 : public SyncWebSocket { 830 class MockSyncWebSocket5 : public SyncWebSocket {
831 public: 831 public:
832 MockSyncWebSocket5() : request_no_(0) {} 832 MockSyncWebSocket5() : request_no_(0) {}
833 virtual ~MockSyncWebSocket5() {} 833 virtual ~MockSyncWebSocket5() {}
834 834
835 virtual bool IsConnected() OVERRIDE { 835 virtual bool IsConnected() override {
836 return true; 836 return true;
837 } 837 }
838 838
839 virtual bool Connect(const GURL& url) OVERRIDE { 839 virtual bool Connect(const GURL& url) override {
840 return true; 840 return true;
841 } 841 }
842 842
843 virtual bool Send(const std::string& message) OVERRIDE { 843 virtual bool Send(const std::string& message) override {
844 return true; 844 return true;
845 } 845 }
846 846
847 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 847 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
848 std::string* message, 848 std::string* message,
849 const base::TimeDelta& timeout) OVERRIDE { 849 const base::TimeDelta& timeout) override {
850 if (request_no_ == 0) { 850 if (request_no_ == 0) {
851 *message = "{\"method\": \"m\", \"params\": {}}"; 851 *message = "{\"method\": \"m\", \"params\": {}}";
852 } else { 852 } else {
853 *message = base::StringPrintf( 853 *message = base::StringPrintf(
854 "{\"result\": {}, \"id\": %d}", request_no_); 854 "{\"result\": {}, \"id\": %d}", request_no_);
855 } 855 }
856 request_no_++; 856 request_no_++;
857 return SyncWebSocket::kOk; 857 return SyncWebSocket::kOk;
858 } 858 }
859 859
860 virtual bool HasNextMessage() OVERRIDE { 860 virtual bool HasNextMessage() override {
861 return false; 861 return false;
862 } 862 }
863 863
864 private: 864 private:
865 int request_no_; 865 int request_no_;
866 }; 866 };
867 867
868 class OtherEventListener : public DevToolsEventListener { 868 class OtherEventListener : public DevToolsEventListener {
869 public: 869 public:
870 OtherEventListener() : received_event_(false) {} 870 OtherEventListener() : received_event_(false) {}
871 virtual ~OtherEventListener() {} 871 virtual ~OtherEventListener() {}
872 872
873 virtual Status OnConnected(DevToolsClient* client) OVERRIDE { 873 virtual Status OnConnected(DevToolsClient* client) override {
874 return Status(kOk); 874 return Status(kOk);
875 } 875 }
876 virtual Status OnEvent(DevToolsClient* client, 876 virtual Status OnEvent(DevToolsClient* client,
877 const std::string& method, 877 const std::string& method,
878 const base::DictionaryValue& params) OVERRIDE { 878 const base::DictionaryValue& params) override {
879 received_event_ = true; 879 received_event_ = true;
880 return Status(kOk); 880 return Status(kOk);
881 } 881 }
882 882
883 bool received_event_; 883 bool received_event_;
884 }; 884 };
885 885
886 class OnEventListener : public DevToolsEventListener { 886 class OnEventListener : public DevToolsEventListener {
887 public: 887 public:
888 OnEventListener(DevToolsClient* client, 888 OnEventListener(DevToolsClient* client,
889 OtherEventListener* other_listener) 889 OtherEventListener* other_listener)
890 : client_(client), 890 : client_(client),
891 other_listener_(other_listener) {} 891 other_listener_(other_listener) {}
892 virtual ~OnEventListener() {} 892 virtual ~OnEventListener() {}
893 893
894 virtual Status OnConnected(DevToolsClient* client) OVERRIDE { 894 virtual Status OnConnected(DevToolsClient* client) override {
895 EXPECT_EQ(client_, client); 895 EXPECT_EQ(client_, client);
896 return Status(kOk); 896 return Status(kOk);
897 } 897 }
898 898
899 virtual Status OnEvent(DevToolsClient* client, 899 virtual Status OnEvent(DevToolsClient* client,
900 const std::string& method, 900 const std::string& method,
901 const base::DictionaryValue& params) OVERRIDE { 901 const base::DictionaryValue& params) override {
902 EXPECT_EQ(client_, client); 902 EXPECT_EQ(client_, client);
903 client_->SendCommand("method", params); 903 client_->SendCommand("method", params);
904 EXPECT_TRUE(other_listener_->received_event_); 904 EXPECT_TRUE(other_listener_->received_event_);
905 return Status(kOk); 905 return Status(kOk);
906 } 906 }
907 907
908 private: 908 private:
909 DevToolsClient* client_; 909 DevToolsClient* client_;
910 OtherEventListener* other_listener_; 910 OtherEventListener* other_listener_;
911 }; 911 };
(...skipping 13 matching lines...) Expand all
925 EXPECT_EQ(kOk, client.SendCommand("method", params).code()); 925 EXPECT_EQ(kOk, client.SendCommand("method", params).code());
926 } 926 }
927 927
928 namespace { 928 namespace {
929 929
930 class DisconnectedSyncWebSocket : public MockSyncWebSocket { 930 class DisconnectedSyncWebSocket : public MockSyncWebSocket {
931 public: 931 public:
932 DisconnectedSyncWebSocket() : connection_count_(0), command_count_(0) {} 932 DisconnectedSyncWebSocket() : connection_count_(0), command_count_(0) {}
933 virtual ~DisconnectedSyncWebSocket() {} 933 virtual ~DisconnectedSyncWebSocket() {}
934 934
935 virtual bool Connect(const GURL& url) OVERRIDE { 935 virtual bool Connect(const GURL& url) override {
936 connection_count_++; 936 connection_count_++;
937 connected_ = connection_count_ != 2; 937 connected_ = connection_count_ != 2;
938 return connected_; 938 return connected_;
939 } 939 }
940 940
941 virtual bool Send(const std::string& message) OVERRIDE { 941 virtual bool Send(const std::string& message) override {
942 command_count_++; 942 command_count_++;
943 if (command_count_ == 1) { 943 if (command_count_ == 1) {
944 connected_ = false; 944 connected_ = false;
945 return false; 945 return false;
946 } 946 }
947 return MockSyncWebSocket::Send(message); 947 return MockSyncWebSocket::Send(message);
948 } 948 }
949 949
950 private: 950 private:
951 int connection_count_; 951 int connection_count_;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
985 } 985 }
986 986
987 namespace { 987 namespace {
988 988
989 class MockSyncWebSocket6 : public SyncWebSocket { 989 class MockSyncWebSocket6 : public SyncWebSocket {
990 public: 990 public:
991 explicit MockSyncWebSocket6(std::list<std::string>* messages) 991 explicit MockSyncWebSocket6(std::list<std::string>* messages)
992 : messages_(messages) {} 992 : messages_(messages) {}
993 virtual ~MockSyncWebSocket6() {} 993 virtual ~MockSyncWebSocket6() {}
994 994
995 virtual bool IsConnected() OVERRIDE { return true; } 995 virtual bool IsConnected() override { return true; }
996 996
997 virtual bool Connect(const GURL& url) OVERRIDE { return true; } 997 virtual bool Connect(const GURL& url) override { return true; }
998 998
999 virtual bool Send(const std::string& message) OVERRIDE { return true; } 999 virtual bool Send(const std::string& message) override { return true; }
1000 1000
1001 virtual SyncWebSocket::StatusCode ReceiveNextMessage( 1001 virtual SyncWebSocket::StatusCode ReceiveNextMessage(
1002 std::string* message, 1002 std::string* message,
1003 const base::TimeDelta& timeout) OVERRIDE { 1003 const base::TimeDelta& timeout) override {
1004 if (messages_->empty()) 1004 if (messages_->empty())
1005 return SyncWebSocket::kDisconnected; 1005 return SyncWebSocket::kDisconnected;
1006 *message = messages_->front(); 1006 *message = messages_->front();
1007 messages_->pop_front(); 1007 messages_->pop_front();
1008 return SyncWebSocket::kOk; 1008 return SyncWebSocket::kOk;
1009 } 1009 }
1010 1010
1011 virtual bool HasNextMessage() OVERRIDE { return messages_->size(); } 1011 virtual bool HasNextMessage() override { return messages_->size(); }
1012 1012
1013 private: 1013 private:
1014 std::list<std::string>* messages_; 1014 std::list<std::string>* messages_;
1015 }; 1015 };
1016 1016
1017 class MockDevToolsEventListener : public DevToolsEventListener { 1017 class MockDevToolsEventListener : public DevToolsEventListener {
1018 public: 1018 public:
1019 MockDevToolsEventListener() : id_(1) {} 1019 MockDevToolsEventListener() : id_(1) {}
1020 virtual ~MockDevToolsEventListener() {} 1020 virtual ~MockDevToolsEventListener() {}
1021 1021
1022 virtual Status OnConnected(DevToolsClient* client) OVERRIDE { 1022 virtual Status OnConnected(DevToolsClient* client) override {
1023 return Status(kOk); 1023 return Status(kOk);
1024 } 1024 }
1025 1025
1026 virtual Status OnEvent(DevToolsClient* client, 1026 virtual Status OnEvent(DevToolsClient* client,
1027 const std::string& method, 1027 const std::string& method,
1028 const base::DictionaryValue& params) OVERRIDE { 1028 const base::DictionaryValue& params) override {
1029 id_++; 1029 id_++;
1030 Status status = client->SendCommand("hello", params); 1030 Status status = client->SendCommand("hello", params);
1031 id_--; 1031 id_--;
1032 if (id_ == 3) { 1032 if (id_ == 3) {
1033 EXPECT_EQ(kUnexpectedAlertOpen, status.code()); 1033 EXPECT_EQ(kUnexpectedAlertOpen, status.code());
1034 } else { 1034 } else {
1035 EXPECT_EQ(kOk, status.code()); 1035 EXPECT_EQ(kOk, status.code());
1036 } 1036 }
1037 return Status(kOk); 1037 return Status(kOk);
1038 } 1038 }
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
1102 1102
1103 namespace { 1103 namespace {
1104 1104
1105 class MockCommandListener : public DevToolsEventListener { 1105 class MockCommandListener : public DevToolsEventListener {
1106 public: 1106 public:
1107 MockCommandListener() {} 1107 MockCommandListener() {}
1108 virtual ~MockCommandListener() {} 1108 virtual ~MockCommandListener() {}
1109 1109
1110 virtual Status OnEvent(DevToolsClient* client, 1110 virtual Status OnEvent(DevToolsClient* client,
1111 const std::string& method, 1111 const std::string& method,
1112 const base::DictionaryValue& params) OVERRIDE { 1112 const base::DictionaryValue& params) override {
1113 msgs_.push_back(method); 1113 msgs_.push_back(method);
1114 return Status(kOk); 1114 return Status(kOk);
1115 } 1115 }
1116 1116
1117 virtual Status OnCommandSuccess(DevToolsClient* client, 1117 virtual Status OnCommandSuccess(DevToolsClient* client,
1118 const std::string& method) OVERRIDE { 1118 const std::string& method) override {
1119 msgs_.push_back(method); 1119 msgs_.push_back(method);
1120 if (!callback_.is_null()) 1120 if (!callback_.is_null())
1121 callback_.Run(client); 1121 callback_.Run(client);
1122 return Status(kOk); 1122 return Status(kOk);
1123 } 1123 }
1124 1124
1125 base::Callback<void(DevToolsClient*)> callback_; 1125 base::Callback<void(DevToolsClient*)> callback_;
1126 std::list<std::string> msgs_; 1126 std::list<std::string> msgs_;
1127 }; 1127 };
1128 1128
(...skipping 14 matching lines...) Expand all
1143 client.AddListener(&listener1); 1143 client.AddListener(&listener1);
1144 client.AddListener(&listener2); 1144 client.AddListener(&listener2);
1145 msgs.push_back("{\"id\": 1, \"result\": {}}"); 1145 msgs.push_back("{\"id\": 1, \"result\": {}}");
1146 msgs.push_back("{\"method\": \"event\", \"params\": {}}"); 1146 msgs.push_back("{\"method\": \"event\", \"params\": {}}");
1147 base::DictionaryValue params; 1147 base::DictionaryValue params;
1148 ASSERT_EQ(kOk, client.SendCommand("cmd", params).code()); 1148 ASSERT_EQ(kOk, client.SendCommand("cmd", params).code());
1149 ASSERT_EQ(2u, listener2.msgs_.size()); 1149 ASSERT_EQ(2u, listener2.msgs_.size());
1150 ASSERT_EQ("cmd", listener2.msgs_.front()); 1150 ASSERT_EQ("cmd", listener2.msgs_.front());
1151 ASSERT_EQ("event", listener2.msgs_.back()); 1151 ASSERT_EQ("event", listener2.msgs_.back());
1152 } 1152 }
OLDNEW
« no previous file with comments | « chrome/test/chromedriver/chrome/devtools_client_impl.h ('k') | chrome/test/chromedriver/chrome/dom_tracker.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698