Chromium Code Reviews| Index: chrome/test/webdriver/webdriver_capabilities_parser_unittest.cc |
| diff --git a/chrome/test/webdriver/webdriver_capabilities_parser_unittest.cc b/chrome/test/webdriver/webdriver_capabilities_parser_unittest.cc |
| index c6a7be958178e6fae1cdcd3c481769d484ac254e..0b47d15950df7b677ebb9a230060de165fd4ec0e 100644 |
| --- a/chrome/test/webdriver/webdriver_capabilities_parser_unittest.cc |
| +++ b/chrome/test/webdriver/webdriver_capabilities_parser_unittest.cc |
| @@ -180,6 +180,18 @@ TEST(CapabilitiesParser, ProxyTypeCapIncompatibleManual) { |
| ASSERT_TRUE(parser.Parse()); |
| } |
| +TEST(CapabilitiesParser, ProxyTypeCapNullValue) { |
| + Capabilities caps; |
| + DictionaryValue dict; |
| + DictionaryValue* options = new DictionaryValue(); |
| + dict.Set("proxy", options); |
| + |
| + options->Set("proxyType", Value::CreateNullValue()); |
| + |
| + CapabilitiesParser parser(&dict, FilePath(), &caps); |
| + ASSERT_TRUE(parser.Parse()); |
| +} |
| + |
| TEST(CapabilitiesParser, ProxyTypeManualCap) { |
| const char kProxyServers[] = "ftp=localhost:9001;http=localhost:8001"; |
| Capabilities caps; |
| @@ -201,11 +213,11 @@ TEST(CapabilitiesParser, ProxyBypassListCap) { |
| const char kBypassList[] = "google.com, youtube.com"; |
| Capabilities caps; |
| DictionaryValue dict; |
| - DictionaryValue* proxy_options = new DictionaryValue(); |
| - dict.Set("proxy", proxy_options); |
| + DictionaryValue* options = new DictionaryValue(); |
| + dict.Set("proxy", options); |
| - proxy_options->SetString("proxyType", "manual"); |
| - proxy_options->SetString("noProxy", kBypassList); |
| + options->SetString("proxyType", "manual"); |
| + options->SetString("noProxy", kBypassList); |
| CapabilitiesParser parser(&dict, FilePath(), &caps); |
| ASSERT_FALSE(parser.Parse()); |
| @@ -213,6 +225,22 @@ TEST(CapabilitiesParser, ProxyBypassListCap) { |
| caps.command.GetSwitchValueASCII(switches::kProxyBypassList).c_str()); |
| } |
| +TEST(CapabilitiesParser, ProxyBypassListCapNullValue) { |
| + Capabilities caps; |
| + DictionaryValue dict; |
| + DictionaryValue* options = new DictionaryValue(); |
| + dict.Set("proxy", options); |
| + |
| + options->SetString("proxyType", "manual"); |
| + options->Set("noProxy", Value::CreateNullValue()); |
| + options->SetString("httpProxy", "localhost:8001"); |
| + |
| + CapabilitiesParser parser(&dict, FilePath(), &caps); |
| + ASSERT_FALSE(parser.Parse()); |
| + EXPECT_STREQ("", |
| + caps.command.GetSwitchValueASCII(switches::kProxyBypassList).c_str()); |
|
kkania
2011/12/19 23:53:20
EXPECT_FALSE(caps.command.HasSwitch...
Huyen
2011/12/19 23:59:12
Done.
|
| +} |
| + |
| TEST(CapabilitiesParser, UnknownProxyCap) { |
| Capabilities caps; |
| DictionaryValue dict; |
| @@ -223,7 +251,23 @@ TEST(CapabilitiesParser, UnknownProxyCap) { |
| options->SetString("badProxyCap", "error"); |
| CapabilitiesParser parser(&dict, FilePath(), &caps); |
| - ASSERT_TRUE(parser.Parse()); |
| + ASSERT_FALSE(parser.Parse()); |
| +} |
| + |
| +TEST(CapabilitiesParser, ProxyFtpServerCapNullValue) { |
| + Capabilities caps; |
| + DictionaryValue dict; |
| + DictionaryValue* options = new DictionaryValue(); |
| + dict.Set("proxy", options); |
| + |
| + options->SetString("proxyType", "manual"); |
| + options->SetString("httpProxy", "localhost:8001"); |
| + options->Set("ftpProxy", Value::CreateNullValue()); |
| + |
| + CapabilitiesParser parser(&dict, FilePath(), &caps); |
| + ASSERT_FALSE(parser.Parse()); |
| + EXPECT_STREQ("http=localhost:8001", |
| + caps.command.GetSwitchValueASCII(switches::kProxyServer).c_str()); |
| } |
| } // namespace webdriver |