| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <utility> | 5 #include <utility> |
| 6 | 6 |
| 7 #include "base/base64.h" | 7 #include "base/base64.h" |
| 8 #include "base/base_switches.h" | 8 #include "base/base_switches.h" |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 3260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3271 // request, and it allows the user to configure the experimental | 3271 // request, and it allows the user to configure the experimental |
| 3272 // parameters of the NetworkTimeTracker. Expects only one network time | 3272 // parameters of the NetworkTimeTracker. Expects only one network time |
| 3273 // request to be issued during the test. | 3273 // request to be issued during the test. |
| 3274 class SSLNetworkTimeBrowserTest : public SSLUITest { | 3274 class SSLNetworkTimeBrowserTest : public SSLUITest { |
| 3275 public: | 3275 public: |
| 3276 SSLNetworkTimeBrowserTest() : SSLUITest(), interceptor_(nullptr) {} | 3276 SSLNetworkTimeBrowserTest() : SSLUITest(), interceptor_(nullptr) {} |
| 3277 ~SSLNetworkTimeBrowserTest() override {} | 3277 ~SSLNetworkTimeBrowserTest() override {} |
| 3278 | 3278 |
| 3279 void SetUpCommandLine(base::CommandLine* command_line) override { | 3279 void SetUpCommandLine(base::CommandLine* command_line) override { |
| 3280 command_line->AppendSwitchASCII( | 3280 command_line->AppendSwitchASCII( |
| 3281 switches::kEnableFeatures, | |
| 3282 std::string(network_time::kNetworkTimeServiceQuerying.name) + | |
| 3283 "<SSLNetworkTimeBrowserTestFieldTrial"); | |
| 3284 command_line->AppendSwitchASCII( | |
| 3285 switches::kForceFieldTrials, | 3281 switches::kForceFieldTrials, |
| 3286 "SSLNetworkTimeBrowserTestFieldTrial/Enabled/"); | 3282 "SSLNetworkTimeBrowserTestFieldTrial/Enabled/"); |
| 3287 command_line->AppendSwitchASCII( | 3283 command_line->AppendSwitchASCII( |
| 3288 variations::switches::kForceFieldTrialParams, | 3284 variations::switches::kForceFieldTrialParams, |
| 3289 "SSLNetworkTimeBrowserTestFieldTrial.Enabled:FetchBehavior/" | 3285 "SSLNetworkTimeBrowserTestFieldTrial.Enabled:FetchBehavior/" |
| 3290 "on-demand-only"); | 3286 "on-demand-only"); |
| 3291 } | 3287 } |
| 3292 | 3288 |
| 3293 void SetUpOnMainThread() override { | 3289 void SetUpOnMainThread() override { |
| 3294 SSLUITest::SetUpOnMainThread(); | 3290 SSLUITest::SetUpOnMainThread(); |
| 3291 scoped_feature_list_.InitFromCommandLine( |
| 3292 std::string(network_time::kNetworkTimeServiceQuerying.name) + |
| 3293 "<SSLNetworkTimeBrowserTestFieldTrial", |
| 3294 std::string()); |
| 3295 SetUpNetworkTimeServer(); | 3295 SetUpNetworkTimeServer(); |
| 3296 } | 3296 } |
| 3297 | 3297 |
| 3298 void TearDownOnMainThread() override { | 3298 void TearDownOnMainThread() override { |
| 3299 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, | 3299 content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, |
| 3300 base::Bind(&CleanUpOnIOThread)); | 3300 base::Bind(&CleanUpOnIOThread)); |
| 3301 } | 3301 } |
| 3302 | 3302 |
| 3303 protected: | 3303 protected: |
| 3304 void SetUpNetworkTimeServer() { | 3304 void SetUpNetworkTimeServer() { |
| (...skipping 18 matching lines...) Expand all Loading... |
| 3323 void CheckTimeQueryPending() { | 3323 void CheckTimeQueryPending() { |
| 3324 base::Time unused_time; | 3324 base::Time unused_time; |
| 3325 base::TimeDelta unused_uncertainty; | 3325 base::TimeDelta unused_uncertainty; |
| 3326 ASSERT_EQ(network_time::NetworkTimeTracker::NETWORK_TIME_FIRST_SYNC_PENDING, | 3326 ASSERT_EQ(network_time::NetworkTimeTracker::NETWORK_TIME_FIRST_SYNC_PENDING, |
| 3327 g_browser_process->network_time_tracker()->GetNetworkTime( | 3327 g_browser_process->network_time_tracker()->GetNetworkTime( |
| 3328 &unused_time, &unused_uncertainty)); | 3328 &unused_time, &unused_uncertainty)); |
| 3329 } | 3329 } |
| 3330 | 3330 |
| 3331 private: | 3331 private: |
| 3332 DelayedNetworkTimeInterceptor* interceptor_; | 3332 DelayedNetworkTimeInterceptor* interceptor_; |
| 3333 base::test::ScopedFeatureList scoped_feature_list_; |
| 3333 | 3334 |
| 3334 DISALLOW_COPY_AND_ASSIGN(SSLNetworkTimeBrowserTest); | 3335 DISALLOW_COPY_AND_ASSIGN(SSLNetworkTimeBrowserTest); |
| 3335 }; | 3336 }; |
| 3336 | 3337 |
| 3337 // Tests that if an on-demand network time fetch returns that the clock | 3338 // Tests that if an on-demand network time fetch returns that the clock |
| 3338 // is okay, a normal SSL interstitial is shown. | 3339 // is okay, a normal SSL interstitial is shown. |
| 3339 IN_PROC_BROWSER_TEST_F(SSLNetworkTimeBrowserTest, OnDemandFetchClockOk) { | 3340 IN_PROC_BROWSER_TEST_F(SSLNetworkTimeBrowserTest, OnDemandFetchClockOk) { |
| 3340 ASSERT_TRUE(https_server_expired_.Start()); | 3341 ASSERT_TRUE(https_server_expired_.Start()); |
| 3341 // Use a testing clock set to the time that GoodTimeResponseHandler | 3342 // Use a testing clock set to the time that GoodTimeResponseHandler |
| 3342 // returns, to simulate the system clock matching the network time. | 3343 // returns, to simulate the system clock matching the network time. |
| (...skipping 1411 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4754 | 4755 |
| 4755 // Visit a page over https that contains a frame with a redirect. | 4756 // Visit a page over https that contains a frame with a redirect. |
| 4756 | 4757 |
| 4757 // XMLHttpRequest insecure content in synchronous mode. | 4758 // XMLHttpRequest insecure content in synchronous mode. |
| 4758 | 4759 |
| 4759 // XMLHttpRequest insecure content in asynchronous mode. | 4760 // XMLHttpRequest insecure content in asynchronous mode. |
| 4760 | 4761 |
| 4761 // XMLHttpRequest over bad ssl in synchronous mode. | 4762 // XMLHttpRequest over bad ssl in synchronous mode. |
| 4762 | 4763 |
| 4763 // XMLHttpRequest over OK ssl in synchronous mode. | 4764 // XMLHttpRequest over OK ssl in synchronous mode. |
| OLD | NEW |