| Index: net/http/http_stream_parser_unittest.cc
|
| diff --git a/net/http/http_stream_parser_unittest.cc b/net/http/http_stream_parser_unittest.cc
|
| index f72cd5f7d5e1fffa05fae5947660cb431adad9b6..911f846c5779c870601a1bbd652abd0757cd732b 100644
|
| --- a/net/http/http_stream_parser_unittest.cc
|
| +++ b/net/http/http_stream_parser_unittest.cc
|
| @@ -1127,21 +1127,36 @@ class SimpleGetRunner {
|
| int sequence_number_;
|
| };
|
|
|
| -// Test that HTTP/0.9 response size is correctly calculated.
|
| +// Test that HTTP/0.9 response correctly results in an error.
|
| TEST(HttpStreamParser, ReceivedBytesNoHeaders) {
|
| - std::string response = "hello\r\nworld\r\n";
|
| + MockWrite writes[] = {
|
| + MockWrite(SYNCHRONOUS, 0, "GET / HTTP/1.1\r\n\r\n"),
|
| + };
|
|
|
| - SimpleGetRunner get_runner;
|
| - get_runner.AddRead(response);
|
| - get_runner.SetupParserAndSendRequest();
|
| - get_runner.ReadHeaders();
|
| - EXPECT_EQ(0, get_runner.parser()->received_bytes());
|
| - int response_size = response.size();
|
| - int read_lengths[] = {response_size, 0};
|
| - get_runner.ReadBody(response_size, read_lengths);
|
| - EXPECT_EQ(response_size, get_runner.parser()->received_bytes());
|
| - EXPECT_EQ(HttpResponseInfo::CONNECTION_INFO_HTTP0_9,
|
| - get_runner.response_info()->connection_info);
|
| + MockRead reads[] = {
|
| + MockRead(SYNCHRONOUS, 1, "hello\r\nworld\r\n"),
|
| + MockRead(SYNCHRONOUS, OK, 2),
|
| + };
|
| +
|
| + SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes));
|
| + std::unique_ptr<ClientSocketHandle> socket_handle =
|
| + CreateConnectedSocketHandle(&data);
|
| +
|
| + HttpRequestInfo request;
|
| + request.method = "GET";
|
| + request.url = GURL("http://localhost");
|
| +
|
| + HttpStreamParser parser(socket_handle.get(), &request, new GrowableIOBuffer(),
|
| + BoundNetLog());
|
| +
|
| + HttpRequestHeaders headers;
|
| + HttpResponseInfo response;
|
| + TestCompletionCallback callback;
|
| + int result = parser.SendRequest("GET / HTTP/1.1\r\n", headers, &response,
|
| + callback.callback());
|
| + EXPECT_THAT(callback.GetResult(result), IsOk());
|
| + result = parser.ReadResponseHeaders(callback.callback());
|
| + EXPECT_THAT(callback.GetResult(result), IsError(ERR_INVALID_HTTP_RESPONSE));
|
| }
|
|
|
| // Test basic case where there is no keep-alive or extra data from the socket,
|
|
|