| Index: net/test/embedded_test_server/default_handlers.cc
|
| diff --git a/net/test/embedded_test_server/default_handlers.cc b/net/test/embedded_test_server/default_handlers.cc
|
| index 4be6b5dc1f78e363195c0c7d3fb74b809236d4bd..fd3042123827cac7f2820799b15aa215bcdf32f3 100644
|
| --- a/net/test/embedded_test_server/default_handlers.cc
|
| +++ b/net/test/embedded_test_server/default_handlers.cc
|
| @@ -12,6 +12,8 @@
|
| #include <utility>
|
|
|
| #include "base/base64.h"
|
| +#include "base/bind.h"
|
| +#include "base/bind_helpers.h"
|
| #include "base/files/file_path.h"
|
| #include "base/files/file_util.h"
|
| #include "base/format_macros.h"
|
| @@ -600,7 +602,7 @@ std::unique_ptr<HttpResponse> HandleSlowServer(const HttpRequest& request) {
|
| }
|
|
|
| // Never returns a response.
|
| -class HungHttpResponse : public BasicHttpResponse {
|
| +class HungHttpResponse : public HttpResponse {
|
| public:
|
| HungHttpResponse() {}
|
|
|
| @@ -617,6 +619,27 @@ std::unique_ptr<HttpResponse> HandleHungResponse(const HttpRequest& request) {
|
| return base::MakeUnique<HungHttpResponse>();
|
| }
|
|
|
| +// Return headers, then hangs.
|
| +class HungAfterHeadersHttpResponse : public HttpResponse {
|
| + public:
|
| + HungAfterHeadersHttpResponse() {}
|
| +
|
| + void SendResponse(const SendBytesCallback& send,
|
| + const SendCompleteCallback& done) override {
|
| + send.Run("HTTP/1.1 OK\r\n\r\n", base::Bind(&base::DoNothing));
|
| + }
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(HungAfterHeadersHttpResponse);
|
| +};
|
| +
|
| +// /hung-after-headers
|
| +// Never returns a response.
|
| +std::unique_ptr<HttpResponse> HandleHungAfterHeadersResponse(
|
| + const HttpRequest& request) {
|
| + return base::MakeUnique<HungAfterHeadersHttpResponse>();
|
| +}
|
| +
|
| } // anonymous namespace
|
|
|
| #define PREFIXED_HANDLER(prefix, handler) \
|
| @@ -662,6 +685,8 @@ void RegisterDefaultHandlers(EmbeddedTestServer* server) {
|
| server->RegisterDefaultHandler(PREFIXED_HANDLER("/slow", &HandleSlowServer));
|
| server->RegisterDefaultHandler(
|
| PREFIXED_HANDLER("/hung", &HandleHungResponse));
|
| + server->RegisterDefaultHandler(
|
| + PREFIXED_HANDLER("/hung-after-headers", &HandleHungAfterHeadersResponse));
|
|
|
| // TODO(svaldez): HandleDownload
|
| // TODO(svaldez): HandleDownloadFinish
|
|
|