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

Side by Side Diff: net/socket/transport_client_socket_unittest.cc

Issue 1535363003: Switch to standard integer types in net/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: stddef Created 5 years 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 <string> 5 #include <string>
6 6
7 #include "base/basictypes.h"
8 #include "base/bind.h" 7 #include "base/bind.h"
9 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
10 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
11 #include "base/run_loop.h" 10 #include "base/run_loop.h"
12 #include "net/base/address_list.h" 11 #include "net/base/address_list.h"
13 #include "net/base/io_buffer.h" 12 #include "net/base/io_buffer.h"
14 #include "net/base/net_errors.h" 13 #include "net/base/net_errors.h"
15 #include "net/base/test_completion_callback.h" 14 #include "net/base/test_completion_callback.h"
16 #include "net/dns/mock_host_resolver.h" 15 #include "net/dns/mock_host_resolver.h"
17 #include "net/log/net_log.h" 16 #include "net/log/net_log.h"
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 // delete the connected_sock_, which will close it. 50 // delete the connected_sock_, which will close it.
52 connected_sock_.reset(); 51 connected_sock_.reset();
53 } 52 }
54 53
55 void AcceptCallback(int res) { 54 void AcceptCallback(int res) {
56 ASSERT_EQ(OK, res); 55 ASSERT_EQ(OK, res);
57 connect_loop_.Quit(); 56 connect_loop_.Quit();
58 } 57 }
59 58
60 int DrainClientSocket(IOBuffer* buf, 59 int DrainClientSocket(IOBuffer* buf,
61 uint32 buf_len, 60 uint32_t buf_len,
62 uint32 bytes_to_read, 61 uint32_t bytes_to_read,
63 TestCompletionCallback* callback); 62 TestCompletionCallback* callback);
64 63
65 // Establishes a connection to the server. 64 // Establishes a connection to the server.
66 void EstablishConnection(TestCompletionCallback* callback); 65 void EstablishConnection(TestCompletionCallback* callback);
67 66
68 // Sends a request from the client to the server socket. Makes the server read 67 // Sends a request from the client to the server socket. Makes the server read
69 // the request and send a response. 68 // the request and send a response.
70 void SendRequestAndResponse(); 69 void SendRequestAndResponse();
71 70
72 // Makes |connected_sock_| to read |expected_bytes_read| bytes. Returns the 71 // Makes |connected_sock_| to read |expected_bytes_read| bytes. Returns the
73 // the data read as a string. 72 // the data read as a string.
74 std::string ReadServerData(int expected_bytes_read); 73 std::string ReadServerData(int expected_bytes_read);
75 74
76 // Sends server response. 75 // Sends server response.
77 void SendServerResponse(); 76 void SendServerResponse();
78 77
79 void set_close_server_socket_on_next_send(bool close) { 78 void set_close_server_socket_on_next_send(bool close) {
80 close_server_socket_on_next_send_ = close; 79 close_server_socket_on_next_send_ = close;
81 } 80 }
82 81
83 protected: 82 protected:
84 base::RunLoop connect_loop_; 83 base::RunLoop connect_loop_;
85 uint16 listen_port_; 84 uint16_t listen_port_;
86 TestNetLog net_log_; 85 TestNetLog net_log_;
87 ClientSocketFactory* const socket_factory_; 86 ClientSocketFactory* const socket_factory_;
88 scoped_ptr<StreamSocket> sock_; 87 scoped_ptr<StreamSocket> sock_;
89 scoped_ptr<StreamSocket> connected_sock_; 88 scoped_ptr<StreamSocket> connected_sock_;
90 89
91 private: 90 private:
92 scoped_ptr<TCPServerSocket> listen_sock_; 91 scoped_ptr<TCPServerSocket> listen_sock_;
93 bool close_server_socket_on_next_send_; 92 bool close_server_socket_on_next_send_;
94 }; 93 };
95 94
(...skipping 22 matching lines...) Expand all
118 NULL, BoundNetLog()); 117 NULL, BoundNetLog());
119 CHECK_EQ(ERR_IO_PENDING, rv); 118 CHECK_EQ(ERR_IO_PENDING, rv);
120 rv = callback.WaitForResult(); 119 rv = callback.WaitForResult();
121 CHECK_EQ(rv, OK); 120 CHECK_EQ(rv, OK);
122 sock_ = socket_factory_->CreateTransportClientSocket(addr, &net_log_, 121 sock_ = socket_factory_->CreateTransportClientSocket(addr, &net_log_,
123 NetLog::Source()); 122 NetLog::Source());
124 } 123 }
125 124
126 int TransportClientSocketTest::DrainClientSocket( 125 int TransportClientSocketTest::DrainClientSocket(
127 IOBuffer* buf, 126 IOBuffer* buf,
128 uint32 buf_len, 127 uint32_t buf_len,
129 uint32 bytes_to_read, 128 uint32_t bytes_to_read,
130 TestCompletionCallback* callback) { 129 TestCompletionCallback* callback) {
131 int rv = OK; 130 int rv = OK;
132 uint32 bytes_read = 0; 131 uint32_t bytes_read = 0;
133 132
134 while (bytes_read < bytes_to_read) { 133 while (bytes_read < bytes_to_read) {
135 rv = sock_->Read(buf, buf_len, callback->callback()); 134 rv = sock_->Read(buf, buf_len, callback->callback());
136 EXPECT_TRUE(rv >= 0 || rv == ERR_IO_PENDING); 135 EXPECT_TRUE(rv >= 0 || rv == ERR_IO_PENDING);
137 rv = callback->GetResult(rv); 136 rv = callback->GetResult(rv);
138 EXPECT_GT(rv, 0); 137 EXPECT_GT(rv, 0);
139 bytes_read += rv; 138 bytes_read += rv;
140 } 139 }
141 140
142 return static_cast<int>(bytes_read); 141 return static_cast<int>(bytes_read);
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 EXPECT_TRUE( 252 EXPECT_TRUE(
254 LogContainsEndEvent(net_log_entries, -1, NetLog::TYPE_TCP_CONNECT)); 253 LogContainsEndEvent(net_log_entries, -1, NetLog::TYPE_TCP_CONNECT));
255 254
256 sock_->Disconnect(); 255 sock_->Disconnect();
257 EXPECT_FALSE(sock_->IsConnected()); 256 EXPECT_FALSE(sock_->IsConnected());
258 } 257 }
259 258
260 TEST_P(TransportClientSocketTest, IsConnected) { 259 TEST_P(TransportClientSocketTest, IsConnected) {
261 scoped_refptr<IOBuffer> buf(new IOBuffer(4096)); 260 scoped_refptr<IOBuffer> buf(new IOBuffer(4096));
262 TestCompletionCallback callback; 261 TestCompletionCallback callback;
263 uint32 bytes_read; 262 uint32_t bytes_read;
264 263
265 EXPECT_FALSE(sock_->IsConnected()); 264 EXPECT_FALSE(sock_->IsConnected());
266 EXPECT_FALSE(sock_->IsConnectedAndIdle()); 265 EXPECT_FALSE(sock_->IsConnectedAndIdle());
267 266
268 EstablishConnection(&callback); 267 EstablishConnection(&callback);
269 268
270 EXPECT_TRUE(sock_->IsConnected()); 269 EXPECT_TRUE(sock_->IsConnected());
271 EXPECT_TRUE(sock_->IsConnectedAndIdle()); 270 EXPECT_TRUE(sock_->IsConnectedAndIdle());
272 271
273 // Send the request and wait for the server to respond. 272 // Send the request and wait for the server to respond.
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 EXPECT_FALSE(sock_->IsConnectedAndIdle()); 317 EXPECT_FALSE(sock_->IsConnectedAndIdle());
319 } 318 }
320 319
321 TEST_P(TransportClientSocketTest, Read) { 320 TEST_P(TransportClientSocketTest, Read) {
322 TestCompletionCallback callback; 321 TestCompletionCallback callback;
323 EstablishConnection(&callback); 322 EstablishConnection(&callback);
324 323
325 SendRequestAndResponse(); 324 SendRequestAndResponse();
326 325
327 scoped_refptr<IOBuffer> buf(new IOBuffer(4096)); 326 scoped_refptr<IOBuffer> buf(new IOBuffer(4096));
328 uint32 bytes_read = 327 uint32_t bytes_read =
329 DrainClientSocket(buf.get(), 4096, strlen(kServerReply), &callback); 328 DrainClientSocket(buf.get(), 4096, strlen(kServerReply), &callback);
330 ASSERT_EQ(bytes_read, strlen(kServerReply)); 329 ASSERT_EQ(bytes_read, strlen(kServerReply));
331 ASSERT_EQ(std::string(kServerReply), std::string(buf->data(), bytes_read)); 330 ASSERT_EQ(std::string(kServerReply), std::string(buf->data(), bytes_read));
332 331
333 // All data has been read now. Read once more to force an ERR_IO_PENDING, and 332 // All data has been read now. Read once more to force an ERR_IO_PENDING, and
334 // then close the server socket, and note the close. 333 // then close the server socket, and note the close.
335 334
336 int rv = sock_->Read(buf.get(), 4096, callback.callback()); 335 int rv = sock_->Read(buf.get(), 4096, callback.callback());
337 ASSERT_EQ(ERR_IO_PENDING, rv); 336 ASSERT_EQ(ERR_IO_PENDING, rv);
338 CloseServerSocket(); 337 CloseServerSocket();
339 EXPECT_EQ(0, callback.WaitForResult()); 338 EXPECT_EQ(0, callback.WaitForResult());
340 } 339 }
341 340
342 TEST_P(TransportClientSocketTest, Read_SmallChunks) { 341 TEST_P(TransportClientSocketTest, Read_SmallChunks) {
343 TestCompletionCallback callback; 342 TestCompletionCallback callback;
344 EstablishConnection(&callback); 343 EstablishConnection(&callback);
345 344
346 SendRequestAndResponse(); 345 SendRequestAndResponse();
347 346
348 scoped_refptr<IOBuffer> buf(new IOBuffer(1)); 347 scoped_refptr<IOBuffer> buf(new IOBuffer(1));
349 uint32 bytes_read = 0; 348 uint32_t bytes_read = 0;
350 while (bytes_read < strlen(kServerReply)) { 349 while (bytes_read < strlen(kServerReply)) {
351 int rv = sock_->Read(buf.get(), 1, callback.callback()); 350 int rv = sock_->Read(buf.get(), 1, callback.callback());
352 EXPECT_TRUE(rv >= 0 || rv == ERR_IO_PENDING); 351 EXPECT_TRUE(rv >= 0 || rv == ERR_IO_PENDING);
353 352
354 rv = callback.GetResult(rv); 353 rv = callback.GetResult(rv);
355 354
356 ASSERT_EQ(1, rv); 355 ASSERT_EQ(1, rv);
357 bytes_read += rv; 356 bytes_read += rv;
358 } 357 }
359 358
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 463
465 // It's possible the read is blocked because it's already read all the data. 464 // It's possible the read is blocked because it's already read all the data.
466 // Close the server socket, so there will at least be a 0-byte read. 465 // Close the server socket, so there will at least be a 0-byte read.
467 CloseServerSocket(); 466 CloseServerSocket();
468 467
469 rv = callback.WaitForResult(); 468 rv = callback.WaitForResult();
470 EXPECT_GE(rv, 0); 469 EXPECT_GE(rv, 0);
471 } 470 }
472 471
473 } // namespace net 472 } // namespace net
OLDNEW
« no previous file with comments | « net/socket/transport_client_socket_pool_unittest.cc ('k') | net/socket/unix_domain_client_socket_posix.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698