| Index: chrome/browser/prefs/command_line_pref_store_proxy_unittest.cc
|
| diff --git a/chrome/browser/prefs/command_line_pref_store_proxy_unittest.cc b/chrome/browser/prefs/command_line_pref_store_proxy_unittest.cc
|
| deleted file mode 100644
|
| index 4b2fef741873875ebae2ed43a70654e542751d69..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/prefs/command_line_pref_store_proxy_unittest.cc
|
| +++ /dev/null
|
| @@ -1,196 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/browser/prefs/command_line_pref_store.h"
|
| -
|
| -#include <gtest/gtest.h>
|
| -#include <stddef.h>
|
| -
|
| -#include "base/command_line.h"
|
| -#include "base/macros.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "chrome/browser/prefs/command_line_pref_store.h"
|
| -#include "chrome/common/chrome_switches.h"
|
| -#include "components/prefs/pref_registry_simple.h"
|
| -#include "components/prefs/pref_service.h"
|
| -#include "components/proxy_config/pref_proxy_config_tracker_impl.h"
|
| -#include "components/syncable_prefs/pref_service_mock_factory.h"
|
| -#include "net/proxy/proxy_config_service_common_unittest.h"
|
| -#include "url/gurl.h"
|
| -
|
| -namespace {
|
| -
|
| -// Test parameter object for testing command line proxy configuration.
|
| -struct CommandLineTestParams {
|
| - // Short description to identify the test.
|
| - const char* description;
|
| -
|
| - // The command line to build a ProxyConfig from.
|
| - struct SwitchValue {
|
| - const char* name;
|
| - const char* value;
|
| - } switches[2];
|
| -
|
| - // Expected outputs (fields of the ProxyConfig).
|
| - bool is_null;
|
| - bool auto_detect;
|
| - GURL pac_url;
|
| - net::ProxyRulesExpectation proxy_rules;
|
| -};
|
| -
|
| -void PrintTo(const CommandLineTestParams& params, std::ostream* os) {
|
| - *os << params.description;
|
| -}
|
| -
|
| -static const CommandLineTestParams kCommandLineTestParams[] = {
|
| - {
|
| - "Empty command line",
|
| - // Input
|
| - {},
|
| - // Expected result
|
| - true, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::Empty(),
|
| - },
|
| - {
|
| - "No proxy",
|
| - // Input
|
| - {
|
| - {switches::kNoProxyServer, NULL},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::Empty(),
|
| - },
|
| - {
|
| - "No proxy with extra parameters.",
|
| - // Input
|
| - {
|
| - {switches::kNoProxyServer, NULL},
|
| - {switches::kProxyServer, "http://proxy:8888"},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::Empty(),
|
| - },
|
| - {
|
| - "Single proxy.",
|
| - // Input
|
| - {
|
| - {switches::kProxyServer, "http://proxy:8888"},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::Single("proxy:8888", // single proxy
|
| - ""), // bypass rules
|
| - },
|
| - {
|
| - "Per scheme proxy.",
|
| - // Input
|
| - {
|
| - {switches::kProxyServer, "http=httpproxy:8888;ftp=ftpproxy:8889"},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::PerScheme("httpproxy:8888", // http
|
| - "", // https
|
| - "ftpproxy:8889", // ftp
|
| - ""), // bypass rules
|
| - },
|
| - {
|
| - "Per scheme proxy with bypass URLs.",
|
| - // Input
|
| - {
|
| - {switches::kProxyServer, "http=httpproxy:8888;ftp=ftpproxy:8889"},
|
| - {switches::kProxyBypassList,
|
| - ".google.com, foo.com:99, 1.2.3.4:22, 127.0.0.1/8"},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::PerScheme(
|
| - "httpproxy:8888", // http
|
| - "", // https
|
| - "ftpproxy:8889", // ftp
|
| - "*.google.com,foo.com:99,1.2.3.4:22,127.0.0.1/8"),
|
| - },
|
| - {
|
| - "Pac URL",
|
| - // Input
|
| - {
|
| - {switches::kProxyPacUrl, "http://wpad/wpad.dat"},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - false, // auto_detect
|
| - GURL("http://wpad/wpad.dat"), // pac_url
|
| - net::ProxyRulesExpectation::Empty(),
|
| - },
|
| - {
|
| - "Autodetect",
|
| - // Input
|
| - {
|
| - {switches::kProxyAutoDetect, NULL},
|
| - },
|
| - // Expected result
|
| - false, // is_null
|
| - true, // auto_detect
|
| - GURL(), // pac_url
|
| - net::ProxyRulesExpectation::Empty(),
|
| - },
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -class CommandLinePrefStoreProxyTest
|
| - : public testing::TestWithParam<CommandLineTestParams> {
|
| - protected:
|
| - CommandLinePrefStoreProxyTest()
|
| - : command_line_(base::CommandLine::NO_PROGRAM) {}
|
| -
|
| - net::ProxyConfig* proxy_config() { return &proxy_config_; }
|
| -
|
| - void SetUp() override {
|
| - for (size_t i = 0; i < arraysize(GetParam().switches); i++) {
|
| - const char* name = GetParam().switches[i].name;
|
| - const char* value = GetParam().switches[i].value;
|
| - if (name && value)
|
| - command_line_.AppendSwitchASCII(name, value);
|
| - else if (name)
|
| - command_line_.AppendSwitch(name);
|
| - }
|
| - scoped_refptr<PrefRegistrySimple> registry = new PrefRegistrySimple;
|
| - PrefProxyConfigTrackerImpl::RegisterPrefs(registry.get());
|
| - syncable_prefs::PrefServiceMockFactory factory;
|
| - factory.set_command_line_prefs(new CommandLinePrefStore(&command_line_));
|
| - pref_service_ = factory.Create(registry.get());
|
| - PrefProxyConfigTrackerImpl::ReadPrefConfig(pref_service_.get(),
|
| - &proxy_config_);
|
| - }
|
| -
|
| - private:
|
| - base::CommandLine command_line_;
|
| - std::unique_ptr<PrefService> pref_service_;
|
| - net::ProxyConfig proxy_config_;
|
| -};
|
| -
|
| -TEST_P(CommandLinePrefStoreProxyTest, CommandLine) {
|
| - EXPECT_EQ(GetParam().auto_detect, proxy_config()->auto_detect());
|
| - EXPECT_EQ(GetParam().pac_url, proxy_config()->pac_url());
|
| - EXPECT_TRUE(GetParam().proxy_rules.Matches(proxy_config()->proxy_rules()));
|
| -}
|
| -
|
| -INSTANTIATE_TEST_CASE_P(CommandLinePrefStoreProxyTestInstance,
|
| - CommandLinePrefStoreProxyTest,
|
| - testing::ValuesIn(kCommandLineTestParams));
|
|
|