| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "net/socket/socket_test_util.h" | 5 #include "net/socket/socket_test_util.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 | 10 |
| (...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 534 if (is_npn_state_set_) | 534 if (is_npn_state_set_) |
| 535 return new_npn_value_; | 535 return new_npn_value_; |
| 536 return data_->was_npn_negotiated; | 536 return data_->was_npn_negotiated; |
| 537 } | 537 } |
| 538 | 538 |
| 539 bool MockSSLClientSocket::set_was_npn_negotiated(bool negotiated) { | 539 bool MockSSLClientSocket::set_was_npn_negotiated(bool negotiated) { |
| 540 is_npn_state_set_ = true; | 540 is_npn_state_set_ = true; |
| 541 return new_npn_value_ = negotiated; | 541 return new_npn_value_ = negotiated; |
| 542 } | 542 } |
| 543 | 543 |
| 544 StaticSocketDataProvider::StaticSocketDataProvider() |
| 545 : reads_(NULL), |
| 546 read_index_(0), |
| 547 read_count_(0), |
| 548 writes_(NULL), |
| 549 write_index_(0), |
| 550 write_count_(0) { |
| 551 } |
| 552 |
| 553 StaticSocketDataProvider::StaticSocketDataProvider(MockRead* reads, |
| 554 size_t reads_count, |
| 555 MockWrite* writes, |
| 556 size_t writes_count) |
| 557 : reads_(reads), |
| 558 read_index_(0), |
| 559 read_count_(reads_count), |
| 560 writes_(writes), |
| 561 write_index_(0), |
| 562 write_count_(writes_count) { |
| 563 } |
| 564 |
| 565 StaticSocketDataProvider::~StaticSocketDataProvider() {} |
| 566 |
| 544 MockRead StaticSocketDataProvider::GetNextRead() { | 567 MockRead StaticSocketDataProvider::GetNextRead() { |
| 545 DCHECK(!at_read_eof()); | 568 DCHECK(!at_read_eof()); |
| 546 reads_[read_index_].time_stamp = base::Time::Now(); | 569 reads_[read_index_].time_stamp = base::Time::Now(); |
| 547 return reads_[read_index_++]; | 570 return reads_[read_index_++]; |
| 548 } | 571 } |
| 549 | 572 |
| 550 MockWriteResult StaticSocketDataProvider::OnWrite(const std::string& data) { | 573 MockWriteResult StaticSocketDataProvider::OnWrite(const std::string& data) { |
| 551 if (!writes_) { | 574 if (!writes_) { |
| 552 // Not using mock writes; succeed synchronously. | 575 // Not using mock writes; succeed synchronously. |
| 553 return MockWriteResult(false, data.length()); | 576 return MockWriteResult(false, data.length()); |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 602 void StaticSocketDataProvider::Reset() { | 625 void StaticSocketDataProvider::Reset() { |
| 603 read_index_ = 0; | 626 read_index_ = 0; |
| 604 write_index_ = 0; | 627 write_index_ = 0; |
| 605 } | 628 } |
| 606 | 629 |
| 607 DynamicSocketDataProvider::DynamicSocketDataProvider() | 630 DynamicSocketDataProvider::DynamicSocketDataProvider() |
| 608 : short_read_limit_(0), | 631 : short_read_limit_(0), |
| 609 allow_unconsumed_reads_(false) { | 632 allow_unconsumed_reads_(false) { |
| 610 } | 633 } |
| 611 | 634 |
| 635 DynamicSocketDataProvider::~DynamicSocketDataProvider() {} |
| 636 |
| 612 MockRead DynamicSocketDataProvider::GetNextRead() { | 637 MockRead DynamicSocketDataProvider::GetNextRead() { |
| 613 if (reads_.empty()) | 638 if (reads_.empty()) |
| 614 return MockRead(false, ERR_UNEXPECTED); | 639 return MockRead(false, ERR_UNEXPECTED); |
| 615 MockRead result = reads_.front(); | 640 MockRead result = reads_.front(); |
| 616 if (short_read_limit_ == 0 || result.data_len <= short_read_limit_) { | 641 if (short_read_limit_ == 0 || result.data_len <= short_read_limit_) { |
| 617 reads_.pop_front(); | 642 reads_.pop_front(); |
| 618 } else { | 643 } else { |
| 619 result.data_len = short_read_limit_; | 644 result.data_len = short_read_limit_; |
| 620 reads_.front().data += result.data_len; | 645 reads_.front().data += result.data_len; |
| 621 reads_.front().data_len -= result.data_len; | 646 reads_.front().data_len -= result.data_len; |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 777 callback_->RunWithParams(Tuple1<int>(ERR_IO_PENDING)); | 802 callback_->RunWithParams(Tuple1<int>(ERR_IO_PENDING)); |
| 778 } | 803 } |
| 779 | 804 |
| 780 void OrderedSocketData::CompleteRead() { | 805 void OrderedSocketData::CompleteRead() { |
| 781 if (socket()) { | 806 if (socket()) { |
| 782 NET_TRACE(INFO, " *** ") << "Stage " << sequence_number_; | 807 NET_TRACE(INFO, " *** ") << "Stage " << sequence_number_; |
| 783 socket()->OnReadComplete(GetNextRead()); | 808 socket()->OnReadComplete(GetNextRead()); |
| 784 } | 809 } |
| 785 } | 810 } |
| 786 | 811 |
| 812 OrderedSocketData::~OrderedSocketData() {} |
| 813 |
| 787 DeterministicSocketData::DeterministicSocketData(MockRead* reads, | 814 DeterministicSocketData::DeterministicSocketData(MockRead* reads, |
| 788 size_t reads_count, MockWrite* writes, size_t writes_count) | 815 size_t reads_count, MockWrite* writes, size_t writes_count) |
| 789 : StaticSocketDataProvider(reads, reads_count, writes, writes_count), | 816 : StaticSocketDataProvider(reads, reads_count, writes, writes_count), |
| 790 sequence_number_(0), | 817 sequence_number_(0), |
| 791 current_read_(), | 818 current_read_(), |
| 792 current_write_(), | 819 current_write_(), |
| 793 stopping_sequence_number_(0), | 820 stopping_sequence_number_(0), |
| 794 stopped_(false), | 821 stopped_(false), |
| 795 print_debug_(false) {} | 822 print_debug_(false) {} |
| 796 | 823 |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 927 | 954 |
| 928 void DeterministicSocketData::NextStep() { | 955 void DeterministicSocketData::NextStep() { |
| 929 // Invariant: Can never move *past* the stopping step. | 956 // Invariant: Can never move *past* the stopping step. |
| 930 DCHECK_LT(sequence_number_, stopping_sequence_number_); | 957 DCHECK_LT(sequence_number_, stopping_sequence_number_); |
| 931 sequence_number_++; | 958 sequence_number_++; |
| 932 if (sequence_number_ == stopping_sequence_number_) | 959 if (sequence_number_ == stopping_sequence_number_) |
| 933 SetStopped(true); | 960 SetStopped(true); |
| 934 } | 961 } |
| 935 | 962 |
| 936 | 963 |
| 964 MockClientSocketFactory::MockClientSocketFactory() {} |
| 965 |
| 966 MockClientSocketFactory::~MockClientSocketFactory() {} |
| 967 |
| 937 void MockClientSocketFactory::AddSocketDataProvider( | 968 void MockClientSocketFactory::AddSocketDataProvider( |
| 938 SocketDataProvider* data) { | 969 SocketDataProvider* data) { |
| 939 mock_data_.Add(data); | 970 mock_data_.Add(data); |
| 940 } | 971 } |
| 941 | 972 |
| 942 void MockClientSocketFactory::AddSSLSocketDataProvider( | 973 void MockClientSocketFactory::AddSSLSocketDataProvider( |
| 943 SSLSocketDataProvider* data) { | 974 SSLSocketDataProvider* data) { |
| 944 mock_ssl_data_.Add(data); | 975 mock_ssl_data_.Add(data); |
| 945 } | 976 } |
| 946 | 977 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 977 ClientSocketHandle* transport_socket, | 1008 ClientSocketHandle* transport_socket, |
| 978 const std::string& hostname, | 1009 const std::string& hostname, |
| 979 const SSLConfig& ssl_config) { | 1010 const SSLConfig& ssl_config) { |
| 980 MockSSLClientSocket* socket = | 1011 MockSSLClientSocket* socket = |
| 981 new MockSSLClientSocket(transport_socket, hostname, ssl_config, | 1012 new MockSSLClientSocket(transport_socket, hostname, ssl_config, |
| 982 mock_ssl_data_.GetNext()); | 1013 mock_ssl_data_.GetNext()); |
| 983 ssl_client_sockets_.push_back(socket); | 1014 ssl_client_sockets_.push_back(socket); |
| 984 return socket; | 1015 return socket; |
| 985 } | 1016 } |
| 986 | 1017 |
| 1018 DeterministicMockClientSocketFactory::DeterministicMockClientSocketFactory() {} |
| 1019 |
| 1020 DeterministicMockClientSocketFactory::~DeterministicMockClientSocketFactory() {} |
| 1021 |
| 987 void DeterministicMockClientSocketFactory::AddSocketDataProvider( | 1022 void DeterministicMockClientSocketFactory::AddSocketDataProvider( |
| 988 DeterministicSocketData* data) { | 1023 DeterministicSocketData* data) { |
| 989 mock_data_.Add(data); | 1024 mock_data_.Add(data); |
| 990 } | 1025 } |
| 991 | 1026 |
| 992 void DeterministicMockClientSocketFactory::AddSSLSocketDataProvider( | 1027 void DeterministicMockClientSocketFactory::AddSSLSocketDataProvider( |
| 993 SSLSocketDataProvider* data) { | 1028 SSLSocketDataProvider* data) { |
| 994 mock_ssl_data_.Add(data); | 1029 mock_ssl_data_.Add(data); |
| 995 } | 1030 } |
| 996 | 1031 |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1096 ClientSocket* socket, | 1131 ClientSocket* socket, |
| 1097 ClientSocketHandle* handle, | 1132 ClientSocketHandle* handle, |
| 1098 CompletionCallback* callback) | 1133 CompletionCallback* callback) |
| 1099 : socket_(socket), | 1134 : socket_(socket), |
| 1100 handle_(handle), | 1135 handle_(handle), |
| 1101 user_callback_(callback), | 1136 user_callback_(callback), |
| 1102 ALLOW_THIS_IN_INITIALIZER_LIST( | 1137 ALLOW_THIS_IN_INITIALIZER_LIST( |
| 1103 connect_callback_(this, &MockConnectJob::OnConnect)) { | 1138 connect_callback_(this, &MockConnectJob::OnConnect)) { |
| 1104 } | 1139 } |
| 1105 | 1140 |
| 1141 MockTCPClientSocketPool::MockConnectJob::~MockConnectJob() {} |
| 1142 |
| 1106 int MockTCPClientSocketPool::MockConnectJob::Connect() { | 1143 int MockTCPClientSocketPool::MockConnectJob::Connect() { |
| 1107 int rv = socket_->Connect(&connect_callback_); | 1144 int rv = socket_->Connect(&connect_callback_); |
| 1108 if (rv == OK) { | 1145 if (rv == OK) { |
| 1109 user_callback_ = NULL; | 1146 user_callback_ = NULL; |
| 1110 OnConnect(OK); | 1147 OnConnect(OK); |
| 1111 } | 1148 } |
| 1112 return rv; | 1149 return rv; |
| 1113 } | 1150 } |
| 1114 | 1151 |
| 1115 bool MockTCPClientSocketPool::MockConnectJob::CancelHandle( | 1152 bool MockTCPClientSocketPool::MockConnectJob::CancelHandle( |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1227 | 1264 |
| 1228 const char kSOCKS5OkRequest[] = | 1265 const char kSOCKS5OkRequest[] = |
| 1229 { 0x05, 0x01, 0x00, 0x03, 0x04, 'h', 'o', 's', 't', 0x00, 0x50 }; | 1266 { 0x05, 0x01, 0x00, 0x03, 0x04, 'h', 'o', 's', 't', 0x00, 0x50 }; |
| 1230 const int kSOCKS5OkRequestLength = arraysize(kSOCKS5OkRequest); | 1267 const int kSOCKS5OkRequestLength = arraysize(kSOCKS5OkRequest); |
| 1231 | 1268 |
| 1232 const char kSOCKS5OkResponse[] = | 1269 const char kSOCKS5OkResponse[] = |
| 1233 { 0x05, 0x00, 0x00, 0x01, 127, 0, 0, 1, 0x00, 0x50 }; | 1270 { 0x05, 0x00, 0x00, 0x01, 127, 0, 0, 1, 0x00, 0x50 }; |
| 1234 const int kSOCKS5OkResponseLength = arraysize(kSOCKS5OkResponse); | 1271 const int kSOCKS5OkResponseLength = arraysize(kSOCKS5OkResponse); |
| 1235 | 1272 |
| 1236 } // namespace net | 1273 } // namespace net |
| OLD | NEW |