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

Side by Side Diff: content/browser/renderer_host/p2p/socket_host_udp_unittest.cc

Issue 616603004: Replacing the OVERRIDE with override and FINAL with final in content/browser/renderer_host (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased the patch 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 "content/browser/renderer_host/p2p/socket_host_udp.h" 5 #include "content/browser/renderer_host/p2p/socket_host_udp.h"
6 6
7 #include <deque> 7 #include <deque>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 11 matching lines...) Expand all
22 using ::testing::_; 22 using ::testing::_;
23 using ::testing::DeleteArg; 23 using ::testing::DeleteArg;
24 using ::testing::DoAll; 24 using ::testing::DoAll;
25 using ::testing::Return; 25 using ::testing::Return;
26 26
27 namespace { 27 namespace {
28 28
29 class FakeTiming : public rtc::Timing { 29 class FakeTiming : public rtc::Timing {
30 public: 30 public:
31 FakeTiming() : now_(0.0) {} 31 FakeTiming() : now_(0.0) {}
32 virtual double TimerNow() OVERRIDE { return now_; } 32 virtual double TimerNow() override { return now_; }
33 void set_now(double now) { now_ = now; } 33 void set_now(double now) { now_ = now; }
34 34
35 private: 35 private:
36 double now_; 36 double now_;
37 }; 37 };
38 38
39 class FakeDatagramServerSocket : public net::DatagramServerSocket { 39 class FakeDatagramServerSocket : public net::DatagramServerSocket {
40 public: 40 public:
41 typedef std::pair<net::IPEndPoint, std::vector<char> > UDPPacket; 41 typedef std::pair<net::IPEndPoint, std::vector<char> > UDPPacket;
42 42
43 // P2PSocketHostUdp destroyes a socket on errors so sent packets 43 // P2PSocketHostUdp destroyes a socket on errors so sent packets
44 // need to be stored outside of this object. 44 // need to be stored outside of this object.
45 explicit FakeDatagramServerSocket(std::deque<UDPPacket>* sent_packets) 45 explicit FakeDatagramServerSocket(std::deque<UDPPacket>* sent_packets)
46 : sent_packets_(sent_packets) { 46 : sent_packets_(sent_packets) {
47 } 47 }
48 48
49 virtual void Close() OVERRIDE { 49 virtual void Close() override {
50 } 50 }
51 51
52 virtual int GetPeerAddress(net::IPEndPoint* address) const OVERRIDE { 52 virtual int GetPeerAddress(net::IPEndPoint* address) const override {
53 NOTREACHED(); 53 NOTREACHED();
54 return net::ERR_SOCKET_NOT_CONNECTED; 54 return net::ERR_SOCKET_NOT_CONNECTED;
55 } 55 }
56 56
57 virtual int GetLocalAddress(net::IPEndPoint* address) const OVERRIDE { 57 virtual int GetLocalAddress(net::IPEndPoint* address) const override {
58 *address = address_; 58 *address = address_;
59 return 0; 59 return 0;
60 } 60 }
61 61
62 virtual int Listen(const net::IPEndPoint& address) OVERRIDE { 62 virtual int Listen(const net::IPEndPoint& address) override {
63 address_ = address; 63 address_ = address;
64 return 0; 64 return 0;
65 } 65 }
66 66
67 virtual int RecvFrom(net::IOBuffer* buf, int buf_len, 67 virtual int RecvFrom(net::IOBuffer* buf, int buf_len,
68 net::IPEndPoint* address, 68 net::IPEndPoint* address,
69 const net::CompletionCallback& callback) OVERRIDE { 69 const net::CompletionCallback& callback) override {
70 CHECK(recv_callback_.is_null()); 70 CHECK(recv_callback_.is_null());
71 if (incoming_packets_.size() > 0) { 71 if (incoming_packets_.size() > 0) {
72 scoped_refptr<net::IOBuffer> buffer(buf); 72 scoped_refptr<net::IOBuffer> buffer(buf);
73 int size = std::min( 73 int size = std::min(
74 static_cast<int>(incoming_packets_.front().second.size()), buf_len); 74 static_cast<int>(incoming_packets_.front().second.size()), buf_len);
75 memcpy(buffer->data(), &*incoming_packets_.front().second.begin(), size); 75 memcpy(buffer->data(), &*incoming_packets_.front().second.begin(), size);
76 *address = incoming_packets_.front().first; 76 *address = incoming_packets_.front().first;
77 incoming_packets_.pop_front(); 77 incoming_packets_.pop_front();
78 return size; 78 return size;
79 } else { 79 } else {
80 recv_callback_ = callback; 80 recv_callback_ = callback;
81 recv_buffer_ = buf; 81 recv_buffer_ = buf;
82 recv_size_ = buf_len; 82 recv_size_ = buf_len;
83 recv_address_ = address; 83 recv_address_ = address;
84 return net::ERR_IO_PENDING; 84 return net::ERR_IO_PENDING;
85 } 85 }
86 } 86 }
87 87
88 virtual int SendTo(net::IOBuffer* buf, int buf_len, 88 virtual int SendTo(net::IOBuffer* buf, int buf_len,
89 const net::IPEndPoint& address, 89 const net::IPEndPoint& address,
90 const net::CompletionCallback& callback) OVERRIDE { 90 const net::CompletionCallback& callback) override {
91 scoped_refptr<net::IOBuffer> buffer(buf); 91 scoped_refptr<net::IOBuffer> buffer(buf);
92 std::vector<char> data_vector(buffer->data(), buffer->data() + buf_len); 92 std::vector<char> data_vector(buffer->data(), buffer->data() + buf_len);
93 sent_packets_->push_back(UDPPacket(address, data_vector)); 93 sent_packets_->push_back(UDPPacket(address, data_vector));
94 return buf_len; 94 return buf_len;
95 } 95 }
96 96
97 virtual int SetReceiveBufferSize(int32 size) OVERRIDE { 97 virtual int SetReceiveBufferSize(int32 size) override {
98 return net::OK; 98 return net::OK;
99 } 99 }
100 100
101 virtual int SetSendBufferSize(int32 size) OVERRIDE { 101 virtual int SetSendBufferSize(int32 size) override {
102 return net::OK; 102 return net::OK;
103 } 103 }
104 104
105 void ReceivePacket(const net::IPEndPoint& address, std::vector<char> data) { 105 void ReceivePacket(const net::IPEndPoint& address, std::vector<char> data) {
106 if (!recv_callback_.is_null()) { 106 if (!recv_callback_.is_null()) {
107 int size = std::min(recv_size_, static_cast<int>(data.size())); 107 int size = std::min(recv_size_, static_cast<int>(data.size()));
108 memcpy(recv_buffer_->data(), &*data.begin(), size); 108 memcpy(recv_buffer_->data(), &*data.begin(), size);
109 *recv_address_ = address; 109 *recv_address_ = address;
110 net::CompletionCallback cb = recv_callback_; 110 net::CompletionCallback cb = recv_callback_;
111 recv_callback_.Reset(); 111 recv_callback_.Reset();
112 recv_buffer_ = NULL; 112 recv_buffer_ = NULL;
113 cb.Run(size); 113 cb.Run(size);
114 } else { 114 } else {
115 incoming_packets_.push_back(UDPPacket(address, data)); 115 incoming_packets_.push_back(UDPPacket(address, data));
116 } 116 }
117 } 117 }
118 118
119 virtual const net::BoundNetLog& NetLog() const OVERRIDE { 119 virtual const net::BoundNetLog& NetLog() const override {
120 return net_log_; 120 return net_log_;
121 } 121 }
122 122
123 virtual void AllowAddressReuse() OVERRIDE { 123 virtual void AllowAddressReuse() override {
124 NOTIMPLEMENTED(); 124 NOTIMPLEMENTED();
125 } 125 }
126 126
127 virtual void AllowBroadcast() OVERRIDE { 127 virtual void AllowBroadcast() override {
128 NOTIMPLEMENTED(); 128 NOTIMPLEMENTED();
129 } 129 }
130 130
131 virtual int JoinGroup( 131 virtual int JoinGroup(
132 const net::IPAddressNumber& group_address) const OVERRIDE { 132 const net::IPAddressNumber& group_address) const override {
133 NOTIMPLEMENTED(); 133 NOTIMPLEMENTED();
134 return net::ERR_NOT_IMPLEMENTED; 134 return net::ERR_NOT_IMPLEMENTED;
135 } 135 }
136 136
137 virtual int LeaveGroup( 137 virtual int LeaveGroup(
138 const net::IPAddressNumber& group_address) const OVERRIDE { 138 const net::IPAddressNumber& group_address) const override {
139 NOTIMPLEMENTED(); 139 NOTIMPLEMENTED();
140 return net::ERR_NOT_IMPLEMENTED; 140 return net::ERR_NOT_IMPLEMENTED;
141 } 141 }
142 142
143 virtual int SetMulticastInterface(uint32 interface_index) OVERRIDE { 143 virtual int SetMulticastInterface(uint32 interface_index) override {
144 NOTIMPLEMENTED(); 144 NOTIMPLEMENTED();
145 return net::ERR_NOT_IMPLEMENTED; 145 return net::ERR_NOT_IMPLEMENTED;
146 } 146 }
147 147
148 virtual int SetMulticastTimeToLive(int time_to_live) OVERRIDE { 148 virtual int SetMulticastTimeToLive(int time_to_live) override {
149 NOTIMPLEMENTED(); 149 NOTIMPLEMENTED();
150 return net::ERR_NOT_IMPLEMENTED; 150 return net::ERR_NOT_IMPLEMENTED;
151 } 151 }
152 152
153 virtual int SetMulticastLoopbackMode(bool loopback) OVERRIDE { 153 virtual int SetMulticastLoopbackMode(bool loopback) override {
154 NOTIMPLEMENTED(); 154 NOTIMPLEMENTED();
155 return net::ERR_NOT_IMPLEMENTED; 155 return net::ERR_NOT_IMPLEMENTED;
156 } 156 }
157 157
158 virtual int SetDiffServCodePoint(net::DiffServCodePoint dscp) OVERRIDE { 158 virtual int SetDiffServCodePoint(net::DiffServCodePoint dscp) override {
159 NOTIMPLEMENTED(); 159 NOTIMPLEMENTED();
160 return net::ERR_NOT_IMPLEMENTED; 160 return net::ERR_NOT_IMPLEMENTED;
161 } 161 }
162 162
163 virtual void DetachFromThread() OVERRIDE { 163 virtual void DetachFromThread() override {
164 NOTIMPLEMENTED(); 164 NOTIMPLEMENTED();
165 } 165 }
166 166
167 private: 167 private:
168 net::IPEndPoint address_; 168 net::IPEndPoint address_;
169 std::deque<UDPPacket>* sent_packets_; 169 std::deque<UDPPacket>* sent_packets_;
170 std::deque<UDPPacket> incoming_packets_; 170 std::deque<UDPPacket> incoming_packets_;
171 net::BoundNetLog net_log_; 171 net::BoundNetLog net_log_;
172 172
173 scoped_refptr<net::IOBuffer> recv_buffer_; 173 scoped_refptr<net::IOBuffer> recv_buffer_;
174 net::IPEndPoint* recv_address_; 174 net::IPEndPoint* recv_address_;
175 int recv_size_; 175 int recv_size_;
176 net::CompletionCallback recv_callback_; 176 net::CompletionCallback recv_callback_;
177 }; 177 };
178 178
179 } // namespace 179 } // namespace
180 180
181 namespace content { 181 namespace content {
182 182
183 class P2PSocketHostUdpTest : public testing::Test { 183 class P2PSocketHostUdpTest : public testing::Test {
184 protected: 184 protected:
185 virtual void SetUp() OVERRIDE { 185 virtual void SetUp() override {
186 EXPECT_CALL(sender_, Send( 186 EXPECT_CALL(sender_, Send(
187 MatchMessage(static_cast<uint32>(P2PMsg_OnSocketCreated::ID)))) 187 MatchMessage(static_cast<uint32>(P2PMsg_OnSocketCreated::ID))))
188 .WillOnce(DoAll(DeleteArg<0>(), Return(true))); 188 .WillOnce(DoAll(DeleteArg<0>(), Return(true)));
189 189
190 socket_host_.reset(new P2PSocketHostUdp(&sender_, 0, &throttler_)); 190 socket_host_.reset(new P2PSocketHostUdp(&sender_, 0, &throttler_));
191 socket_ = new FakeDatagramServerSocket(&sent_packets_); 191 socket_ = new FakeDatagramServerSocket(&sent_packets_);
192 socket_host_->socket_.reset(socket_); 192 socket_host_->socket_.reset(socket_);
193 193
194 local_address_ = ParseAddress(kTestLocalIpAddress, kTestPort1); 194 local_address_ = ParseAddress(kTestLocalIpAddress, kTestPort1);
195 socket_host_->Init(local_address_, P2PHostAndIPEndPoint()); 195 socket_host_->Init(local_address_, P2PHostAndIPEndPoint());
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 socket_host_->Send(dest3, packet1, options, 0); 380 socket_host_->Send(dest3, packet1, options, 0);
381 net::IPEndPoint dest4 = ParseAddress(kTestIpAddress1, 2224); 381 net::IPEndPoint dest4 = ParseAddress(kTestIpAddress1, 2224);
382 // This packet should also be dropped. 382 // This packet should also be dropped.
383 socket_host_->Send(dest4, packet1, options, 0); 383 socket_host_->Send(dest4, packet1, options, 0);
384 // |dest1| is known, we can send as many packets to it. 384 // |dest1| is known, we can send as many packets to it.
385 socket_host_->Send(dest1_, packet1, options, 0); 385 socket_host_->Send(dest1_, packet1, options, 0);
386 ASSERT_EQ(sent_packets_.size(), 4U); 386 ASSERT_EQ(sent_packets_.size(), 4U);
387 } 387 }
388 388
389 } // namespace content 389 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/p2p/socket_host_udp.h ('k') | content/browser/renderer_host/pepper/browser_ppapi_host_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698