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

Side by Side Diff: net/udp/udp_socket_unittest.cc

Issue 1349783006: Cleanup: Pass std::string as const reference if possible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Revert third_party changes Created 5 years, 3 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 "net/udp/udp_socket.h" 5 #include "net/udp/udp_socket.h"
6 6
7 #include "net/udp/udp_client_socket.h" 7 #include "net/udp/udp_client_socket.h"
8 #include "net/udp/udp_server_socket.h" 8 #include "net/udp/udp_server_socket.h"
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 if (rv < 0) 46 if (rv < 0)
47 return std::string(); // error! 47 return std::string(); // error!
48 return std::string(buffer_->data(), rv); 48 return std::string(buffer_->data(), rv);
49 } 49 }
50 50
51 // Loop until |msg| has been written to the socket or until an 51 // Loop until |msg| has been written to the socket or until an
52 // error occurs. 52 // error occurs.
53 // If |address| is specified, then it is used for the destination 53 // If |address| is specified, then it is used for the destination
54 // to send to. Otherwise, will send to the last socket this server 54 // to send to. Otherwise, will send to the last socket this server
55 // received from. 55 // received from.
56 int SendToSocket(UDPServerSocket* socket, std::string msg) { 56 int SendToSocket(UDPServerSocket* socket, const std::string& msg) {
57 return SendToSocket(socket, msg, recv_from_address_); 57 return SendToSocket(socket, msg, recv_from_address_);
58 } 58 }
59 59
60 int SendToSocket(UDPServerSocket* socket, 60 int SendToSocket(UDPServerSocket* socket,
61 std::string msg, 61 std::string msg,
62 const IPEndPoint& address) { 62 const IPEndPoint& address) {
63 TestCompletionCallback callback; 63 TestCompletionCallback callback;
64 64
65 int length = msg.length(); 65 int length = msg.length();
66 scoped_refptr<StringIOBuffer> io_buffer(new StringIOBuffer(msg)); 66 scoped_refptr<StringIOBuffer> io_buffer(new StringIOBuffer(msg));
(...skipping 20 matching lines...) Expand all
87 int rv = socket->Read(buffer_.get(), kMaxRead, callback.callback()); 87 int rv = socket->Read(buffer_.get(), kMaxRead, callback.callback());
88 if (rv == ERR_IO_PENDING) 88 if (rv == ERR_IO_PENDING)
89 rv = callback.WaitForResult(); 89 rv = callback.WaitForResult();
90 if (rv < 0) 90 if (rv < 0)
91 return std::string(); // error! 91 return std::string(); // error!
92 return std::string(buffer_->data(), rv); 92 return std::string(buffer_->data(), rv);
93 } 93 }
94 94
95 // Loop until |msg| has been written to the socket or until an 95 // Loop until |msg| has been written to the socket or until an
96 // error occurs. 96 // error occurs.
97 int WriteSocket(UDPClientSocket* socket, std::string msg) { 97 int WriteSocket(UDPClientSocket* socket, const std::string& msg) {
98 TestCompletionCallback callback; 98 TestCompletionCallback callback;
99 99
100 int length = msg.length(); 100 int length = msg.length();
101 scoped_refptr<StringIOBuffer> io_buffer(new StringIOBuffer(msg)); 101 scoped_refptr<StringIOBuffer> io_buffer(new StringIOBuffer(msg));
102 scoped_refptr<DrainableIOBuffer> buffer( 102 scoped_refptr<DrainableIOBuffer> buffer(
103 new DrainableIOBuffer(io_buffer.get(), length)); 103 new DrainableIOBuffer(io_buffer.get(), length));
104 104
105 int bytes_sent = 0; 105 int bytes_sent = 0;
106 while (buffer->BytesRemaining()) { 106 while (buffer->BytesRemaining()) {
107 int rv = socket->Write( 107 int rv = socket->Write(
108 buffer.get(), buffer->BytesRemaining(), callback.callback()); 108 buffer.get(), buffer->BytesRemaining(), callback.callback());
109 if (rv == ERR_IO_PENDING) 109 if (rv == ERR_IO_PENDING)
110 rv = callback.WaitForResult(); 110 rv = callback.WaitForResult();
111 if (rv <= 0) 111 if (rv <= 0)
112 return bytes_sent > 0 ? bytes_sent : rv; 112 return bytes_sent > 0 ? bytes_sent : rv;
113 bytes_sent += rv; 113 bytes_sent += rv;
114 buffer->DidConsume(rv); 114 buffer->DidConsume(rv);
115 } 115 }
116 return bytes_sent; 116 return bytes_sent;
117 } 117 }
118 118
119 void WriteSocketIgnoreResult(UDPClientSocket* socket, std::string msg) { 119 void WriteSocketIgnoreResult(UDPClientSocket* socket,
120 const std::string& msg) {
120 WriteSocket(socket, msg); 121 WriteSocket(socket, msg);
121 } 122 }
122 123
123 // Creates an address from ip address and port and writes it to |*address|. 124 // Creates an address from ip address and port and writes it to |*address|.
124 void CreateUDPAddress(std::string ip_str, uint16 port, IPEndPoint* address) { 125 void CreateUDPAddress(const std::string& ip_str,
126 uint16 port,
127 IPEndPoint* address) {
125 IPAddressNumber ip_number; 128 IPAddressNumber ip_number;
126 bool rv = ParseIPLiteralToNumber(ip_str, &ip_number); 129 bool rv = ParseIPLiteralToNumber(ip_str, &ip_number);
127 if (!rv) 130 if (!rv)
128 return; 131 return;
129 *address = IPEndPoint(ip_number, port); 132 *address = IPEndPoint(ip_number, port);
130 } 133 }
131 134
132 // Run unit test for a connection test. 135 // Run unit test for a connection test.
133 // |use_nonblocking_io| is used to switch between overlapped and non-blocking 136 // |use_nonblocking_io| is used to switch between overlapped and non-blocking
134 // IO on Windows. It has no effect in other ports. 137 // IO on Windows. It has no effect in other ports.
(...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after
795 g_expected_traffic_type = QOSTrafficTypeExcellentEffort; 798 g_expected_traffic_type = QOSTrafficTypeExcellentEffort;
796 EXPECT_EQ(OK, client.SetDiffServCodePoint(DSCP_NO_CHANGE)); 799 EXPECT_EQ(OK, client.SetDiffServCodePoint(DSCP_NO_CHANGE));
797 g_expected_dscp = DSCP_DEFAULT; 800 g_expected_dscp = DSCP_DEFAULT;
798 g_expected_traffic_type = QOSTrafficTypeBestEffort; 801 g_expected_traffic_type = QOSTrafficTypeBestEffort;
799 EXPECT_EQ(OK, client.SetDiffServCodePoint(DSCP_DEFAULT)); 802 EXPECT_EQ(OK, client.SetDiffServCodePoint(DSCP_DEFAULT));
800 client.Close(); 803 client.Close();
801 } 804 }
802 #endif 805 #endif
803 806
804 } // namespace net 807 } // namespace net
OLDNEW
« no previous file with comments | « net/udp/udp_socket_perftest.cc ('k') | pdf/pdfium/pdfium_page.h » ('j') | url/gurl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698