OLD | NEW |
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 #ifndef NET_SOCKET_SOCKET_TEST_UTIL_H_ | 5 #ifndef NET_SOCKET_SOCKET_TEST_UTIL_H_ |
6 #define NET_SOCKET_SOCKET_TEST_UTIL_H_ | 6 #define NET_SOCKET_SOCKET_TEST_UTIL_H_ |
7 | 7 |
8 #include <cstring> | 8 #include <cstring> |
9 #include <deque> | 9 #include <deque> |
10 #include <string> | 10 #include <string> |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 | 191 |
192 virtual ~SocketDataProvider() {} | 192 virtual ~SocketDataProvider() {} |
193 | 193 |
194 // Returns the buffer and result code for the next simulated read. | 194 // Returns the buffer and result code for the next simulated read. |
195 // If the |MockRead.result| is ERR_IO_PENDING, it informs the caller | 195 // If the |MockRead.result| is ERR_IO_PENDING, it informs the caller |
196 // that it will be called via the AsyncSocket::OnReadComplete() | 196 // that it will be called via the AsyncSocket::OnReadComplete() |
197 // function at a later time. | 197 // function at a later time. |
198 virtual MockRead OnRead() = 0; | 198 virtual MockRead OnRead() = 0; |
199 virtual MockWriteResult OnWrite(const std::string& data) = 0; | 199 virtual MockWriteResult OnWrite(const std::string& data) = 0; |
200 virtual void Reset() = 0; | 200 virtual void Reset() = 0; |
| 201 virtual bool AllReadDataConsumed() const = 0; |
| 202 virtual bool AllWriteDataConsumed() const = 0; |
201 | 203 |
202 // Accessor for the socket which is using the SocketDataProvider. | 204 // Accessor for the socket which is using the SocketDataProvider. |
203 AsyncSocket* socket() { return socket_; } | 205 AsyncSocket* socket() { return socket_; } |
204 void set_socket(AsyncSocket* socket) { socket_ = socket; } | 206 void set_socket(AsyncSocket* socket) { socket_ = socket; } |
205 | 207 |
206 MockConnect connect_data() const { return connect_; } | 208 MockConnect connect_data() const { return connect_; } |
207 void set_connect_data(const MockConnect& connect) { connect_ = connect; } | 209 void set_connect_data(const MockConnect& connect) { connect_ = connect; } |
208 | 210 |
209 private: | 211 private: |
210 MockConnect connect_; | 212 MockConnect connect_; |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 MockWrite* writes, | 289 MockWrite* writes, |
288 size_t writes_count); | 290 size_t writes_count); |
289 ~StaticSocketDataProvider() override; | 291 ~StaticSocketDataProvider() override; |
290 | 292 |
291 virtual void CompleteRead() {} | 293 virtual void CompleteRead() {} |
292 | 294 |
293 // SocketDataProvider implementation. | 295 // SocketDataProvider implementation. |
294 MockRead OnRead() override; | 296 MockRead OnRead() override; |
295 MockWriteResult OnWrite(const std::string& data) override; | 297 MockWriteResult OnWrite(const std::string& data) override; |
296 void Reset() override; | 298 void Reset() override; |
| 299 bool AllReadDataConsumed() const override; |
| 300 bool AllWriteDataConsumed() const override; |
297 | 301 |
298 size_t read_index() const { return helper_.read_index(); } | 302 size_t read_index() const { return helper_.read_index(); } |
299 size_t write_index() const { return helper_.write_index(); } | 303 size_t write_index() const { return helper_.write_index(); } |
300 size_t read_count() const { return helper_.read_count(); } | 304 size_t read_count() const { return helper_.read_count(); } |
301 size_t write_count() const { return helper_.write_count(); } | 305 size_t write_count() const { return helper_.write_count(); } |
302 | 306 |
303 bool at_read_eof() const { return helper_.at_read_eof(); } | 307 bool at_read_eof() const { return helper_.at_read_eof(); } |
304 bool at_write_eof() const { return helper_.at_write_eof(); } | 308 bool at_write_eof() const { return helper_.at_write_eof(); } |
305 | 309 |
306 protected: | 310 protected: |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
492 size_t reads_count, | 496 size_t reads_count, |
493 MockWrite* writes, | 497 MockWrite* writes, |
494 size_t writes_count); | 498 size_t writes_count); |
495 | 499 |
496 ~SequencedSocketData() override; | 500 ~SequencedSocketData() override; |
497 | 501 |
498 // SocketDataProviderBase implementation. | 502 // SocketDataProviderBase implementation. |
499 MockRead OnRead() override; | 503 MockRead OnRead() override; |
500 MockWriteResult OnWrite(const std::string& data) override; | 504 MockWriteResult OnWrite(const std::string& data) override; |
501 void Reset() override; | 505 void Reset() override; |
| 506 bool AllReadDataConsumed() const override; |
| 507 bool AllWriteDataConsumed() const override; |
502 | 508 |
503 // Returns true if all data has been read. | 509 // Returns true if all data has been read. |
504 bool at_read_eof() const; | 510 bool at_read_eof() const; |
505 | 511 |
506 // Returns true if all data has been written. | 512 // Returns true if all data has been written. |
507 bool at_write_eof() const; | 513 bool at_write_eof() const; |
508 | 514 |
509 private: | 515 private: |
510 // Defines the state for the read or write path. | 516 // Defines the state for the read or write path. |
511 enum IoState { | 517 enum IoState { |
(...skipping 872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1384 | 1390 |
1385 extern const char kSOCKS5OkRequest[]; | 1391 extern const char kSOCKS5OkRequest[]; |
1386 extern const int kSOCKS5OkRequestLength; | 1392 extern const int kSOCKS5OkRequestLength; |
1387 | 1393 |
1388 extern const char kSOCKS5OkResponse[]; | 1394 extern const char kSOCKS5OkResponse[]; |
1389 extern const int kSOCKS5OkResponseLength; | 1395 extern const int kSOCKS5OkResponseLength; |
1390 | 1396 |
1391 } // namespace net | 1397 } // namespace net |
1392 | 1398 |
1393 #endif // NET_SOCKET_SOCKET_TEST_UTIL_H_ | 1399 #endif // NET_SOCKET_SOCKET_TEST_UTIL_H_ |
OLD | NEW |