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

Side by Side Diff: net/tools/quic/quic_spdy_client_stream_test.cc

Issue 2603723002: Add a new QUIC platform API for text utilities. (Closed)
Patch Set: net/tools/quic/quic_packet_printer_bin.cc Created 3 years, 11 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/tools/quic/quic_spdy_client_stream.cc ('k') | net/tools/quic/stateless_rejector_test.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 #include "net/tools/quic/quic_spdy_client_stream.h" 5 #include "net/tools/quic/quic_spdy_client_stream.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/strings/string_number_conversions.h"
11 #include "net/quic/core/quic_utils.h" 10 #include "net/quic/core/quic_utils.h"
12 #include "net/quic/core/spdy_utils.h" 11 #include "net/quic/core/spdy_utils.h"
13 #include "net/quic/platform/api/quic_socket_address.h" 12 #include "net/quic/platform/api/quic_socket_address.h"
13 #include "net/quic/platform/api/quic_text_utils.h"
14 #include "net/quic/test_tools/crypto_test_utils.h" 14 #include "net/quic/test_tools/crypto_test_utils.h"
15 #include "net/quic/test_tools/quic_test_utils.h" 15 #include "net/quic/test_tools/quic_test_utils.h"
16 #include "net/tools/quic/quic_client_session.h" 16 #include "net/tools/quic/quic_client_session.h"
17 #include "testing/gmock/include/gmock/gmock.h" 17 #include "testing/gmock/include/gmock/gmock.h"
18 #include "testing/gtest/include/gtest/gtest.h" 18 #include "testing/gtest/include/gtest/gtest.h"
19 19
20 using base::IntToString; 20 using base::IntToString;
21 using std::string; 21 using std::string;
22 using testing::StrictMock; 22 using testing::StrictMock;
23 using testing::TestWithParam; 23 using testing::TestWithParam;
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // Send headers as usual. 180 // Send headers as usual.
181 auto headers = AsHeaderList(headers_); 181 auto headers = AsHeaderList(headers_);
182 stream_->OnStreamHeaderList(false, headers.uncompressed_header_bytes(), 182 stream_->OnStreamHeaderList(false, headers.uncompressed_header_bytes(),
183 headers); 183 headers);
184 184
185 // Send trailers before sending the body. Even though a FIN has been received 185 // Send trailers before sending the body. Even though a FIN has been received
186 // the stream should not be closed, as it does not yet have all the data bytes 186 // the stream should not be closed, as it does not yet have all the data bytes
187 // promised by the final offset field. 187 // promised by the final offset field.
188 SpdyHeaderBlock trailer_block; 188 SpdyHeaderBlock trailer_block;
189 trailer_block["trailer key"] = "trailer value"; 189 trailer_block["trailer key"] = "trailer value";
190 trailer_block[kFinalOffsetHeaderKey] = IntToString(body_.size()); 190 trailer_block[kFinalOffsetHeaderKey] =
191 QuicTextUtils::Uint64ToString(body_.size());
191 auto trailers = AsHeaderList(trailer_block); 192 auto trailers = AsHeaderList(trailer_block);
192 stream_->OnStreamHeaderList(true, trailers.uncompressed_header_bytes(), 193 stream_->OnStreamHeaderList(true, trailers.uncompressed_header_bytes(),
193 trailers); 194 trailers);
194 195
195 // Now send the body, which should close the stream as the FIN has been 196 // Now send the body, which should close the stream as the FIN has been
196 // received, as well as all data. 197 // received, as well as all data.
197 EXPECT_CALL(session_, CloseStream(stream_->id())); 198 EXPECT_CALL(session_, CloseStream(stream_->id()));
198 stream_->OnStreamFrame( 199 stream_->OnStreamFrame(
199 QuicStreamFrame(stream_->id(), /*fin=*/false, /*offset=*/0, body_)); 200 QuicStreamFrame(stream_->id(), /*fin=*/false, /*offset=*/0, body_));
200 } 201 }
201 202
202 } // namespace 203 } // namespace
203 } // namespace test 204 } // namespace test
204 } // namespace net 205 } // namespace net
OLDNEW
« no previous file with comments | « net/tools/quic/quic_spdy_client_stream.cc ('k') | net/tools/quic/stateless_rejector_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698