| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "components/proxy_config/pref_proxy_config_tracker_impl.h" | 5 #include "components/proxy_config/pref_proxy_config_tracker_impl.h" |
| 6 | 6 |
| 7 #include <memory> |
| 7 #include <string> | 8 #include <string> |
| 8 | 9 |
| 9 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| 10 #include "base/files/file_path.h" | 11 #include "base/files/file_path.h" |
| 11 #include "base/message_loop/message_loop.h" | 12 #include "base/message_loop/message_loop.h" |
| 12 #include "base/test/histogram_tester.h" | 13 #include "base/test/histogram_tester.h" |
| 13 #include "base/thread_task_runner_handle.h" | 14 #include "base/thread_task_runner_handle.h" |
| 14 #include "components/prefs/pref_registry_simple.h" | 15 #include "components/prefs/pref_registry_simple.h" |
| 15 #include "components/prefs/testing_pref_service.h" | 16 #include "components/prefs/testing_pref_service.h" |
| 16 #include "components/proxy_config/proxy_config_dictionary.h" | 17 #include "components/proxy_config/proxy_config_dictionary.h" |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 78 pref_service_.reset(new TestingPrefServiceSimple()); | 79 pref_service_.reset(new TestingPrefServiceSimple()); |
| 79 PrefProxyConfigTrackerImpl::RegisterPrefs(pref_service_->registry()); | 80 PrefProxyConfigTrackerImpl::RegisterPrefs(pref_service_->registry()); |
| 80 fixed_config_.set_pac_url(GURL(kFixedPacUrl)); | 81 fixed_config_.set_pac_url(GURL(kFixedPacUrl)); |
| 81 delegate_service_ = | 82 delegate_service_ = |
| 82 new TestProxyConfigService(fixed_config_, | 83 new TestProxyConfigService(fixed_config_, |
| 83 net::ProxyConfigService::CONFIG_VALID); | 84 net::ProxyConfigService::CONFIG_VALID); |
| 84 proxy_config_tracker_.reset(new PrefProxyConfigTrackerImpl( | 85 proxy_config_tracker_.reset(new PrefProxyConfigTrackerImpl( |
| 85 pref_service_.get(), base::ThreadTaskRunnerHandle::Get())); | 86 pref_service_.get(), base::ThreadTaskRunnerHandle::Get())); |
| 86 proxy_config_service_ = | 87 proxy_config_service_ = |
| 87 proxy_config_tracker_->CreateTrackingProxyConfigService( | 88 proxy_config_tracker_->CreateTrackingProxyConfigService( |
| 88 scoped_ptr<net::ProxyConfigService>(delegate_service_)); | 89 std::unique_ptr<net::ProxyConfigService>(delegate_service_)); |
| 89 // SetProxyConfigServiceImpl triggers update of initial prefs proxy | 90 // SetProxyConfigServiceImpl triggers update of initial prefs proxy |
| 90 // config by tracker to chrome proxy config service, so flush all pending | 91 // config by tracker to chrome proxy config service, so flush all pending |
| 91 // tasks so that tests start fresh. | 92 // tasks so that tests start fresh. |
| 92 loop_.RunUntilIdle(); | 93 loop_.RunUntilIdle(); |
| 93 } | 94 } |
| 94 | 95 |
| 95 ~PrefProxyConfigTrackerImplTest() override { | 96 ~PrefProxyConfigTrackerImplTest() override { |
| 96 proxy_config_tracker_->DetachFromPrefService(); | 97 proxy_config_tracker_->DetachFromPrefService(); |
| 97 loop_.RunUntilIdle(); | 98 loop_.RunUntilIdle(); |
| 98 proxy_config_tracker_.reset(); | 99 proxy_config_tracker_.reset(); |
| 99 proxy_config_service_.reset(); | 100 proxy_config_service_.reset(); |
| 100 } | 101 } |
| 101 | 102 |
| 102 base::MessageLoop loop_; | 103 base::MessageLoop loop_; |
| 103 scoped_ptr<TestingPrefServiceSimple> pref_service_; | 104 std::unique_ptr<TestingPrefServiceSimple> pref_service_; |
| 104 TestProxyConfigService* delegate_service_; // weak | 105 TestProxyConfigService* delegate_service_; // weak |
| 105 scoped_ptr<net::ProxyConfigService> proxy_config_service_; | 106 std::unique_ptr<net::ProxyConfigService> proxy_config_service_; |
| 106 net::ProxyConfig fixed_config_; | 107 net::ProxyConfig fixed_config_; |
| 107 | 108 |
| 108 private: | 109 private: |
| 109 scoped_ptr<PrefProxyConfigTrackerImpl> proxy_config_tracker_; | 110 std::unique_ptr<PrefProxyConfigTrackerImpl> proxy_config_tracker_; |
| 110 }; | 111 }; |
| 111 | 112 |
| 112 TEST_F(PrefProxyConfigTrackerImplTest, BaseConfiguration) { | 113 TEST_F(PrefProxyConfigTrackerImplTest, BaseConfiguration) { |
| 113 net::ProxyConfig actual_config; | 114 net::ProxyConfig actual_config; |
| 114 EXPECT_EQ(net::ProxyConfigService::CONFIG_VALID, | 115 EXPECT_EQ(net::ProxyConfigService::CONFIG_VALID, |
| 115 proxy_config_service_->GetLatestProxyConfig(&actual_config)); | 116 proxy_config_service_->GetLatestProxyConfig(&actual_config)); |
| 116 EXPECT_EQ(GURL(kFixedPacUrl), actual_config.pac_url()); | 117 EXPECT_EQ(GURL(kFixedPacUrl), actual_config.pac_url()); |
| 117 } | 118 } |
| 118 | 119 |
| 119 TEST_F(PrefProxyConfigTrackerImplTest, DynamicPrefOverrides) { | 120 TEST_F(PrefProxyConfigTrackerImplTest, DynamicPrefOverrides) { |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 356 CheckResolvedProxyMatches(&config, GURL("http://google.com"), | 357 CheckResolvedProxyMatches(&config, GURL("http://google.com"), |
| 357 test.http_proxy_info); | 358 test.http_proxy_info); |
| 358 CheckResolvedProxyMatches(&config, GURL("https://google.com"), | 359 CheckResolvedProxyMatches(&config, GURL("https://google.com"), |
| 359 test.https_proxy_info); | 360 test.https_proxy_info); |
| 360 CheckResolvedProxyMatches(&config, GURL("ftp://google.com"), | 361 CheckResolvedProxyMatches(&config, GURL("ftp://google.com"), |
| 361 test.ftp_proxy_info); | 362 test.ftp_proxy_info); |
| 362 } | 363 } |
| 363 } | 364 } |
| 364 | 365 |
| 365 } // namespace | 366 } // namespace |
| OLD | NEW |