| Index: net/spdy/spdy_framer_test.cc
|
| diff --git a/net/spdy/spdy_framer_test.cc b/net/spdy/spdy_framer_test.cc
|
| index 6205bb8baefd901c9782f7fa9576d4ad6f88fdc1..48bbd8f3ba038312c042e7daf45e0037018b550a 100644
|
| --- a/net/spdy/spdy_framer_test.cc
|
| +++ b/net/spdy/spdy_framer_test.cc
|
| @@ -1074,7 +1074,7 @@ TEST_P(SpdyFramerTest, Basic) {
|
| 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #1
|
| 0x00, 0x00, 0x00, 0x08,
|
| 0x00, 0x00, 0x00, 0x01,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL
|
|
|
| 0x00, 0x00, 0x00, 0x03, // DATA on Stream #3
|
| 0x00, 0x00, 0x00, 0x00,
|
| @@ -1082,7 +1082,7 @@ TEST_P(SpdyFramerTest, Basic) {
|
| 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #3
|
| 0x00, 0x00, 0x00, 0x08,
|
| 0x00, 0x00, 0x00, 0x03,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL
|
| };
|
|
|
| const unsigned char kV3Input[] = {
|
| @@ -1133,7 +1133,7 @@ TEST_P(SpdyFramerTest, Basic) {
|
| 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #1
|
| 0x00, 0x00, 0x00, 0x08,
|
| 0x00, 0x00, 0x00, 0x01,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL
|
|
|
| 0x00, 0x00, 0x00, 0x03, // DATA on Stream #3
|
| 0x00, 0x00, 0x00, 0x00,
|
| @@ -1141,7 +1141,7 @@ TEST_P(SpdyFramerTest, Basic) {
|
| 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #3
|
| 0x00, 0x00, 0x00, 0x08,
|
| 0x00, 0x00, 0x00, 0x03,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL
|
| };
|
|
|
| // SYN_STREAM doesn't exist in SPDY4, so instead we send
|
| @@ -1178,14 +1178,14 @@ TEST_P(SpdyFramerTest, Basic) {
|
|
|
| 0x00, 0x04, 0x03, 0x00, // RST_STREAM on Stream #1
|
| 0x00, 0x00, 0x00, 0x01,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x08, // RST_STREAM_CANCEL
|
|
|
| 0x00, 0x00, 0x00, 0x00, // DATA on Stream #3
|
| 0x00, 0x00, 0x00, 0x03,
|
|
|
| 0x00, 0x0f, 0x03, 0x00, // RST_STREAM on Stream #3
|
| 0x00, 0x00, 0x00, 0x03,
|
| - 0x00, 0x00, 0x00, 0x00,
|
| + 0x00, 0x00, 0x00, 0x08, // RST_STREAM_CANCEL
|
| 0x52, 0x45, 0x53, 0x45, // opaque data
|
| 0x54, 0x53, 0x54, 0x52,
|
| 0x45, 0x41, 0x4d,
|
| @@ -4892,31 +4892,42 @@ TEST_P(SpdyFramerTest, RstStreamStatusBounds) {
|
| SpdyFramer framer(spdy_version_);
|
| framer.set_visitor(&visitor);
|
|
|
| - EXPECT_CALL(visitor, OnRstStream(1, RST_STREAM_INVALID));
|
| if (IsSpdy4()) {
|
| + EXPECT_CALL(visitor, OnError(_));
|
| framer.ProcessInput(reinterpret_cast<const char*>(kV4RstStreamInvalid),
|
| arraysize(kV4RstStreamInvalid));
|
| + EXPECT_EQ(SpdyFramer::SPDY_ERROR, framer.state());
|
| + EXPECT_EQ(SpdyFramer::SPDY_INVALID_CONTROL_FRAME, framer.error_code())
|
| + << SpdyFramer::ErrorCodeToString(framer.error_code());
|
| } else {
|
| + EXPECT_CALL(visitor, OnRstStream(1, RST_STREAM_INVALID));
|
| framer.ProcessInput(reinterpret_cast<const char*>(kV3RstStreamInvalid),
|
| arraysize(kV3RstStreamInvalid));
|
| - }
|
| - EXPECT_EQ(SpdyFramer::SPDY_RESET, framer.state());
|
| - EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code())
|
| + EXPECT_EQ(SpdyFramer::SPDY_RESET, framer.state());
|
| + EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code())
|
| << SpdyFramer::ErrorCodeToString(framer.error_code());
|
| + }
|
| +
|
| +
|
| + framer.Reset();
|
|
|
| - EXPECT_CALL(visitor, OnRstStream(1, RST_STREAM_INVALID));
|
| if (IsSpdy4()) {
|
| + EXPECT_CALL(visitor, OnError(_));
|
| framer.ProcessInput(
|
| reinterpret_cast<const char*>(kV4RstStreamNumStatusCodes),
|
| arraysize(kV4RstStreamNumStatusCodes));
|
| + EXPECT_EQ(SpdyFramer::SPDY_ERROR, framer.state());
|
| + EXPECT_EQ(SpdyFramer::SPDY_INVALID_CONTROL_FRAME, framer.error_code())
|
| + << SpdyFramer::ErrorCodeToString(framer.error_code());
|
| } else {
|
| + EXPECT_CALL(visitor, OnRstStream(1, RST_STREAM_INVALID));
|
| framer.ProcessInput(
|
| reinterpret_cast<const char*>(kV3RstStreamNumStatusCodes),
|
| arraysize(kV3RstStreamNumStatusCodes));
|
| - }
|
| - EXPECT_EQ(SpdyFramer::SPDY_RESET, framer.state());
|
| - EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code())
|
| + EXPECT_EQ(SpdyFramer::SPDY_RESET, framer.state());
|
| + EXPECT_EQ(SpdyFramer::SPDY_NO_ERROR, framer.error_code())
|
| << SpdyFramer::ErrorCodeToString(framer.error_code());
|
| + }
|
| }
|
|
|
| // Tests handling of a GOAWAY frame with out-of-bounds stream ID.
|
|
|