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

Side by Side Diff: net/websockets/websocket_basic_stream_test.cc

Issue 1545233002: Convert Pass()→std::move() in //net (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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
« no previous file with comments | « net/websockets/websocket_basic_stream.cc ('k') | net/websockets/websocket_channel.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 // Tests for WebSocketBasicStream. Note that we do not attempt to verify that 5 // Tests for WebSocketBasicStream. Note that we do not attempt to verify that
6 // frame parsing itself functions correctly, as that is covered by the 6 // frame parsing itself functions correctly, as that is covered by the
7 // WebSocketFrameParser tests. 7 // WebSocketFrameParser tests.
8 8
9 #include "net/websockets/websocket_basic_stream.h" 9 #include "net/websockets/websocket_basic_stream.h"
10 10
11 #include <stddef.h> 11 #include <stddef.h>
12 #include <stdint.h> 12 #include <stdint.h>
13 #include <string.h> // for memcpy() and memset(). 13 #include <string.h> // for memcpy() and memset().
14
15 #include <string> 14 #include <string>
15 #include <utility>
16 #include <vector> 16 #include <vector>
17 17
18 #include "base/big_endian.h" 18 #include "base/big_endian.h"
19 #include "base/macros.h" 19 #include "base/macros.h"
20 #include "net/base/test_completion_callback.h" 20 #include "net/base/test_completion_callback.h"
21 #include "net/log/test_net_log.h" 21 #include "net/log/test_net_log.h"
22 #include "net/socket/socket_test_util.h" 22 #include "net/socket/socket_test_util.h"
23 #include "testing/gtest/include/gtest/gtest.h" 23 #include "testing/gtest/include/gtest/gtest.h"
24 24
25 namespace net { 25 namespace net {
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 factory_.AddSocketDataProvider(socket_data_.get()); 127 factory_.AddSocketDataProvider(socket_data_.get());
128 128
129 scoped_ptr<ClientSocketHandle> transport_socket(new ClientSocketHandle); 129 scoped_ptr<ClientSocketHandle> transport_socket(new ClientSocketHandle);
130 scoped_refptr<MockTransportSocketParams> params; 130 scoped_refptr<MockTransportSocketParams> params;
131 transport_socket->Init("a", 131 transport_socket->Init("a",
132 params, 132 params,
133 MEDIUM, 133 MEDIUM,
134 CompletionCallback(), 134 CompletionCallback(),
135 &pool_, 135 &pool_,
136 bound_net_log_.bound()); 136 bound_net_log_.bound());
137 return transport_socket.Pass(); 137 return transport_socket;
138 } 138 }
139 139
140 void SetHttpReadBuffer(const char* data, size_t size) { 140 void SetHttpReadBuffer(const char* data, size_t size) {
141 http_read_buffer_ = new GrowableIOBuffer; 141 http_read_buffer_ = new GrowableIOBuffer;
142 http_read_buffer_->SetCapacity(size); 142 http_read_buffer_->SetCapacity(size);
143 memcpy(http_read_buffer_->data(), data, size); 143 memcpy(http_read_buffer_->data(), data, size);
144 http_read_buffer_->set_offset(size); 144 http_read_buffer_->set_offset(size);
145 } 145 }
146 146
147 void CreateStream(MockRead reads[], 147 void CreateStream(MockRead reads[],
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 kWriteFrameSize - (WebSocketFrameHeader::kBaseHeaderSize + 248 kWriteFrameSize - (WebSocketFrameHeader::kBaseHeaderSize +
249 WebSocketFrameHeader::kMaskingKeyLength); 249 WebSocketFrameHeader::kMaskingKeyLength);
250 frame->data = new IOBuffer(payload_size); 250 frame->data = new IOBuffer(payload_size);
251 memcpy(frame->data->data(), 251 memcpy(frame->data->data(),
252 kWriteFrame + kWriteFrameSize - payload_size, 252 kWriteFrame + kWriteFrameSize - payload_size,
253 payload_size); 253 payload_size);
254 WebSocketFrameHeader& header = frame->header; 254 WebSocketFrameHeader& header = frame->header;
255 header.final = true; 255 header.final = true;
256 header.masked = true; 256 header.masked = true;
257 header.payload_length = payload_size; 257 header.payload_length = payload_size;
258 frames_.push_back(frame.Pass()); 258 frames_.push_back(std::move(frame));
259 } 259 }
260 260
261 // Creates a stream that expects the listed writes. 261 // Creates a stream that expects the listed writes.
262 template <size_t N> 262 template <size_t N>
263 void CreateWriteOnly(MockWrite (&writes)[N]) { 263 void CreateWriteOnly(MockWrite (&writes)[N]) {
264 CreateStream(NULL, 0, writes, N); 264 CreateStream(NULL, 0, writes, N);
265 } 265 }
266 }; 266 };
267 267
268 TEST_F(WebSocketBasicStreamSocketTest, ConstructionWorks) { 268 TEST_F(WebSocketBasicStreamSocketTest, ConstructionWorks) {
(...skipping 622 matching lines...) Expand 10 before | Expand all | Expand 10 after
891 MockWrite(SYNCHRONOUS, kMaskedEmptyPong, kMaskedEmptyPongSize)}; 891 MockWrite(SYNCHRONOUS, kMaskedEmptyPong, kMaskedEmptyPongSize)};
892 CreateWriteOnly(writes); 892 CreateWriteOnly(writes);
893 893
894 scoped_ptr<WebSocketFrame> frame( 894 scoped_ptr<WebSocketFrame> frame(
895 new WebSocketFrame(WebSocketFrameHeader::kOpCodePong)); 895 new WebSocketFrame(WebSocketFrameHeader::kOpCodePong));
896 WebSocketFrameHeader& header = frame->header; 896 WebSocketFrameHeader& header = frame->header;
897 header.final = true; 897 header.final = true;
898 header.masked = true; 898 header.masked = true;
899 header.payload_length = 0; 899 header.payload_length = 0;
900 std::vector<scoped_ptr<WebSocketFrame>> frames; 900 std::vector<scoped_ptr<WebSocketFrame>> frames;
901 frames.push_back(frame.Pass()); 901 frames.push_back(std::move(frame));
902 EXPECT_EQ(OK, stream_->WriteFrames(&frames, cb_.callback())); 902 EXPECT_EQ(OK, stream_->WriteFrames(&frames, cb_.callback()));
903 } 903 }
904 904
905 // Check that writing with a non-NULL mask works correctly. 905 // Check that writing with a non-NULL mask works correctly.
906 TEST_F(WebSocketBasicStreamSocketTest, WriteNonNulMask) { 906 TEST_F(WebSocketBasicStreamSocketTest, WriteNonNulMask) {
907 std::string masked_frame = std::string("\x81\x88"); 907 std::string masked_frame = std::string("\x81\x88");
908 masked_frame += std::string(kNonNulMaskingKey.key, 4); 908 masked_frame += std::string(kNonNulMaskingKey.key, 4);
909 masked_frame += "jiggered"; 909 masked_frame += "jiggered";
910 MockWrite writes[] = { 910 MockWrite writes[] = {
911 MockWrite(SYNCHRONOUS, masked_frame.data(), masked_frame.size())}; 911 MockWrite(SYNCHRONOUS, masked_frame.data(), masked_frame.size())};
912 generator_ = &GenerateNonNulMaskingKey; 912 generator_ = &GenerateNonNulMaskingKey;
913 CreateStream(NULL, 0, writes, arraysize(writes)); 913 CreateStream(NULL, 0, writes, arraysize(writes));
914 914
915 scoped_ptr<WebSocketFrame> frame( 915 scoped_ptr<WebSocketFrame> frame(
916 new WebSocketFrame(WebSocketFrameHeader::kOpCodeText)); 916 new WebSocketFrame(WebSocketFrameHeader::kOpCodeText));
917 const std::string unmasked_payload = "graphics"; 917 const std::string unmasked_payload = "graphics";
918 const size_t payload_size = unmasked_payload.size(); 918 const size_t payload_size = unmasked_payload.size();
919 frame->data = new IOBuffer(payload_size); 919 frame->data = new IOBuffer(payload_size);
920 memcpy(frame->data->data(), unmasked_payload.data(), payload_size); 920 memcpy(frame->data->data(), unmasked_payload.data(), payload_size);
921 WebSocketFrameHeader& header = frame->header; 921 WebSocketFrameHeader& header = frame->header;
922 header.final = true; 922 header.final = true;
923 header.masked = true; 923 header.masked = true;
924 header.payload_length = payload_size; 924 header.payload_length = payload_size;
925 frames_.push_back(frame.Pass()); 925 frames_.push_back(std::move(frame));
926 926
927 EXPECT_EQ(OK, stream_->WriteFrames(&frames_, cb_.callback())); 927 EXPECT_EQ(OK, stream_->WriteFrames(&frames_, cb_.callback()));
928 } 928 }
929 929
930 TEST_F(WebSocketBasicStreamSocketTest, GetExtensionsWorks) { 930 TEST_F(WebSocketBasicStreamSocketTest, GetExtensionsWorks) {
931 extensions_ = "inflate-uuencode"; 931 extensions_ = "inflate-uuencode";
932 CreateNullStream(); 932 CreateNullStream();
933 933
934 EXPECT_EQ("inflate-uuencode", stream_->GetExtensions()); 934 EXPECT_EQ("inflate-uuencode", stream_->GetExtensions());
935 } 935 }
936 936
937 TEST_F(WebSocketBasicStreamSocketTest, GetSubProtocolWorks) { 937 TEST_F(WebSocketBasicStreamSocketTest, GetSubProtocolWorks) {
938 sub_protocol_ = "cyberchat"; 938 sub_protocol_ = "cyberchat";
939 CreateNullStream(); 939 CreateNullStream();
940 940
941 EXPECT_EQ("cyberchat", stream_->GetSubProtocol()); 941 EXPECT_EQ("cyberchat", stream_->GetSubProtocol());
942 } 942 }
943 943
944 } // namespace 944 } // namespace
945 } // namespace net 945 } // namespace net
OLDNEW
« no previous file with comments | « net/websockets/websocket_basic_stream.cc ('k') | net/websockets/websocket_channel.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698