| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/spdy/hpack/hpack_decoder.h" | 5 #include "net/spdy/hpack/hpack_decoder.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 using std::string; | 83 using std::string; |
| 84 using test::a2b_hex; | 84 using test::a2b_hex; |
| 85 | 85 |
| 86 using testing::ElementsAre; | 86 using testing::ElementsAre; |
| 87 using testing::Pair; | 87 using testing::Pair; |
| 88 | 88 |
| 89 const size_t kLiteralBound = 1024; | 89 const size_t kLiteralBound = 1024; |
| 90 | 90 |
| 91 class HpackDecoderTest : public ::testing::TestWithParam<bool> { | 91 class HpackDecoderTest : public ::testing::TestWithParam<bool> { |
| 92 protected: | 92 protected: |
| 93 HpackDecoderTest() | 93 HpackDecoderTest() : decoder_(), decoder_peer_(&decoder_) {} |
| 94 : decoder_(ObtainHpackHuffmanTable()), decoder_peer_(&decoder_) {} | |
| 95 | 94 |
| 96 bool DecodeHeaderBlock(StringPiece str) { | 95 bool DecodeHeaderBlock(StringPiece str) { |
| 97 if (GetParam()) { | 96 if (GetParam()) { |
| 98 decoder_.HandleControlFrameHeadersStart(&handler_); | 97 decoder_.HandleControlFrameHeadersStart(&handler_); |
| 99 } | 98 } |
| 100 return decoder_.HandleControlFrameHeadersData(str.data(), str.size()) && | 99 return decoder_.HandleControlFrameHeadersData(str.data(), str.size()) && |
| 101 decoder_.HandleControlFrameHeadersComplete(nullptr); | 100 decoder_.HandleControlFrameHeadersComplete(nullptr); |
| 102 } | 101 } |
| 103 | 102 |
| 104 const SpdyHeaderBlock& decoded_block() const { | 103 const SpdyHeaderBlock& decoded_block() const { |
| (...skipping 585 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 690 "foo=ASDJKHQKBZXOQWEOPIUAXQWEOIU;" | 689 "foo=ASDJKHQKBZXOQWEOPIUAXQWEOIU;" |
| 691 " max-age=3600; version=1"); | 690 " max-age=3600; version=1"); |
| 692 expectEntry(63, 52, "content-encoding", "gzip"); | 691 expectEntry(63, 52, "content-encoding", "gzip"); |
| 693 expectEntry(64, 65, "date", "Mon, 21 Oct 2013 20:13:22 GMT"); | 692 expectEntry(64, 65, "date", "Mon, 21 Oct 2013 20:13:22 GMT"); |
| 694 EXPECT_EQ(215u, decoder_peer_.header_table()->size()); | 693 EXPECT_EQ(215u, decoder_peer_.header_table()->size()); |
| 695 } | 694 } |
| 696 | 695 |
| 697 } // namespace | 696 } // namespace |
| 698 } // namespace test | 697 } // namespace test |
| 699 } // namespace net | 698 } // namespace net |
| OLD | NEW |