Index: components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc |
diff --git a/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc b/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc |
index 053b0bcde26d9b861fc3f4e7fd025b37dc17c6ab..ef01e0014648c3e6410d0f9b77e202812855f695 100644 |
--- a/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc |
+++ b/components/data_reduction_proxy/core/browser/data_reduction_proxy_settings_test_utils.cc |
@@ -12,6 +12,7 @@ |
#include "base/strings/string_number_conversions.h" |
#include "base/test/test_simple_task_runner.h" |
#include "base/time/time.h" |
+#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_config_test_utils.h" |
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_configurator_test_utils.h" |
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_prefs.h" |
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_statistics_prefs.h" |
@@ -26,29 +27,12 @@ using testing::Return; |
namespace { |
-const char kProbeURLWithOKResponse[] = "http://ok.org/"; |
- |
const char kProxy[] = "proxy"; |
} // namespace |
namespace data_reduction_proxy { |
-namespace { |
- |
-ProbeURLFetchResult FetchResult(bool enabled, bool success) { |
- if (enabled) { |
- if (success) |
- return SUCCEEDED_PROXY_ALREADY_ENABLED; |
- return FAILED_PROXY_DISABLED; |
- } |
- if (success) |
- return SUCCEEDED_PROXY_ENABLED; |
- return FAILED_PROXY_ALREADY_DISABLED; |
-} |
- |
-} // namespace |
- |
DataReductionProxySettingsTestBase::DataReductionProxySettingsTestBase() |
: testing::Test() { |
} |
@@ -76,6 +60,16 @@ void DataReductionProxySettingsTestBase::SetUp() { |
event_store_.reset(new DataReductionProxyEventStore( |
scoped_refptr<base::TestSimpleTaskRunner>( |
new base::TestSimpleTaskRunner()))); |
+ configurator_.reset(new TestDataReductionProxyConfigurator( |
+ scoped_refptr<base::TestSimpleTaskRunner>( |
+ new base::TestSimpleTaskRunner()), |
+ &net_log_, event_store_.get())); |
+ config_.reset(new MockDataReductionProxyConfig( |
+ scoped_refptr<base::TestSimpleTaskRunner>( |
+ new base::TestSimpleTaskRunner()), |
+ &net_log_, |
+ configurator_.get(), |
+ event_store_.get())); |
//AddProxyToCommandLine(); |
ResetSettings(true, true, false, true, false); |
@@ -93,13 +87,6 @@ void DataReductionProxySettingsTestBase::SetUp() { |
statistics_prefs_->SetInt64( |
prefs::kDailyHttpContentLengthLastUpdateDate, |
last_update_time_.ToInternalValue()); |
- expected_params_.reset(new TestDataReductionProxyParams( |
- DataReductionProxyParams::kAllowed | |
- DataReductionProxyParams::kFallbackAllowed | |
- DataReductionProxyParams::kPromoAllowed, |
- TestDataReductionProxyParams::HAS_EVERYTHING & |
- ~TestDataReductionProxyParams::HAS_DEV_ORIGIN & |
- ~TestDataReductionProxyParams::HAS_DEV_FALLBACK_ORIGIN)); |
} |
template <class C> |
@@ -120,20 +107,19 @@ void DataReductionProxySettingsTestBase::ResetSettings(bool allowed, |
if (holdback) |
flags |= DataReductionProxyParams::kHoldback; |
MockDataReductionProxySettings<C>* settings = |
- new MockDataReductionProxySettings<C>(flags); |
+ new MockDataReductionProxySettings<C>(); |
+ MockDataReductionProxyConfig* config = |
+ static_cast<MockDataReductionProxyConfig*>(config_.get()); |
+ settings->config_ = config; |
+ config->ResetParamsForTest(flags); |
+ settings->UpdateConfigValues(); |
EXPECT_CALL(*settings, GetOriginalProfilePrefs()) |
.Times(AnyNumber()) |
.WillRepeatedly(Return(&pref_service_)); |
EXPECT_CALL(*settings, GetLocalStatePrefs()) |
.Times(AnyNumber()) |
.WillRepeatedly(Return(&pref_service_)); |
- EXPECT_CALL(*settings, GetURLFetcherForAvailabilityCheck()).Times(0); |
- EXPECT_CALL(*settings, LogProxyState(_, _, _)).Times(0); |
settings_.reset(settings); |
- configurator_.reset(new TestDataReductionProxyConfigurator( |
- scoped_refptr<base::TestSimpleTaskRunner>( |
- new base::TestSimpleTaskRunner()), &net_log_, event_store_.get())); |
- settings_->configurator_ = configurator_.get(); |
settings_->SetDataReductionProxyStatisticsPrefs(statistics_prefs_.get()); |
} |
@@ -146,106 +132,20 @@ DataReductionProxySettingsTestBase::ResetSettings<DataReductionProxySettings>( |
bool promo_allowed, |
bool holdback); |
-template <class C> |
-void DataReductionProxySettingsTestBase::SetProbeResult( |
- const std::string& test_url, |
- const std::string& response, |
- ProbeURLFetchResult result, |
- bool success, |
- int expected_calls) { |
- MockDataReductionProxySettings<C>* settings = |
- static_cast<MockDataReductionProxySettings<C>*>(settings_.get()); |
- if (0 == expected_calls) { |
- EXPECT_CALL(*settings, GetURLFetcherForAvailabilityCheck()).Times(0); |
- EXPECT_CALL(*settings, RecordProbeURLFetchResult(_)).Times(0); |
- } else { |
- EXPECT_CALL(*settings, RecordProbeURLFetchResult(result)).Times(1); |
- EXPECT_CALL(*settings, GetURLFetcherForAvailabilityCheck()) |
- .Times(expected_calls) |
- .WillRepeatedly(Return(new net::FakeURLFetcher( |
- GURL(test_url), |
- settings, |
- response, |
- success ? net::HTTP_OK : net::HTTP_INTERNAL_SERVER_ERROR, |
- success ? net::URLRequestStatus::SUCCESS : |
- net::URLRequestStatus::FAILED))); |
- } |
-} |
- |
-// Explicitly generate required instantiations. |
-template void |
-DataReductionProxySettingsTestBase::SetProbeResult<DataReductionProxySettings>( |
- const std::string& test_url, |
- const std::string& response, |
- ProbeURLFetchResult result, |
- bool success, |
- int expected_calls); |
- |
-void DataReductionProxySettingsTestBase::CheckProxyConfigs( |
- bool expected_enabled, |
- bool expected_restricted, |
- bool expected_fallback_restricted) { |
- TestDataReductionProxyConfigurator* config = |
- static_cast<TestDataReductionProxyConfigurator*>( |
- settings_->configurator_); |
- ASSERT_EQ(expected_restricted, config->restricted()); |
- ASSERT_EQ(expected_fallback_restricted, config->fallback_restricted()); |
- ASSERT_EQ(expected_enabled, config->enabled()); |
-} |
- |
-void DataReductionProxySettingsTestBase::CheckProbe( |
- bool initially_enabled, |
- const std::string& probe_url, |
- const std::string& response, |
- bool request_succeeded, |
+void DataReductionProxySettingsTestBase::ExpectSetProxyPrefs( |
bool expected_enabled, |
- bool expected_restricted, |
- bool expected_fallback_restricted) { |
- pref_service_.SetBoolean(prefs::kDataReductionProxyEnabled, |
- initially_enabled); |
- if (initially_enabled) |
- settings_->enabled_by_user_ = true; |
- settings_->restricted_by_carrier_ = false; |
- SetProbeResult(probe_url, |
- response, |
- FetchResult(initially_enabled, |
- request_succeeded && (response == "OK")), |
- request_succeeded, |
- initially_enabled ? 1 : 0); |
- settings_->MaybeActivateDataReductionProxy(false); |
- base::MessageLoop::current()->RunUntilIdle(); |
- CheckProxyConfigs(expected_enabled, |
- expected_restricted, |
- expected_fallback_restricted); |
-} |
- |
-void DataReductionProxySettingsTestBase::CheckProbeOnIPChange( |
- const std::string& probe_url, |
- const std::string& response, |
- bool request_succeeded, |
- bool expected_restricted, |
- bool expected_fallback_restricted) { |
- SetProbeResult(probe_url, |
- response, |
- FetchResult(!settings_->restricted_by_carrier_, |
- request_succeeded && (response == "OK")), |
- request_succeeded, |
- 1); |
- settings_->OnIPAddressChanged(); |
- base::MessageLoop::current()->RunUntilIdle(); |
- CheckProxyConfigs(true, expected_restricted, expected_fallback_restricted); |
+ bool expected_alternate_enabled, |
+ bool expected_at_startup) { |
+ MockDataReductionProxyConfig* config = config_.get(); |
+ EXPECT_CALL(*config, SetProxyPrefs( |
+ expected_enabled, expected_alternate_enabled, expected_at_startup)); |
} |
void DataReductionProxySettingsTestBase::CheckOnPrefChange( |
bool enabled, |
bool expected_enabled, |
bool managed) { |
- // Always have a sucessful probe for pref change tests. |
- SetProbeResult(kProbeURLWithOKResponse, |
- "OK", |
- FetchResult(enabled, true), |
- true, |
- expected_enabled ? 1 : 0); |
+ ExpectSetProxyPrefs(expected_enabled, false, false); |
if (managed) { |
pref_service_.SetManagedPref(prefs::kDataReductionProxyEnabled, |
new base::FundamentalValue(enabled)); |
@@ -254,26 +154,13 @@ void DataReductionProxySettingsTestBase::CheckOnPrefChange( |
} |
base::MessageLoop::current()->RunUntilIdle(); |
// Never expect the proxy to be restricted for pref change tests. |
- CheckProxyConfigs(expected_enabled, false, false); |
} |
void DataReductionProxySettingsTestBase::CheckInitDataReductionProxy( |
bool enabled_at_startup) { |
base::MessageLoopForUI loop; |
- scoped_ptr<DataReductionProxyConfigurator> configurator( |
- new TestDataReductionProxyConfigurator( |
- scoped_refptr<base::TestSimpleTaskRunner>( |
- new base::TestSimpleTaskRunner()), &net_log_, |
- event_store_.get())); |
- settings_->SetProxyConfigurator(configurator.get()); |
- scoped_refptr<net::TestURLRequestContextGetter> request_context = |
- new net::TestURLRequestContextGetter(base::MessageLoopProxy::current()); |
- |
- settings_->InitDataReductionProxySettings( |
- &pref_service_, |
- request_context.get(), |
- &net_log_, |
- event_store_.get()); |
+ settings_->InitDataReductionProxySettings(&pref_service_, config_.get(), |
+ event_store_.get()); |
settings_->SetOnDataReductionEnabledCallback( |
base::Bind(&DataReductionProxySettingsTestBase:: |
RegisterSyntheticFieldTrialCallback, |