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 |