| OLD | NEW |
| 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 <cstddef> | 5 #include <cstddef> |
| 6 #include <string> | 6 #include <string> |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 SpdyStream stream(SPDY_PUSH_STREAM, | 192 SpdyStream stream(SPDY_PUSH_STREAM, |
| 193 spdy_session, | 193 spdy_session, |
| 194 GURL(), | 194 GURL(), |
| 195 DEFAULT_PRIORITY, | 195 DEFAULT_PRIORITY, |
| 196 kSpdyStreamInitialWindowSize, | 196 kSpdyStreamInitialWindowSize, |
| 197 kSpdyStreamInitialWindowSize, | 197 kSpdyStreamInitialWindowSize, |
| 198 BoundNetLog()); | 198 BoundNetLog()); |
| 199 stream.set_stream_id(2); | 199 stream.set_stream_id(2); |
| 200 EXPECT_FALSE(stream.HasUrlFromHeaders()); | 200 EXPECT_FALSE(stream.HasUrlFromHeaders()); |
| 201 | 201 |
| 202 // Set a couple of headers. | 202 // Set required request headers. |
| 203 SpdyHeaderBlock request_headers; |
| 204 spdy_util_.AddUrlToHeaderBlock(kStreamUrl, &request_headers); |
| 205 stream.OnPushPromiseHeadersReceived(request_headers); |
| 206 |
| 207 // Send some basic response headers. |
| 203 SpdyHeaderBlock response; | 208 SpdyHeaderBlock response; |
| 204 spdy_util_.AddUrlToHeaderBlock(kStreamUrl, &response); | 209 response[spdy_util_.GetStatusKey()] = "200"; |
| 210 response[spdy_util_.GetVersionKey()] = "OK"; |
| 205 stream.OnInitialResponseHeadersReceived( | 211 stream.OnInitialResponseHeadersReceived( |
| 206 response, base::Time::Now(), base::TimeTicks::Now()); | 212 response, base::Time::Now(), base::TimeTicks::Now()); |
| 207 | 213 |
| 208 // Send some basic headers. | 214 // And some more headers. |
| 215 // TODO(baranovich): not valid for HTTP 2. |
| 209 SpdyHeaderBlock headers; | 216 SpdyHeaderBlock headers; |
| 210 headers[spdy_util_.GetStatusKey()] = "200"; | 217 headers["alpha"] = "beta"; |
| 211 headers[spdy_util_.GetVersionKey()] = "OK"; | |
| 212 stream.OnAdditionalResponseHeadersReceived(headers); | 218 stream.OnAdditionalResponseHeadersReceived(headers); |
| 213 | 219 |
| 214 EXPECT_TRUE(stream.HasUrlFromHeaders()); | 220 EXPECT_TRUE(stream.HasUrlFromHeaders()); |
| 215 EXPECT_EQ(kStreamUrl, stream.GetUrlFromHeaders().spec()); | 221 EXPECT_EQ(kStreamUrl, stream.GetUrlFromHeaders().spec()); |
| 216 | 222 |
| 217 StreamDelegateDoNothing delegate(stream.GetWeakPtr()); | 223 StreamDelegateDoNothing delegate(stream.GetWeakPtr()); |
| 218 stream.SetDelegate(&delegate); | 224 stream.SetDelegate(&delegate); |
| 219 | 225 |
| 220 base::MessageLoop::current()->RunUntilIdle(); | 226 base::MessageLoop::current()->RunUntilIdle(); |
| 221 | 227 |
| 222 EXPECT_EQ("200", delegate.GetResponseHeaderValue(spdy_util_.GetStatusKey())); | 228 EXPECT_EQ("200", delegate.GetResponseHeaderValue(spdy_util_.GetStatusKey())); |
| 229 EXPECT_EQ("beta", delegate.GetResponseHeaderValue("alpha")); |
| 223 | 230 |
| 224 EXPECT_TRUE(spdy_session == NULL); | 231 EXPECT_TRUE(spdy_session == NULL); |
| 225 } | 232 } |
| 226 | 233 |
| 227 TEST_P(SpdyStreamTest, StreamError) { | 234 TEST_P(SpdyStreamTest, StreamError) { |
| 228 GURL url(kStreamUrl); | 235 GURL url(kStreamUrl); |
| 229 | 236 |
| 230 session_ = SpdySessionDependencies::SpdyCreateSession(&session_deps_); | 237 session_ = SpdySessionDependencies::SpdyCreateSession(&session_deps_); |
| 231 | 238 |
| 232 scoped_ptr<SpdyFrame> req( | 239 scoped_ptr<SpdyFrame> req( |
| (...skipping 812 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1045 data.RunFor(1); // FIN | 1052 data.RunFor(1); // FIN |
| 1046 | 1053 |
| 1047 EXPECT_EQ(ERR_CONNECTION_CLOSED, delegate.WaitForClose()); | 1054 EXPECT_EQ(ERR_CONNECTION_CLOSED, delegate.WaitForClose()); |
| 1048 } | 1055 } |
| 1049 | 1056 |
| 1050 } // namespace | 1057 } // namespace |
| 1051 | 1058 |
| 1052 } // namespace test | 1059 } // namespace test |
| 1053 | 1060 |
| 1054 } // namespace net | 1061 } // namespace net |
| OLD | NEW |