Index: chrome/browser/predictors/resource_prefetch_predictor_test_util.cc |
diff --git a/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc b/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc |
index a8a3762f32c0a6e315faa55c3f6776b79c8abf1a..21fce27b21d2af7d35df71c52cc48ff0315aaca6 100644 |
--- a/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc |
+++ b/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/predictors/resource_prefetch_predictor_test_util.h" |
#include <cmath> |
+#include "net/http/http_response_headers.h" |
namespace { |
@@ -192,6 +193,73 @@ void PopulateTestConfig(LoadingPredictorConfig* config, bool small_db) { |
config->mode = LoadingPredictorConfig::LEARNING; |
} |
+scoped_refptr<net::HttpResponseHeaders> MakeResponseHeaders( |
+ const char* headers) { |
+ return make_scoped_refptr(new net::HttpResponseHeaders( |
+ net::HttpUtil::AssembleRawHeaders(headers, strlen(headers)))); |
+} |
+ |
+MockURLRequestJob::MockURLRequestJob(net::URLRequest* request, |
+ const net::HttpResponseInfo& response_info, |
+ const std::string& mime_type) |
+ : net::URLRequestJob(request, nullptr), |
+ response_info_(response_info), |
+ mime_type_(mime_type) {} |
+ |
+bool MockURLRequestJob::GetMimeType(std::string* mime_type) const { |
+ *mime_type = mime_type_; |
+ return true; |
+} |
+ |
+void MockURLRequestJob::Start() { |
+ NotifyHeadersComplete(); |
+} |
+void MockURLRequestJob::GetResponseInfo(net::HttpResponseInfo* info) { |
+ *info = response_info_; |
+} |
+ |
+MockURLRequestJobFactory::MockURLRequestJobFactory() {} |
+MockURLRequestJobFactory::~MockURLRequestJobFactory() {} |
+ |
+net::URLRequestJob* MockURLRequestJobFactory::MaybeCreateJobWithProtocolHandler( |
+ const std::string& scheme, |
+ net::URLRequest* request, |
+ net::NetworkDelegate* network_delegate) const { |
+ return new MockURLRequestJob(request, response_info_, mime_type_); |
+} |
+ |
+net::URLRequestJob* MockURLRequestJobFactory::MaybeInterceptRedirect( |
+ net::URLRequest* request, |
+ net::NetworkDelegate* network_delegate, |
+ const GURL& location) const { |
+ return nullptr; |
+} |
+ |
+net::URLRequestJob* MockURLRequestJobFactory::MaybeInterceptResponse( |
+ net::URLRequest* request, |
+ net::NetworkDelegate* network_delegate) const { |
+ return nullptr; |
+} |
+ |
+bool MockURLRequestJobFactory::IsHandledProtocol( |
+ const std::string& scheme) const { |
+ return true; |
+} |
+ |
+bool MockURLRequestJobFactory::IsSafeRedirectTarget( |
+ const GURL& location) const { |
+ return true; |
+} |
+ |
+void MockURLRequestJobFactory::set_response_info( |
+ const net::HttpResponseInfo& response_info) { |
+ response_info_ = response_info; |
+} |
+ |
+void MockURLRequestJobFactory::set_mime_type(const std::string& mime_type) { |
+ mime_type_ = mime_type; |
+} |
+ |
std::ostream& operator<<(std::ostream& os, const PrefetchData& data) { |
os << "[" << data.primary_key() << "," << data.last_visit_time() << "]" |
<< std::endl; |