Index: net/spdy/spdy_framer_test.cc |
diff --git a/net/spdy/spdy_framer_test.cc b/net/spdy/spdy_framer_test.cc |
index 2fac61cb1ff429425ddce99becde9b77342a43e9..b4cac687739ebb3ae990d8622019bb6198cf81fb 100644 |
--- a/net/spdy/spdy_framer_test.cc |
+++ b/net/spdy/spdy_framer_test.cc |
@@ -18,13 +18,6 @@ |
#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/platform_test.h" |
-using base::StringPiece; |
-using std::string; |
-using std::max; |
-using std::min; |
-using std::numeric_limits; |
-using testing::ElementsAre; |
-using testing::Pair; |
Peter Kasting
2014/11/25 22:51:00
Most of the changes in this file are from removing
|
using testing::_; |
namespace net { |
@@ -478,7 +471,7 @@ class TestSpdyVisitor : public SpdyFramerVisitorInterface, |
// the socket. |
const size_t kMaxReadSize = 32; |
size_t bytes_read = |
- (rand() % min(input_remaining, kMaxReadSize)) + 1; |
+ (rand() % std::min(input_remaining, kMaxReadSize)) + 1; |
size_t bytes_processed = framer_.ProcessInput(input_ptr, bytes_read); |
input_remaining -= bytes_processed; |
input_ptr += bytes_processed; |
@@ -622,7 +615,7 @@ class SpdyFramerTest : public ::testing::TestWithParam<SpdyMajorVersion> { |
SpdyConstants::SerializeMajorVersion(spdy_version_)); |
} |
- void CompareFrame(const string& description, |
+ void CompareFrame(const std::string& description, |
const SpdyFrame& actual_frame, |
const unsigned char* expected, |
const int expected_len) { |
@@ -632,7 +625,7 @@ class SpdyFramerTest : public ::testing::TestWithParam<SpdyMajorVersion> { |
description, actual, actual_frame.size(), expected, expected_len); |
} |
- void CompareFrames(const string& description, |
+ void CompareFrames(const std::string& description, |
const SpdyFrame& expected_frame, |
const SpdyFrame& actual_frame) { |
CompareCharArraysWithHexError( |
@@ -920,16 +913,16 @@ TEST_P(SpdyFramerTest, MultiValueHeader) { |
frame.WriteUInt8(255); // Priority weight. |
} |
- string value("value1\0value2", 13); |
+ std::string value("value1\0value2", 13); |
if (IsSpdy2()) { |
frame.WriteUInt16(1); // Number of headers. |
frame.WriteString("name"); |
frame.WriteString(value); |
} else if (spdy_version_ > SPDY3) { |
// TODO(jgraettinger): If this pattern appears again, move to test class. |
- std::map<string, string> header_set; |
+ std::map<std::string, std::string> header_set; |
header_set["name"] = value; |
- string buffer; |
+ std::string buffer; |
HpackEncoder encoder(ObtainHpackHuffmanTable()); |
encoder.EncodeHeaderSetWithoutCompression(header_set, &buffer); |
frame.WriteBytes(&buffer[0], buffer.size()); |
@@ -950,8 +943,8 @@ TEST_P(SpdyFramerTest, MultiValueHeader) { |
reinterpret_cast<unsigned char*>(control_frame->data()), |
control_frame->size()); |
- EXPECT_THAT(visitor.headers_, ElementsAre( |
- Pair("name", value))); |
+ EXPECT_THAT(visitor.headers_, |
+ testing::ElementsAre(testing::Pair("name", value))); |
} |
TEST_P(SpdyFramerTest, BasicCompression) { |
@@ -1872,7 +1865,7 @@ TEST_P(SpdyFramerTest, CreateDataFrame) { |
// than 4MB. |
const char kDescription[] = "Large data frame"; |
const int kDataSize = 4 * 1024 * 1024; // 4 MB |
- const string kData(kDataSize, 'A'); |
+ const std::string kData(kDataSize, 'A'); |
const unsigned char kFrameHeader[] = { |
0x00, 0x00, 0x00, 0x01, |
0x01, 0x40, 0x00, 0x00, |
@@ -3363,7 +3356,7 @@ TEST_P(SpdyFramerTest, CreatePushPromiseThenContinuationUncompressed) { |
SpdyPushPromiseIR push_promise(42, 57); |
push_promise.set_padding_len(1); |
- string big_value(TestSpdyVisitor::sent_control_frame_max_size(), 'x'); |
+ std::string big_value(TestSpdyVisitor::sent_control_frame_max_size(), 'x'); |
push_promise.SetHeader("xxx", big_value); |
scoped_ptr<SpdySerializedFrame> frame( |
framer.SerializePushPromise(push_promise)); |
@@ -3573,7 +3566,7 @@ TEST_P(SpdyFramerTest, ControlFrameAtMaxSizeLimit) { |
TestSpdyVisitor::sent_control_frame_max_size() - control_frame->size(); |
// Create a frame at exactly that size. |
- string big_value(kBigValueSize, 'x'); |
+ std::string big_value(kBigValueSize, 'x'); |
syn_stream.SetHeader("aa", big_value); |
control_frame.reset(framer.SerializeSynStream(syn_stream)); |
EXPECT_TRUE(control_frame.get() != NULL); |
@@ -3613,7 +3606,7 @@ TEST_P(SpdyFramerTest, DISABLED_ControlFrameTooLarge) { |
control_frame->size() + 1; |
// Create a frame at exatly that size. |
- string big_value(kBigValueSize, 'x'); |
+ std::string big_value(kBigValueSize, 'x'); |
syn_stream.SetHeader("aa", big_value); |
// Upstream branches here and wraps SPDY4 with EXPECT_DEBUG_DFATAL. We |
// neither support that in Chromium, nor do we use the same DFATAL (see |
@@ -3649,7 +3642,7 @@ TEST_P(SpdyFramerTest, TooLargeHeadersFrameUsesContinuation) { |
// Exact payload length will change with HPACK, but this should be long |
// enough to cause an overflow. |
const size_t kBigValueSize = kControlFrameSizeLimit; |
- string big_value(kBigValueSize, 'x'); |
+ std::string big_value(kBigValueSize, 'x'); |
headers.SetHeader("aa", big_value); |
scoped_ptr<SpdyFrame> control_frame(framer.SerializeHeaders(headers)); |
EXPECT_TRUE(control_frame.get() != NULL); |
@@ -3679,7 +3672,7 @@ TEST_P(SpdyFramerTest, TooLargePushPromiseFrameUsesContinuation) { |
// Exact payload length will change with HPACK, but this should be long |
// enough to cause an overflow. |
const size_t kBigValueSize = kControlFrameSizeLimit; |
- string big_value(kBigValueSize, 'x'); |
+ std::string big_value(kBigValueSize, 'x'); |
push_promise.SetHeader("aa", big_value); |
scoped_ptr<SpdyFrame> control_frame( |
framer.SerializePushPromise(push_promise)); |
@@ -3706,7 +3699,7 @@ TEST_P(SpdyFramerTest, ControlFrameMuchTooLarge) { |
const size_t kHeaderBufferSize = |
TestSpdyVisitor::header_data_chunk_max_size() * kHeaderBufferChunks; |
const size_t kBigValueSize = kHeaderBufferSize * 2; |
- string big_value(kBigValueSize, 'x'); |
+ std::string big_value(kBigValueSize, 'x'); |
SpdyFramer framer(spdy_version_); |
SpdyHeadersIR headers(1); |
headers.set_priority(1); |
@@ -3770,21 +3763,23 @@ TEST_P(SpdyFramerTest, ControlFrameSizesAreValidated) { |
SpdyFramer framer(spdy_version_); |
// Create a GoAway frame that has a few extra bytes at the end. |
// We create enough overhead to overflow the framer's control frame buffer. |
- ASSERT_GE(250u, SpdyFramer::kControlFrameBufferSize); |
- const unsigned char length = 1 + SpdyFramer::kControlFrameBufferSize; |
+ ASSERT_LE(SpdyFramer::kControlFrameBufferSize, 250u); |
+ const size_t length = SpdyFramer::kControlFrameBufferSize + 1; |
const unsigned char kV3FrameData[] = { // Also applies for V2. |
0x80, spdy_version_ch_, 0x00, 0x07, |
- 0x00, 0x00, 0x00, length, |
+ 0x00, 0x00, 0x00, static_cast<unsigned char>(length + 1), |
Bence
2014/12/01 18:18:38
Why do you add 1 here?
Peter Kasting
2014/12/02 02:13:55
Bug from a modified previous version of rewriting
Bence
2014/12/02 14:58:44
FYI I tried many different values here locally and
|
0x00, 0x00, 0x00, 0x00, // Stream ID |
0x00, 0x00, 0x00, 0x00, // Status |
}; |
// SPDY version 4 and up GOAWAY frames are only bound to a minimal length, |
// since it may carry opaque data. Verify that minimal length is tested. |
- const unsigned char less_than_min_length = |
+ ASSERT_GT(framer.GetGoAwayMinimumSize(), framer.GetControlFrameHeaderSize()); |
+ const size_t less_than_min_length = |
framer.GetGoAwayMinimumSize() - framer.GetControlFrameHeaderSize() - 1; |
+ ASSERT_LE(less_than_min_length, std::numeric_limits<unsigned char>::max()); |
const unsigned char kV4FrameData[] = { |
- 0x00, 0x00, static_cast<uint8>(less_than_min_length), 0x07, |
+ 0x00, 0x00, static_cast<unsigned char>(less_than_min_length), 0x07, |
0x00, 0x00, 0x00, 0x00, |
0x00, 0x00, 0x00, 0x00, // Stream Id |
0x00, 0x00, 0x00, 0x00, // Status |
@@ -3793,7 +3788,7 @@ TEST_P(SpdyFramerTest, ControlFrameSizesAreValidated) { |
const size_t pad_length = |
length + framer.GetControlFrameHeaderSize() - |
(IsSpdy4() ? sizeof(kV4FrameData) : sizeof(kV3FrameData)); |
- string pad('A', pad_length); |
+ std::string pad(pad_length, 'A'); |
Peter Kasting
2014/11/25 22:51:00
This was an outright error! It worries me that th
|
TestSpdyVisitor visitor(spdy_version_); |
if (IsSpdy4()) { |
@@ -3893,7 +3888,7 @@ TEST_P(SpdyFramerTest, ReadLargeSettingsFrame) { |
size_t unframed_data = control_frame->size(); |
size_t kReadChunkSize = 5; // Read five bytes at a time. |
while (unframed_data > 0) { |
- size_t to_read = min(kReadChunkSize, unframed_data); |
+ size_t to_read = std::min(kReadChunkSize, unframed_data); |
visitor.SimulateInFramer( |
reinterpret_cast<unsigned char*>(control_frame->data() + framed_data), |
to_read); |
@@ -4216,12 +4211,12 @@ TEST_P(SpdyFramerTest, ReadCredentialFrameFollowedByAnotherFrame) { |
}; |
TestSpdyVisitor visitor(spdy_version_); |
visitor.use_compression_ = false; |
- string multiple_frame_data(reinterpret_cast<const char*>(kV3FrameData), |
- arraysize(kV3FrameData)); |
+ std::string multiple_frame_data(reinterpret_cast<const char*>(kV3FrameData), |
+ arraysize(kV3FrameData)); |
scoped_ptr<SpdyFrame> control_frame( |
framer.SerializeWindowUpdate(SpdyWindowUpdateIR(1, 2))); |
- multiple_frame_data.append(string(control_frame->data(), |
- control_frame->size())); |
+ multiple_frame_data.append(std::string(control_frame->data(), |
+ control_frame->size())); |
visitor.SimulateInFramer( |
reinterpret_cast<unsigned const char*>(multiple_frame_data.data()), |
multiple_frame_data.length()); |
@@ -4294,9 +4289,10 @@ TEST_P(SpdyFramerTest, ReadHeadersWithContinuation) { |
EXPECT_EQ(1, visitor.zero_length_control_frame_header_data_count_); |
EXPECT_EQ(0, visitor.zero_length_data_frame_count_); |
- EXPECT_THAT(visitor.headers_, ElementsAre( |
- Pair("cookie", "foo=bar; baz=bing; "), |
- Pair("name", "value"))); |
+ EXPECT_THAT(visitor.headers_, |
+ testing::ElementsAre( |
+ testing::Pair("cookie", "foo=bar; baz=bing; "), |
+ testing::Pair("name", "value"))); |
} |
TEST_P(SpdyFramerTest, ReadHeadersWithContinuationAndFin) { |
@@ -4340,9 +4336,10 @@ TEST_P(SpdyFramerTest, ReadHeadersWithContinuationAndFin) { |
EXPECT_EQ(1, visitor.zero_length_control_frame_header_data_count_); |
EXPECT_EQ(1, visitor.zero_length_data_frame_count_); |
- EXPECT_THAT(visitor.headers_, ElementsAre( |
- Pair("cookie", "foo=bar; baz=bing; "), |
- Pair("name", "value"))); |
+ EXPECT_THAT(visitor.headers_, |
+ testing::ElementsAre( |
+ testing::Pair("cookie", "foo=bar; baz=bing; "), |
+ testing::Pair("name", "value"))); |
} |
TEST_P(SpdyFramerTest, ReadPushPromiseWithContinuation) { |
@@ -4389,9 +4386,10 @@ TEST_P(SpdyFramerTest, ReadPushPromiseWithContinuation) { |
EXPECT_EQ(1, visitor.zero_length_control_frame_header_data_count_); |
EXPECT_EQ(0, visitor.zero_length_data_frame_count_); |
- EXPECT_THAT(visitor.headers_, ElementsAre( |
- Pair("cookie", "foo=bar; baz=bing; "), |
- Pair("name", "value"))); |
+ EXPECT_THAT(visitor.headers_, |
+ testing::ElementsAre( |
+ testing::Pair("cookie", "foo=bar; baz=bing; "), |
+ testing::Pair("name", "value"))); |
} |
TEST_P(SpdyFramerTest, ReadContinuationWithWrongStreamId) { |
@@ -4570,8 +4568,8 @@ TEST_P(SpdyFramerTest, EndSegmentOnHeadersFrame) { |
EXPECT_EQ(1, visitor.headers_frame_count_); |
EXPECT_EQ(1, visitor.zero_length_control_frame_header_data_count_); |
- EXPECT_THAT(visitor.headers_, ElementsAre( |
- Pair("cookie", "foo=bar"))); |
+ EXPECT_THAT(visitor.headers_, |
+ testing::ElementsAre(testing::Pair("cookie", "foo=bar"))); |
} |
TEST_P(SpdyFramerTest, ReadGarbage) { |
@@ -4860,7 +4858,8 @@ TEST_P(SpdyFramerTest, DataFrameFlagsV2V3) { |
return; |
} |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -4892,7 +4891,7 @@ TEST_P(SpdyFramerTest, DataFrameFlagsV2V3) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, DataFrameFlagsV4) { |
@@ -4903,7 +4902,8 @@ TEST_P(SpdyFramerTest, DataFrameFlagsV4) { |
uint8 valid_data_flags = DATA_FLAG_FIN | DATA_FLAG_END_SEGMENT | |
DATA_FLAG_PADDED; |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -4940,7 +4940,7 @@ TEST_P(SpdyFramerTest, DataFrameFlagsV4) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, SynStreamFrameFlags) { |
@@ -4948,7 +4948,8 @@ TEST_P(SpdyFramerTest, SynStreamFrameFlags) { |
// SYN_STREAM not supported in SPDY>3 |
return; |
} |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -4964,8 +4965,7 @@ TEST_P(SpdyFramerTest, SynStreamFrameFlags) { |
syn_stream.set_priority(1); |
syn_stream.SetHeader("foo", "bar"); |
scoped_ptr<SpdyFrame> frame(framer.SerializeSynStream(syn_stream)); |
- int set_flags = flags; |
- SetFrameFlags(frame.get(), set_flags, spdy_version_); |
+ SetFrameFlags(frame.get(), flags, spdy_version_); |
if (flags & ~(CONTROL_FLAG_FIN | CONTROL_FLAG_UNIDIRECTIONAL)) { |
EXPECT_CALL(visitor, OnError(_)); |
@@ -4994,7 +4994,7 @@ TEST_P(SpdyFramerTest, SynStreamFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, SynReplyFrameFlags) { |
@@ -5002,7 +5002,8 @@ TEST_P(SpdyFramerTest, SynReplyFrameFlags) { |
// SYN_REPLY not supported in SPDY>3 |
return; |
} |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5036,11 +5037,12 @@ TEST_P(SpdyFramerTest, SynReplyFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, RstStreamFrameFlags) { |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5068,12 +5070,13 @@ TEST_P(SpdyFramerTest, RstStreamFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, SettingsFrameFlagsOldFormat) { |
if (spdy_version_ > SPDY3) { return; } |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5109,12 +5112,13 @@ TEST_P(SpdyFramerTest, SettingsFrameFlagsOldFormat) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, SettingsFrameFlags) { |
if (spdy_version_ <= SPDY3) { return; } |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5151,11 +5155,12 @@ TEST_P(SpdyFramerTest, SettingsFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, GoawayFrameFlags) { |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5183,11 +5188,12 @@ TEST_P(SpdyFramerTest, GoawayFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, HeadersFrameFlags) { |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5201,7 +5207,7 @@ TEST_P(SpdyFramerTest, HeadersFrameFlags) { |
} |
headers_ir.SetHeader("foo", "bar"); |
scoped_ptr<SpdyFrame> frame(framer.SerializeHeaders(headers_ir)); |
- int set_flags = flags; |
+ uint8 set_flags = flags; |
if (IsSpdy4()) { |
// TODO(jgraettinger): Add padding to SpdyHeadersIR, |
// and implement framing. |
@@ -5266,11 +5272,12 @@ TEST_P(SpdyFramerTest, HeadersFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, PingFrameFlags) { |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5301,11 +5308,12 @@ TEST_P(SpdyFramerTest, PingFrameFlags) { |
framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, WindowUpdateFrameFlags) { |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5333,7 +5341,7 @@ TEST_P(SpdyFramerTest, WindowUpdateFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, PushPromiseFrameFlags) { |
@@ -5341,7 +5349,8 @@ TEST_P(SpdyFramerTest, PushPromiseFrameFlags) { |
return; |
} |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<net::test::MockSpdyFramerVisitor> visitor; |
@@ -5358,8 +5367,7 @@ TEST_P(SpdyFramerTest, PushPromiseFrameFlags) { |
framer.SerializePushPromise(push_promise)); |
// TODO(jgraettinger): Add padding to SpdyPushPromiseIR, |
// and implement framing. |
- int set_flags = flags & ~HEADERS_FLAG_PADDED; |
- SetFrameFlags(frame.get(), set_flags, spdy_version_); |
+ SetFrameFlags(frame.get(), flags & ~HEADERS_FLAG_PADDED, spdy_version_); |
if (flags & ~(PUSH_PROMISE_FLAG_END_PUSH_PROMISE | HEADERS_FLAG_PADDED)) { |
EXPECT_CALL(visitor, OnError(_)); |
@@ -5382,7 +5390,7 @@ TEST_P(SpdyFramerTest, PushPromiseFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
TEST_P(SpdyFramerTest, ContinuationFrameFlags) { |
@@ -5390,7 +5398,8 @@ TEST_P(SpdyFramerTest, ContinuationFrameFlags) { |
return; |
} |
- for (int flags = 0; flags < 256; ++flags) { |
+ uint8 flags = 0; |
+ do { |
SCOPED_TRACE(testing::Message() << "Flags " << flags); |
testing::StrictMock<test::MockSpdyFramerVisitor> visitor; |
@@ -5438,7 +5447,7 @@ TEST_P(SpdyFramerTest, ContinuationFrameFlags) { |
EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code()) |
<< SpdyFramer::ErrorCodeToString(framer.error_code()); |
} |
- } |
+ } while (++flags != 0); |
} |
// TODO(mlavan): Add TEST_P(SpdyFramerTest, AltSvcFrameFlags) |
@@ -5842,7 +5851,7 @@ TEST_P(SpdyFramerTest, ReadChunkedAltSvcFrame) { |
size_t unframed_data = control_frame->size(); |
size_t kReadChunkSize = 5; // Read five bytes at a time. |
while (unframed_data > 0) { |
- size_t to_read = min(kReadChunkSize, unframed_data); |
+ size_t to_read = std::min(kReadChunkSize, unframed_data); |
visitor.SimulateInFramer( |
reinterpret_cast<unsigned char*>(control_frame->data() + framed_data), |
to_read); |