diff options
Diffstat (limited to 'net/proxy/proxy_config_unittest.cc')
-rw-r--r-- | net/proxy/proxy_config_unittest.cc | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/net/proxy/proxy_config_unittest.cc b/net/proxy/proxy_config_unittest.cc index 9e50e3b..a4192df 100644 --- a/net/proxy/proxy_config_unittest.cc +++ b/net/proxy/proxy_config_unittest.cc @@ -3,6 +3,7 @@ // found in the LICENSE file. #include "net/proxy/proxy_config.h" +#include "net/proxy/proxy_config_service_common_unittest.h" #include "testing/gtest/include/gtest/gtest.h" namespace { @@ -197,3 +198,36 @@ TEST(ProxyConfigTest, ParseProxyRules) { config.proxy_rules.proxy_for_ftp); } } + +TEST(ProxyConfigTest, ParseProxyBypassList) { + struct bypass_test { + const char* proxy_bypass_input; + const char* flattened_output; + }; + + const struct { + const char* proxy_bypass_input; + const char* flattened_output; + } tests[] = { + { + "*", + "*\n" + }, + { + ".google.com, .foo.com:42", + "*.google.com\n*.foo.com:42\n" + }, + { + ".google.com, foo.com:99, 1.2.3.4:22, 127.0.0.1/8", + "*.google.com\n*foo.com:99\n1.2.3.4:22\n127.0.0.1/8\n" + } + }; + + net::ProxyConfig config; + + for (size_t i = 0; i < ARRAYSIZE_UNSAFE(tests); ++i) { + config.ParseNoProxyList(tests[i].proxy_bypass_input); + EXPECT_EQ(tests[i].flattened_output, + net::FlattenProxyBypass(config.proxy_bypass)); + } +} |