Index: net/url_request/test_url_fetcher_factory.cc |
diff --git a/net/url_request/test_url_fetcher_factory.cc b/net/url_request/test_url_fetcher_factory.cc |
index 62fbb074691064bc01e45a6b3d6c29c370f0de47..c95e07d4b3f18187cc229ab748da37b2d31c0bfa 100644 |
--- a/net/url_request/test_url_fetcher_factory.cc |
+++ b/net/url_request/test_url_fetcher_factory.cc |
@@ -11,6 +11,7 @@ |
#include "base/memory/weak_ptr.h" |
#include "base/message_loop/message_loop.h" |
#include "net/base/host_port_pair.h" |
+#include "net/base/net_errors.h" |
#include "net/http/http_response_headers.h" |
#include "net/url_request/url_fetcher_delegate.h" |
#include "net/url_request/url_fetcher_impl.h" |
@@ -283,14 +284,26 @@ void TestURLFetcherFactory::SetDelegateForTests( |
FakeURLFetcher::FakeURLFetcher(const GURL& url, |
URLFetcherDelegate* d, |
const std::string& response_data, |
- HttpStatusCode response_code) |
+ HttpStatusCode response_code, |
+ URLRequestStatus::Status status) |
: TestURLFetcher(0, url, d), |
weak_factory_(this) { |
- set_status(URLRequestStatus( |
- // Status is FAILED for HTTP/5xx server errors, and SUCCESS otherwise. |
- response_code >= HTTP_INTERNAL_SERVER_ERROR ? URLRequestStatus::FAILED : |
- URLRequestStatus::SUCCESS, |
- 0)); |
+ Error error = OK; |
+ switch(status) { |
+ case URLRequestStatus::SUCCESS: |
+ // |error| is initialized to OK. |
+ break; |
+ case URLRequestStatus::IO_PENDING: |
+ error = ERR_IO_PENDING; |
+ break; |
+ case URLRequestStatus::CANCELED: |
+ error = ERR_ABORTED; |
+ break; |
+ case URLRequestStatus::FAILED: |
+ error = ERR_FAILED; |
+ break; |
+ } |
+ set_status(URLRequestStatus(status, error)); |
set_response_code(response_code); |
SetResponseString(response_data); |
} |
@@ -330,11 +343,10 @@ scoped_ptr<FakeURLFetcher> FakeURLFetcherFactory::DefaultFakeURLFetcherCreator( |
const GURL& url, |
URLFetcherDelegate* delegate, |
const std::string& response_data, |
- HttpStatusCode response_code) { |
- return scoped_ptr<FakeURLFetcher>(new FakeURLFetcher(url, |
- delegate, |
- response_data, |
- response_code)); |
+ HttpStatusCode response_code, |
+ URLRequestStatus::Status status) { |
+ return scoped_ptr<FakeURLFetcher>( |
+ new FakeURLFetcher(url, delegate, response_data, response_code, status)); |
} |
FakeURLFetcherFactory::~FakeURLFetcherFactory() {} |
@@ -356,7 +368,8 @@ URLFetcher* FakeURLFetcherFactory::CreateURLFetcher( |
} |
scoped_ptr<FakeURLFetcher> fake_fetcher = |
- creator_.Run(url, d, it->second.first, it->second.second); |
+ creator_.Run(url, d, it->second.response_data, |
+ it->second.response_code, it->second.status); |
// TODO: Make URLFetcherFactory::CreateURLFetcher return a scoped_ptr |
return fake_fetcher.release(); |
} |
@@ -364,9 +377,14 @@ URLFetcher* FakeURLFetcherFactory::CreateURLFetcher( |
void FakeURLFetcherFactory::SetFakeResponse( |
const GURL& url, |
const std::string& response_data, |
- HttpStatusCode response_code) { |
+ HttpStatusCode response_code, |
+ URLRequestStatus::Status status) { |
// Overwrite existing URL if it already exists. |
- fake_responses_[url] = std::make_pair(response_data, response_code); |
+ FakeURLResponse response; |
+ response.response_data = response_data; |
+ response.response_code = response_code; |
+ response.status = status; |
+ fake_responses_[url] = response; |
} |
void FakeURLFetcherFactory::ClearFakeResponses() { |