Chromium Code Reviews| Index: components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options_unittest.cc |
| diff --git a/components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options_unittest.cc b/components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options_unittest.cc |
| index 53741a9b37dc150877d2e67d386f8899fb8f5a18..714a10758a8f6470ddb768112627d813627f55a5 100644 |
| --- a/components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options_unittest.cc |
| +++ b/components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options_unittest.cc |
| @@ -4,6 +4,9 @@ |
| #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_request_options.h" |
| +#include <string> |
| +#include <vector> |
| + |
| #include "base/command_line.h" |
| #include "base/md5.h" |
| #include "base/memory/scoped_ptr.h" |
| @@ -16,7 +19,10 @@ |
| #include "components/data_reduction_proxy/core/common/data_reduction_proxy_switches.h" |
| #include "net/base/auth.h" |
| #include "net/base/host_port_pair.h" |
| +#include "net/base/load_flags.h" |
| #include "net/proxy/proxy_server.h" |
| +#include "net/url_request/url_request.h" |
| +#include "net/url_request/url_request_context.h" |
| #include "testing/gmock/include/gmock/gmock.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| @@ -138,6 +144,13 @@ class DataReductionProxyRequestOptionsTest : public testing::Test { |
| request_options_->Init(); |
| } |
| + void CreateRequest(int load_flags) { |
| + net::URLRequestContext* context = |
| + test_context_->request_context_getter()->GetURLRequestContext(); |
| + request_ = context->CreateRequest(GURL(), net::DEFAULT_PRIORITY, nullptr); |
|
bengr
2015/05/15 21:23:21
#include gurl.h
megjablon
2015/05/15 22:25:28
Done.
|
| + request_->SetLoadFlags(load_flags); |
| + } |
| + |
| TestDataReductionProxyParams* params() { |
| return test_context_->config()->test_params(); |
| } |
| @@ -151,9 +164,10 @@ class DataReductionProxyRequestOptionsTest : public testing::Test { |
| test_context_->RunUntilIdle(); |
| net::HttpRequestHeaders headers; |
| request_options_->MaybeAddRequestHeader( |
| - NULL, |
| - proxy_uri.empty() ? net::ProxyServer() : |
| - net::ProxyServer::FromURI(proxy_uri, net::ProxyServer::SCHEME_HTTP), |
| + request_ ? request_.get() : nullptr, |
|
bengr
2015/05/15 21:23:21
Why can't this just be request_?
megjablon
2015/05/15 22:25:28
needs a pointer go request_.get() should be fine
|
| + proxy_uri.empty() ? net::ProxyServer() |
| + : net::ProxyServer::FromURI( |
| + proxy_uri, net::ProxyServer::SCHEME_HTTP), |
| &headers); |
| if (expected_header.empty()) { |
| EXPECT_FALSE(headers.HasHeader(kChromeProxyHeader)); |
| @@ -168,6 +182,7 @@ class DataReductionProxyRequestOptionsTest : public testing::Test { |
| base::MessageLoopForIO message_loop_; |
| scoped_ptr<TestDataReductionProxyRequestOptions> request_options_; |
| scoped_ptr<DataReductionProxyTestContext> test_context_; |
| + scoped_ptr<net::URLRequest> request_; |
| }; |
| TEST_F(DataReductionProxyRequestOptionsTest, AuthHashForSalt) { |
| @@ -287,6 +302,30 @@ TEST_F(DataReductionProxyRequestOptionsTest, LoFiOn) { |
| VerifyExpectedHeader(params()->DefaultOrigin(), expected_header); |
| } |
| +TEST_F(DataReductionProxyRequestOptionsTest, LoFiReloadSingleImage) { |
| + // Add the LoFi command line switch. |
| + base::CommandLine::ForCurrentProcess()->AppendSwitch( |
| + data_reduction_proxy::switches::kEnableDataReductionProxyLoFi); |
| + |
| + std::string expected_header; |
| + SetHeaderExpectations(kExpectedSession, kExpectedCredentials, std::string(), |
| + kClientStr, std::string(), std::string(), std::string(), |
| + std::vector<std::string>(), &expected_header); |
| + |
| + CreateRequest(net::LOAD_BYPASS_CACHE); |
| + CreateRequestOptions(kBogusVersion); |
| + VerifyExpectedHeader(params()->DefaultOrigin(), expected_header); |
| + |
| + // Check that LoFi turns back on. |
| + SetHeaderExpectations(kExpectedSession, kExpectedCredentials, std::string(), |
| + kClientStr, std::string(), std::string(), "low", |
| + std::vector<std::string>(), &expected_header); |
| + |
| + CreateRequest(net::LOAD_NORMAL); |
| + CreateRequestOptions(kBogusVersion); |
| + VerifyExpectedHeader(params()->DefaultOrigin(), expected_header); |
| +} |
| + |
| TEST_F(DataReductionProxyRequestOptionsTest, SecureSession) { |
| std::string expected_header; |
| SetHeaderExpectations(std::string(), std::string(), kSecureSession, |