Index: components/network_time/network_time_tracker_unittest.cc |
diff --git a/components/network_time/network_time_tracker_unittest.cc b/components/network_time/network_time_tracker_unittest.cc |
index 408425ec694bd5c681ee9f248331a31dc482eb47..87709366203da6135474df0c79c49d9669f194b5 100644 |
--- a/components/network_time/network_time_tracker_unittest.cc |
+++ b/components/network_time/network_time_tracker_unittest.cc |
@@ -39,12 +39,13 @@ const char kWallClockBackwardsHistogram[] = |
"NetworkTimeTracker.WallClockRanBackwards"; |
} // namespace |
-class NetworkTimeTrackerTest : public FieldTrialTest { |
+class NetworkTimeTrackerTest : public ::testing::Test { |
public: |
~NetworkTimeTrackerTest() override {} |
NetworkTimeTrackerTest() |
: io_thread_("IO thread"), |
+ field_trial_test_(new FieldTrialTest()), |
clock_(new base::SimpleTestClock), |
tick_clock_(new base::SimpleTestTickClock), |
test_server_(new net::EmbeddedTestServer) { |
@@ -53,7 +54,9 @@ class NetworkTimeTrackerTest : public FieldTrialTest { |
EXPECT_TRUE(io_thread_.StartWithOptions(thread_options)); |
NetworkTimeTracker::RegisterPrefs(pref_service_.registry()); |
- SetNetworkQueriesWithVariationsService(true, 0.0 /* query probability */); |
+ field_trial_test_->SetNetworkQueriesWithVariationsService( |
+ true, 0.0 /* query probability */, |
+ FieldTrialTest::ENABLE_FETCHES_ON_DEMAND); |
tracker_.reset(new NetworkTimeTracker( |
std::unique_ptr<base::Clock>(clock_), |
@@ -87,30 +90,6 @@ class NetworkTimeTrackerTest : public FieldTrialTest { |
new net::TestURLRequestContextGetter(io_thread_.task_runner()))); |
} |
- // Returns a valid time response. Update as follows: |
- // |
- // curl http://clients2.google.com/time/1/current?cup2key=1:123123123 |
- // |
- // where 1 is the key version and 123123123 is the nonce. Copy the nonce, the |
- // response, and the x-cup-server-proof header into the test. |
- static std::unique_ptr<net::test_server::HttpResponse> |
- GoodTimeResponseHandler(const net::test_server::HttpRequest& request) { |
- net::test_server::BasicHttpResponse* response = |
- new net::test_server::BasicHttpResponse(); |
- response->set_code(net::HTTP_OK); |
- response->set_content( |
- ")]}'\n" |
- "{\"current_time_millis\":1461621971825,\"server_nonce\":-6." |
- "006853099049523E85}"); |
- response->AddCustomHeader( |
- "x-cup-server-proof", |
- "304402202e0f24db1ea69f1bbe81da4108f381fcf7a2781c53cf7663cb47083cb5fe8e" |
- "fd" |
- "022009d2b67c0deceaaf849f7c529be96701ed5f15d5efcaf401a94e0801accc9832:" |
- "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"); |
- return std::unique_ptr<net::test_server::HttpResponse>(response); |
- } |
- |
// Good signature over invalid data, though made with a non-production key. |
static std::unique_ptr<net::test_server::HttpResponse> BadDataResponseHandler( |
const net::test_server::HttpRequest& request) { |
@@ -175,6 +154,7 @@ class NetworkTimeTrackerTest : public FieldTrialTest { |
protected: |
base::Thread io_thread_; |
+ std::unique_ptr<FieldTrialTest> field_trial_test_; |
base::MessageLoop message_loop_; |
base::TimeDelta resolution_; |
base::TimeDelta latency_; |
@@ -482,8 +462,7 @@ TEST_F(NetworkTimeTrackerTest, UpdateFromNetwork) { |
EXPECT_EQ(base::TimeDelta::FromMinutes(0), |
tracker_->GetTimerDelayForTesting()); |
- test_server_->RegisterRequestHandler( |
- base::Bind(&NetworkTimeTrackerTest::GoodTimeResponseHandler)); |
+ test_server_->RegisterRequestHandler(base::Bind(&GoodTimeResponseHandler)); |
EXPECT_TRUE(test_server_->Start()); |
tracker_->SetTimeServerURLForTesting(test_server_->GetURL("/")); |
EXPECT_TRUE(tracker_->QueryTimeServiceForTesting()); |
@@ -504,12 +483,12 @@ TEST_F(NetworkTimeTrackerTest, UpdateFromNetwork) { |
} |
TEST_F(NetworkTimeTrackerTest, NoNetworkQueryWhileSynced) { |
- test_server_->RegisterRequestHandler( |
- base::Bind(&NetworkTimeTrackerTest::GoodTimeResponseHandler)); |
+ test_server_->RegisterRequestHandler(base::Bind(&GoodTimeResponseHandler)); |
EXPECT_TRUE(test_server_->Start()); |
tracker_->SetTimeServerURLForTesting(test_server_->GetURL("/")); |
- SetNetworkQueriesWithVariationsService(true, 0.0); |
+ field_trial_test_->SetNetworkQueriesWithVariationsService( |
+ true, 0.0, FieldTrialTest::ENABLE_FETCHES_ON_DEMAND); |
base::Time in_network_time = clock_->Now(); |
UpdateNetworkTime(in_network_time, resolution_, latency_, |
tick_clock_->NowTicks()); |
@@ -520,7 +499,8 @@ TEST_F(NetworkTimeTrackerTest, NoNetworkQueryWhileSynced) { |
EXPECT_EQ(base::TimeDelta::FromMinutes(6), |
tracker_->GetTimerDelayForTesting()); |
- SetNetworkQueriesWithVariationsService(true, 1.0); |
+ field_trial_test_->SetNetworkQueriesWithVariationsService( |
+ true, 1.0, FieldTrialTest::ENABLE_FETCHES_ON_DEMAND); |
EXPECT_TRUE(tracker_->QueryTimeServiceForTesting()); |
tracker_->WaitForFetchForTesting(123123123); |
EXPECT_EQ(base::TimeDelta::FromMinutes(60), |
@@ -529,13 +509,15 @@ TEST_F(NetworkTimeTrackerTest, NoNetworkQueryWhileSynced) { |
TEST_F(NetworkTimeTrackerTest, NoNetworkQueryWhileFeatureDisabled) { |
// Disable network time queries and check that a query is not sent. |
- SetNetworkQueriesWithVariationsService(false, 0.0); |
+ field_trial_test_->SetNetworkQueriesWithVariationsService( |
+ false, 0.0, FieldTrialTest::ENABLE_FETCHES_ON_DEMAND); |
EXPECT_FALSE(tracker_->QueryTimeServiceForTesting()); |
EXPECT_EQ(base::TimeDelta::FromMinutes(6), |
tracker_->GetTimerDelayForTesting()); |
// Enable time queries and check that a query is sent. |
- SetNetworkQueriesWithVariationsService(true, 0.0); |
+ field_trial_test_->SetNetworkQueriesWithVariationsService( |
+ true, 0.0, FieldTrialTest::ENABLE_FETCHES_ON_DEMAND); |
EXPECT_TRUE(tracker_->QueryTimeServiceForTesting()); |
tracker_->WaitForFetchForTesting(123123123); |
} |
@@ -655,8 +637,7 @@ TEST_F(NetworkTimeTrackerTest, UpdateFromNetworkLargeResponse) { |
histograms.ExpectTotalCount(kFetchFailedHistogram, 0); |
histograms.ExpectTotalCount(kFetchValidHistogram, 0); |
- test_server_->RegisterRequestHandler( |
- base::Bind(&NetworkTimeTrackerTest::GoodTimeResponseHandler)); |
+ test_server_->RegisterRequestHandler(base::Bind(&GoodTimeResponseHandler)); |
EXPECT_TRUE(test_server_->Start()); |
tracker_->SetTimeServerURLForTesting(test_server_->GetURL("/")); |