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

Side by Side Diff: net/spdy/spdy_framer_test.cc

Issue 623213004: replace OVERRIDE and FINAL with override and final in net/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: undo unwanted change in comment 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
« no previous file with comments | « net/spdy/spdy_framer.cc ('k') | net/spdy/spdy_http_stream.h » ('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 (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 <algorithm> 5 #include <algorithm>
6 #include <iostream> 6 #include <iostream>
7 #include <limits> 7 #include <limits>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 explicit DecompressionVisitor(SpdyMajorVersion version) 75 explicit DecompressionVisitor(SpdyMajorVersion version)
76 : version_(version), size_(0), finished_(false) {} 76 : version_(version), size_(0), finished_(false) {}
77 77
78 void ResetBuffer() { 78 void ResetBuffer() {
79 CHECK(buffer_.get() == NULL); 79 CHECK(buffer_.get() == NULL);
80 CHECK_EQ(0u, size_); 80 CHECK_EQ(0u, size_);
81 CHECK(!finished_); 81 CHECK(!finished_);
82 buffer_.reset(new char[kMaxDecompressedSize]); 82 buffer_.reset(new char[kMaxDecompressedSize]);
83 } 83 }
84 84
85 virtual void OnError(SpdyFramer* framer) OVERRIDE { LOG(FATAL); } 85 virtual void OnError(SpdyFramer* framer) override { LOG(FATAL); }
86 virtual void OnDataFrameHeader(SpdyStreamId stream_id, 86 virtual void OnDataFrameHeader(SpdyStreamId stream_id,
87 size_t length, 87 size_t length,
88 bool fin) OVERRIDE { 88 bool fin) override {
89 LOG(FATAL) << "Unexpected data frame header"; 89 LOG(FATAL) << "Unexpected data frame header";
90 } 90 }
91 virtual void OnStreamFrameData(SpdyStreamId stream_id, 91 virtual void OnStreamFrameData(SpdyStreamId stream_id,
92 const char* data, 92 const char* data,
93 size_t len, 93 size_t len,
94 bool fin) OVERRIDE { 94 bool fin) override {
95 LOG(FATAL); 95 LOG(FATAL);
96 } 96 }
97 97
98 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id, 98 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id,
99 const char* header_data, 99 const char* header_data,
100 size_t len) OVERRIDE { 100 size_t len) override {
101 CHECK(buffer_.get() != NULL); 101 CHECK(buffer_.get() != NULL);
102 CHECK_GE(kMaxDecompressedSize, size_ + len); 102 CHECK_GE(kMaxDecompressedSize, size_ + len);
103 CHECK(!finished_); 103 CHECK(!finished_);
104 if (len != 0) { 104 if (len != 0) {
105 memcpy(buffer_.get() + size_, header_data, len); 105 memcpy(buffer_.get() + size_, header_data, len);
106 size_ += len; 106 size_ += len;
107 } else { 107 } else {
108 // Done. 108 // Done.
109 finished_ = true; 109 finished_ = true;
110 } 110 }
111 return true; 111 return true;
112 } 112 }
113 113
114 virtual void OnSynStream(SpdyStreamId stream_id, 114 virtual void OnSynStream(SpdyStreamId stream_id,
115 SpdyStreamId associated_stream_id, 115 SpdyStreamId associated_stream_id,
116 SpdyPriority priority, 116 SpdyPriority priority,
117 bool fin, 117 bool fin,
118 bool unidirectional) OVERRIDE { 118 bool unidirectional) override {
119 SpdyFramer framer(version_); 119 SpdyFramer framer(version_);
120 framer.set_enable_compression(false); 120 framer.set_enable_compression(false);
121 SpdySynStreamIR syn_stream(stream_id); 121 SpdySynStreamIR syn_stream(stream_id);
122 syn_stream.set_associated_to_stream_id(associated_stream_id); 122 syn_stream.set_associated_to_stream_id(associated_stream_id);
123 syn_stream.set_priority(priority); 123 syn_stream.set_priority(priority);
124 syn_stream.set_fin(fin); 124 syn_stream.set_fin(fin);
125 syn_stream.set_unidirectional(unidirectional); 125 syn_stream.set_unidirectional(unidirectional);
126 scoped_ptr<SpdyFrame> frame(framer.SerializeSynStream(syn_stream)); 126 scoped_ptr<SpdyFrame> frame(framer.SerializeSynStream(syn_stream));
127 ResetBuffer(); 127 ResetBuffer();
128 memcpy(buffer_.get(), frame->data(), framer.GetSynStreamMinimumSize()); 128 memcpy(buffer_.get(), frame->data(), framer.GetSynStreamMinimumSize());
129 size_ += framer.GetSynStreamMinimumSize(); 129 size_ += framer.GetSynStreamMinimumSize();
130 } 130 }
131 131
132 virtual void OnSynReply(SpdyStreamId stream_id, bool fin) OVERRIDE { 132 virtual void OnSynReply(SpdyStreamId stream_id, bool fin) override {
133 SpdyFramer framer(version_); 133 SpdyFramer framer(version_);
134 framer.set_enable_compression(false); 134 framer.set_enable_compression(false);
135 SpdyHeadersIR headers(stream_id); 135 SpdyHeadersIR headers(stream_id);
136 headers.set_fin(fin); 136 headers.set_fin(fin);
137 scoped_ptr<SpdyFrame> frame(framer.SerializeHeaders(headers)); 137 scoped_ptr<SpdyFrame> frame(framer.SerializeHeaders(headers));
138 ResetBuffer(); 138 ResetBuffer();
139 memcpy(buffer_.get(), frame->data(), framer.GetHeadersMinimumSize()); 139 memcpy(buffer_.get(), frame->data(), framer.GetHeadersMinimumSize());
140 size_ += framer.GetSynStreamMinimumSize(); 140 size_ += framer.GetSynStreamMinimumSize();
141 } 141 }
142 142
143 virtual void OnRstStream(SpdyStreamId stream_id, 143 virtual void OnRstStream(SpdyStreamId stream_id,
144 SpdyRstStreamStatus status) OVERRIDE { 144 SpdyRstStreamStatus status) override {
145 LOG(FATAL); 145 LOG(FATAL);
146 } 146 }
147 virtual void OnSetting(SpdySettingsIds id, 147 virtual void OnSetting(SpdySettingsIds id,
148 uint8 flags, 148 uint8 flags,
149 uint32 value) OVERRIDE { 149 uint32 value) override {
150 LOG(FATAL); 150 LOG(FATAL);
151 } 151 }
152 virtual void OnPing(SpdyPingId unique_id, bool is_ack) OVERRIDE { 152 virtual void OnPing(SpdyPingId unique_id, bool is_ack) override {
153 LOG(FATAL); 153 LOG(FATAL);
154 } 154 }
155 virtual void OnSettingsEnd() OVERRIDE { LOG(FATAL); } 155 virtual void OnSettingsEnd() override { LOG(FATAL); }
156 virtual void OnGoAway(SpdyStreamId last_accepted_stream_id, 156 virtual void OnGoAway(SpdyStreamId last_accepted_stream_id,
157 SpdyGoAwayStatus status) OVERRIDE { 157 SpdyGoAwayStatus status) override {
158 LOG(FATAL); 158 LOG(FATAL);
159 } 159 }
160 160
161 virtual void OnHeaders(SpdyStreamId stream_id, 161 virtual void OnHeaders(SpdyStreamId stream_id,
162 bool fin, 162 bool fin,
163 bool end) OVERRIDE { 163 bool end) override {
164 SpdyFramer framer(version_); 164 SpdyFramer framer(version_);
165 framer.set_enable_compression(false); 165 framer.set_enable_compression(false);
166 SpdyHeadersIR headers(stream_id); 166 SpdyHeadersIR headers(stream_id);
167 headers.set_fin(fin); 167 headers.set_fin(fin);
168 scoped_ptr<SpdyFrame> frame(framer.SerializeHeaders(headers)); 168 scoped_ptr<SpdyFrame> frame(framer.SerializeHeaders(headers));
169 ResetBuffer(); 169 ResetBuffer();
170 memcpy(buffer_.get(), frame->data(), framer.GetHeadersMinimumSize()); 170 memcpy(buffer_.get(), frame->data(), framer.GetHeadersMinimumSize());
171 size_ += framer.GetHeadersMinimumSize(); 171 size_ += framer.GetHeadersMinimumSize();
172 } 172 }
173 173
174 virtual void OnWindowUpdate(SpdyStreamId stream_id, int delta_window_size) { 174 virtual void OnWindowUpdate(SpdyStreamId stream_id, int delta_window_size) {
175 LOG(FATAL); 175 LOG(FATAL);
176 } 176 }
177 177
178 virtual void OnPushPromise(SpdyStreamId stream_id, 178 virtual void OnPushPromise(SpdyStreamId stream_id,
179 SpdyStreamId promised_stream_id, 179 SpdyStreamId promised_stream_id,
180 bool end) OVERRIDE { 180 bool end) override {
181 SpdyFramer framer(version_); 181 SpdyFramer framer(version_);
182 framer.set_enable_compression(false); 182 framer.set_enable_compression(false);
183 SpdyPushPromiseIR push_promise(stream_id, promised_stream_id); 183 SpdyPushPromiseIR push_promise(stream_id, promised_stream_id);
184 scoped_ptr<SpdyFrame> frame(framer.SerializePushPromise(push_promise)); 184 scoped_ptr<SpdyFrame> frame(framer.SerializePushPromise(push_promise));
185 ResetBuffer(); 185 ResetBuffer();
186 memcpy(buffer_.get(), frame->data(), framer.GetPushPromiseMinimumSize()); 186 memcpy(buffer_.get(), frame->data(), framer.GetPushPromiseMinimumSize());
187 size_ += framer.GetPushPromiseMinimumSize(); 187 size_ += framer.GetPushPromiseMinimumSize();
188 } 188 }
189 189
190 virtual void OnContinuation(SpdyStreamId stream_id, bool end) OVERRIDE { 190 virtual void OnContinuation(SpdyStreamId stream_id, bool end) override {
191 LOG(FATAL); 191 LOG(FATAL);
192 } 192 }
193 193
194 virtual void OnPriority(SpdyStreamId stream_id, 194 virtual void OnPriority(SpdyStreamId stream_id,
195 SpdyStreamId parent_stream_id, 195 SpdyStreamId parent_stream_id,
196 uint8 weight, 196 uint8 weight,
197 bool exclusive) OVERRIDE { 197 bool exclusive) override {
198 // Do nothing. 198 // Do nothing.
199 } 199 }
200 200
201 virtual bool OnUnknownFrame(SpdyStreamId stream_id, 201 virtual bool OnUnknownFrame(SpdyStreamId stream_id,
202 int frame_type) OVERRIDE { 202 int frame_type) override {
203 LOG(FATAL); 203 LOG(FATAL);
204 return false; 204 return false;
205 } 205 }
206 206
207 char* ReleaseBuffer() { 207 char* ReleaseBuffer() {
208 CHECK(finished_); 208 CHECK(finished_);
209 return buffer_.release(); 209 return buffer_.release();
210 } 210 }
211 211
212 virtual void OnWindowUpdate(SpdyStreamId stream_id, 212 virtual void OnWindowUpdate(SpdyStreamId stream_id,
213 uint32 delta_window_size) OVERRIDE { 213 uint32 delta_window_size) override {
214 LOG(FATAL); 214 LOG(FATAL);
215 } 215 }
216 216
217 size_t size() const { 217 size_t size() const {
218 CHECK(finished_); 218 CHECK(finished_);
219 return size_; 219 return size_;
220 } 220 }
221 221
222 private: 222 private:
223 SpdyMajorVersion version_; 223 SpdyMajorVersion version_;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 data_frame_count_(0), 270 data_frame_count_(0),
271 last_payload_len_(0), 271 last_payload_len_(0),
272 last_frame_len_(0), 272 last_frame_len_(0),
273 header_buffer_(new char[kDefaultHeaderBufferSize]), 273 header_buffer_(new char[kDefaultHeaderBufferSize]),
274 header_buffer_length_(0), 274 header_buffer_length_(0),
275 header_buffer_size_(kDefaultHeaderBufferSize), 275 header_buffer_size_(kDefaultHeaderBufferSize),
276 header_stream_id_(static_cast<SpdyStreamId>(-1)), 276 header_stream_id_(static_cast<SpdyStreamId>(-1)),
277 header_control_type_(DATA), 277 header_control_type_(DATA),
278 header_buffer_valid_(false) {} 278 header_buffer_valid_(false) {}
279 279
280 virtual void OnError(SpdyFramer* f) OVERRIDE { 280 virtual void OnError(SpdyFramer* f) override {
281 LOG(INFO) << "SpdyFramer Error: " 281 LOG(INFO) << "SpdyFramer Error: "
282 << SpdyFramer::ErrorCodeToString(f->error_code()); 282 << SpdyFramer::ErrorCodeToString(f->error_code());
283 ++error_count_; 283 ++error_count_;
284 } 284 }
285 285
286 virtual void OnDataFrameHeader(SpdyStreamId stream_id, 286 virtual void OnDataFrameHeader(SpdyStreamId stream_id,
287 size_t length, 287 size_t length,
288 bool fin) OVERRIDE { 288 bool fin) override {
289 ++data_frame_count_; 289 ++data_frame_count_;
290 header_stream_id_ = stream_id; 290 header_stream_id_ = stream_id;
291 } 291 }
292 292
293 virtual void OnStreamFrameData(SpdyStreamId stream_id, 293 virtual void OnStreamFrameData(SpdyStreamId stream_id,
294 const char* data, 294 const char* data,
295 size_t len, 295 size_t len,
296 bool fin) OVERRIDE { 296 bool fin) override {
297 EXPECT_EQ(header_stream_id_, stream_id); 297 EXPECT_EQ(header_stream_id_, stream_id);
298 if (len == 0) 298 if (len == 0)
299 ++zero_length_data_frame_count_; 299 ++zero_length_data_frame_count_;
300 300
301 data_bytes_ += len; 301 data_bytes_ += len;
302 std::cerr << "OnStreamFrameData(" << stream_id << ", \""; 302 std::cerr << "OnStreamFrameData(" << stream_id << ", \"";
303 if (len > 0) { 303 if (len > 0) {
304 for (size_t i = 0 ; i < len; ++i) { 304 for (size_t i = 0 ; i < len; ++i) {
305 std::cerr << std::hex << (0xFF & (unsigned int)data[i]) << std::dec; 305 std::cerr << std::hex << (0xFF & (unsigned int)data[i]) << std::dec;
306 } 306 }
307 } 307 }
308 std::cerr << "\", " << len << ")\n"; 308 std::cerr << "\", " << len << ")\n";
309 } 309 }
310 310
311 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id, 311 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id,
312 const char* header_data, 312 const char* header_data,
313 size_t len) OVERRIDE { 313 size_t len) override {
314 ++control_frame_header_data_count_; 314 ++control_frame_header_data_count_;
315 CHECK_EQ(header_stream_id_, stream_id); 315 CHECK_EQ(header_stream_id_, stream_id);
316 if (len == 0) { 316 if (len == 0) {
317 ++zero_length_control_frame_header_data_count_; 317 ++zero_length_control_frame_header_data_count_;
318 // Indicates end-of-header-block. 318 // Indicates end-of-header-block.
319 headers_.clear(); 319 headers_.clear();
320 CHECK(header_buffer_valid_); 320 CHECK(header_buffer_valid_);
321 size_t parsed_length = framer_.ParseHeaderBlockInBuffer( 321 size_t parsed_length = framer_.ParseHeaderBlockInBuffer(
322 header_buffer_.get(), header_buffer_length_, &headers_); 322 header_buffer_.get(), header_buffer_length_, &headers_);
323 LOG_IF(DFATAL, header_buffer_length_ != parsed_length) 323 LOG_IF(DFATAL, header_buffer_length_ != parsed_length)
324 << "Check failed: header_buffer_length_ == parsed_length " 324 << "Check failed: header_buffer_length_ == parsed_length "
325 << "(" << header_buffer_length_ << " vs. " << parsed_length << ")"; 325 << "(" << header_buffer_length_ << " vs. " << parsed_length << ")";
326 return true; 326 return true;
327 } 327 }
328 const size_t available = header_buffer_size_ - header_buffer_length_; 328 const size_t available = header_buffer_size_ - header_buffer_length_;
329 if (len > available) { 329 if (len > available) {
330 header_buffer_valid_ = false; 330 header_buffer_valid_ = false;
331 return false; 331 return false;
332 } 332 }
333 memcpy(header_buffer_.get() + header_buffer_length_, header_data, len); 333 memcpy(header_buffer_.get() + header_buffer_length_, header_data, len);
334 header_buffer_length_ += len; 334 header_buffer_length_ += len;
335 return true; 335 return true;
336 } 336 }
337 337
338 virtual void OnSynStream(SpdyStreamId stream_id, 338 virtual void OnSynStream(SpdyStreamId stream_id,
339 SpdyStreamId associated_stream_id, 339 SpdyStreamId associated_stream_id,
340 SpdyPriority priority, 340 SpdyPriority priority,
341 bool fin, 341 bool fin,
342 bool unidirectional) OVERRIDE { 342 bool unidirectional) override {
343 ++syn_frame_count_; 343 ++syn_frame_count_;
344 if (framer_.protocol_version() > SPDY3) { 344 if (framer_.protocol_version() > SPDY3) {
345 InitHeaderStreaming(HEADERS, stream_id); 345 InitHeaderStreaming(HEADERS, stream_id);
346 } else { 346 } else {
347 InitHeaderStreaming(SYN_STREAM, stream_id); 347 InitHeaderStreaming(SYN_STREAM, stream_id);
348 } 348 }
349 if (fin) { 349 if (fin) {
350 ++fin_flag_count_; 350 ++fin_flag_count_;
351 } 351 }
352 } 352 }
353 353
354 virtual void OnSynReply(SpdyStreamId stream_id, bool fin) OVERRIDE { 354 virtual void OnSynReply(SpdyStreamId stream_id, bool fin) override {
355 ++syn_reply_frame_count_; 355 ++syn_reply_frame_count_;
356 if (framer_.protocol_version() > SPDY3) { 356 if (framer_.protocol_version() > SPDY3) {
357 InitHeaderStreaming(HEADERS, stream_id); 357 InitHeaderStreaming(HEADERS, stream_id);
358 } else { 358 } else {
359 InitHeaderStreaming(SYN_REPLY, stream_id); 359 InitHeaderStreaming(SYN_REPLY, stream_id);
360 } 360 }
361 if (fin) { 361 if (fin) {
362 ++fin_flag_count_; 362 ++fin_flag_count_;
363 } 363 }
364 } 364 }
365 365
366 virtual void OnRstStream(SpdyStreamId stream_id, 366 virtual void OnRstStream(SpdyStreamId stream_id,
367 SpdyRstStreamStatus status) OVERRIDE { 367 SpdyRstStreamStatus status) override {
368 ++fin_frame_count_; 368 ++fin_frame_count_;
369 } 369 }
370 370
371 virtual bool OnRstStreamFrameData(const char* rst_stream_data, 371 virtual bool OnRstStreamFrameData(const char* rst_stream_data,
372 size_t len) OVERRIDE { 372 size_t len) override {
373 if ((rst_stream_data != NULL) && (len > 0)) { 373 if ((rst_stream_data != NULL) && (len > 0)) {
374 fin_opaque_data_ += std::string(rst_stream_data, len); 374 fin_opaque_data_ += std::string(rst_stream_data, len);
375 } 375 }
376 return true; 376 return true;
377 } 377 }
378 378
379 virtual void OnSetting(SpdySettingsIds id, 379 virtual void OnSetting(SpdySettingsIds id,
380 uint8 flags, 380 uint8 flags,
381 uint32 value) OVERRIDE { 381 uint32 value) override {
382 ++setting_count_; 382 ++setting_count_;
383 } 383 }
384 384
385 virtual void OnSettingsAck() OVERRIDE { 385 virtual void OnSettingsAck() override {
386 DCHECK_LT(SPDY3, framer_.protocol_version()); 386 DCHECK_LT(SPDY3, framer_.protocol_version());
387 ++settings_ack_received_; 387 ++settings_ack_received_;
388 } 388 }
389 389
390 virtual void OnSettingsEnd() OVERRIDE { 390 virtual void OnSettingsEnd() override {
391 if (framer_.protocol_version() <= SPDY3) { return; } 391 if (framer_.protocol_version() <= SPDY3) { return; }
392 ++settings_ack_sent_; 392 ++settings_ack_sent_;
393 } 393 }
394 394
395 virtual void OnPing(SpdyPingId unique_id, bool is_ack) OVERRIDE { 395 virtual void OnPing(SpdyPingId unique_id, bool is_ack) override {
396 DLOG(FATAL); 396 DLOG(FATAL);
397 } 397 }
398 398
399 virtual void OnGoAway(SpdyStreamId last_accepted_stream_id, 399 virtual void OnGoAway(SpdyStreamId last_accepted_stream_id,
400 SpdyGoAwayStatus status) OVERRIDE { 400 SpdyGoAwayStatus status) override {
401 ++goaway_count_; 401 ++goaway_count_;
402 } 402 }
403 403
404 virtual void OnHeaders(SpdyStreamId stream_id, bool fin, bool end) OVERRIDE { 404 virtual void OnHeaders(SpdyStreamId stream_id, bool fin, bool end) override {
405 ++headers_frame_count_; 405 ++headers_frame_count_;
406 InitHeaderStreaming(HEADERS, stream_id); 406 InitHeaderStreaming(HEADERS, stream_id);
407 if (fin) { 407 if (fin) {
408 ++fin_flag_count_; 408 ++fin_flag_count_;
409 } 409 }
410 } 410 }
411 411
412 virtual void OnWindowUpdate(SpdyStreamId stream_id, 412 virtual void OnWindowUpdate(SpdyStreamId stream_id,
413 uint32 delta_window_size) OVERRIDE { 413 uint32 delta_window_size) override {
414 last_window_update_stream_ = stream_id; 414 last_window_update_stream_ = stream_id;
415 last_window_update_delta_ = delta_window_size; 415 last_window_update_delta_ = delta_window_size;
416 } 416 }
417 417
418 virtual void OnPushPromise(SpdyStreamId stream_id, 418 virtual void OnPushPromise(SpdyStreamId stream_id,
419 SpdyStreamId promised_stream_id, 419 SpdyStreamId promised_stream_id,
420 bool end) OVERRIDE { 420 bool end) override {
421 ++push_promise_frame_count_; 421 ++push_promise_frame_count_;
422 InitHeaderStreaming(PUSH_PROMISE, stream_id); 422 InitHeaderStreaming(PUSH_PROMISE, stream_id);
423 last_push_promise_stream_ = stream_id; 423 last_push_promise_stream_ = stream_id;
424 last_push_promise_promised_stream_ = promised_stream_id; 424 last_push_promise_promised_stream_ = promised_stream_id;
425 } 425 }
426 426
427 virtual void OnContinuation(SpdyStreamId stream_id, bool end) OVERRIDE { 427 virtual void OnContinuation(SpdyStreamId stream_id, bool end) override {
428 ++continuation_count_; 428 ++continuation_count_;
429 } 429 }
430 430
431 virtual void OnAltSvc(SpdyStreamId stream_id, 431 virtual void OnAltSvc(SpdyStreamId stream_id,
432 uint32 max_age, 432 uint32 max_age,
433 uint16 port, 433 uint16 port,
434 StringPiece protocol_id, 434 StringPiece protocol_id,
435 StringPiece host, 435 StringPiece host,
436 StringPiece origin) OVERRIDE { 436 StringPiece origin) override {
437 test_altsvc_ir_.set_stream_id(stream_id); 437 test_altsvc_ir_.set_stream_id(stream_id);
438 test_altsvc_ir_.set_max_age(max_age); 438 test_altsvc_ir_.set_max_age(max_age);
439 test_altsvc_ir_.set_port(port); 439 test_altsvc_ir_.set_port(port);
440 test_altsvc_ir_.set_protocol_id(protocol_id.as_string()); 440 test_altsvc_ir_.set_protocol_id(protocol_id.as_string());
441 test_altsvc_ir_.set_host(host.as_string()); 441 test_altsvc_ir_.set_host(host.as_string());
442 if (origin.length() > 0) { 442 if (origin.length() > 0) {
443 test_altsvc_ir_.set_origin(origin.as_string()); 443 test_altsvc_ir_.set_origin(origin.as_string());
444 } 444 }
445 ++altsvc_count_; 445 ++altsvc_count_;
446 } 446 }
447 447
448 virtual void OnPriority(SpdyStreamId stream_id, 448 virtual void OnPriority(SpdyStreamId stream_id,
449 SpdyStreamId parent_stream_id, 449 SpdyStreamId parent_stream_id,
450 uint8 weight, 450 uint8 weight,
451 bool exclusive) OVERRIDE { 451 bool exclusive) override {
452 ++priority_count_; 452 ++priority_count_;
453 } 453 }
454 454
455 virtual bool OnUnknownFrame(SpdyStreamId stream_id, int frame_type) OVERRIDE { 455 virtual bool OnUnknownFrame(SpdyStreamId stream_id, int frame_type) override {
456 DLOG(INFO) << "Unknown frame type " << frame_type; 456 DLOG(INFO) << "Unknown frame type " << frame_type;
457 return on_unknown_frame_result_; 457 return on_unknown_frame_result_;
458 } 458 }
459 459
460 virtual void OnSendCompressedFrame(SpdyStreamId stream_id, 460 virtual void OnSendCompressedFrame(SpdyStreamId stream_id,
461 SpdyFrameType type, 461 SpdyFrameType type,
462 size_t payload_len, 462 size_t payload_len,
463 size_t frame_len) OVERRIDE { 463 size_t frame_len) override {
464 last_payload_len_ = payload_len; 464 last_payload_len_ = payload_len;
465 last_frame_len_ = frame_len; 465 last_frame_len_ = frame_len;
466 } 466 }
467 467
468 virtual void OnReceiveCompressedFrame(SpdyStreamId stream_id, 468 virtual void OnReceiveCompressedFrame(SpdyStreamId stream_id,
469 SpdyFrameType type, 469 SpdyFrameType type,
470 size_t frame_len) OVERRIDE { 470 size_t frame_len) override {
471 last_frame_len_ = frame_len; 471 last_frame_len_ = frame_len;
472 } 472 }
473 473
474 // Convenience function which runs a framer simulation with particular input. 474 // Convenience function which runs a framer simulation with particular input.
475 void SimulateInFramer(const unsigned char* input, size_t size) { 475 void SimulateInFramer(const unsigned char* input, size_t size) {
476 framer_.set_enable_compression(use_compression_); 476 framer_.set_enable_compression(use_compression_);
477 framer_.set_visitor(this); 477 framer_.set_visitor(this);
478 size_t input_remaining = size; 478 size_t input_remaining = size;
479 const char* input_ptr = reinterpret_cast<const char*>(input); 479 const char* input_ptr = reinterpret_cast<const char*>(input);
480 while (input_remaining > 0 && 480 while (input_remaining > 0 &&
(...skipping 5068 matching lines...) Expand 10 before | Expand all | Expand 10 after
5549 TestSpdyVisitor visitor(spdy_version_); 5549 TestSpdyVisitor visitor(spdy_version_);
5550 visitor.SimulateInFramer(kFrameData, sizeof(kFrameData)); 5550 visitor.SimulateInFramer(kFrameData, sizeof(kFrameData));
5551 5551
5552 EXPECT_EQ(SpdyFramer::SPDY_ERROR, visitor.framer_.state()); 5552 EXPECT_EQ(SpdyFramer::SPDY_ERROR, visitor.framer_.state());
5553 EXPECT_EQ(SpdyFramer::SPDY_INVALID_CONTROL_FRAME, 5553 EXPECT_EQ(SpdyFramer::SPDY_INVALID_CONTROL_FRAME,
5554 visitor.framer_.error_code()) 5554 visitor.framer_.error_code())
5555 << SpdyFramer::ErrorCodeToString(visitor.framer_.error_code()); 5555 << SpdyFramer::ErrorCodeToString(visitor.framer_.error_code());
5556 } 5556 }
5557 5557
5558 } // namespace net 5558 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_framer.cc ('k') | net/spdy/spdy_http_stream.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698