| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/cros/onc_network_parser.h" | 5 #include "chrome/browser/chromeos/cros/onc_network_parser.h" |
| 6 | 6 |
| 7 #include <cert.h> | 7 #include <cert.h> |
| 8 #include <keyhi.h> | 8 #include <keyhi.h> |
| 9 #include <pk11pub.h> | 9 #include <pk11pub.h> |
| 10 | 10 |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 EXPECT_EQ(0, parser.GetCertificatesSize()); | 236 EXPECT_EQ(0, parser.GetCertificatesSize()); |
| 237 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 237 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
| 238 ASSERT_TRUE(network.get()); | 238 ASSERT_TRUE(network.get()); |
| 239 | 239 |
| 240 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); | 240 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); |
| 241 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 241 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
| 242 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption()); | 242 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption()); |
| 243 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep); | 243 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep); |
| 244 EXPECT_EQ("ssid", wifi->name()); | 244 EXPECT_EQ("ssid", wifi->name()); |
| 245 CheckStringProperty(wifi, PROPERTY_INDEX_SSID, "ssid"); | 245 CheckStringProperty(wifi, PROPERTY_INDEX_SSID, "ssid"); |
| 246 EXPECT_EQ(false, wifi->auto_connect()); | 246 EXPECT_FALSE(wifi->auto_connect()); |
| 247 EXPECT_EQ("0x1234567890", wifi->passphrase()); | 247 EXPECT_EQ("0x1234567890", wifi->passphrase()); |
| 248 CheckStringProperty(wifi, PROPERTY_INDEX_PASSPHRASE, "0x1234567890"); | 248 CheckStringProperty(wifi, PROPERTY_INDEX_PASSPHRASE, "0x1234567890"); |
| 249 } | 249 } |
| 250 | 250 |
| 251 TEST_F(OncNetworkParserTest, TestCreateNetworkEthernet) { | 251 TEST_F(OncNetworkParserTest, TestCreateNetworkEthernet) { |
| 252 std::string test_blob; | 252 std::string test_blob; |
| 253 GetTestData("network-ethernet.onc", &test_blob); | 253 GetTestData("network-ethernet.onc", &test_blob); |
| 254 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); | 254 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); |
| 255 | 255 |
| 256 EXPECT_GE(parser.GetNetworkConfigsSize(), 1); | 256 EXPECT_GE(parser.GetNetworkConfigsSize(), 1); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 271 ASSERT_TRUE(parser.parse_error().empty()); | 271 ASSERT_TRUE(parser.parse_error().empty()); |
| 272 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 272 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
| 273 EXPECT_EQ(0, parser.GetCertificatesSize()); | 273 EXPECT_EQ(0, parser.GetCertificatesSize()); |
| 274 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 274 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
| 275 ASSERT_TRUE(network.get()); | 275 ASSERT_TRUE(network.get()); |
| 276 | 276 |
| 277 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); | 277 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); |
| 278 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 278 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
| 279 EXPECT_EQ(chromeos::SECURITY_NONE, wifi->encryption()); | 279 EXPECT_EQ(chromeos::SECURITY_NONE, wifi->encryption()); |
| 280 EXPECT_EQ("WirelessNetwork", wifi->name()); | 280 EXPECT_EQ("WirelessNetwork", wifi->name()); |
| 281 EXPECT_EQ(false, wifi->auto_connect()); | 281 EXPECT_FALSE(wifi->auto_connect()); |
| 282 EXPECT_EQ("", wifi->passphrase()); | 282 EXPECT_EQ("", wifi->passphrase()); |
| 283 } | 283 } |
| 284 | 284 |
| 285 TEST_F(OncNetworkParserTest, TestLoadWifiCertificatePattern) { | 285 TEST_F(OncNetworkParserTest, TestLoadWifiCertificatePattern) { |
| 286 std::string test_blob; | 286 std::string test_blob; |
| 287 GetTestData("cert-pattern.onc", &test_blob); | 287 GetTestData("cert-pattern.onc", &test_blob); |
| 288 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); | 288 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); |
| 289 ASSERT_TRUE(parser.parse_error().empty()); | 289 ASSERT_TRUE(parser.parse_error().empty()); |
| 290 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 290 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
| 291 EXPECT_EQ(2, parser.GetCertificatesSize()); | 291 EXPECT_EQ(2, parser.GetCertificatesSize()); |
| 292 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 292 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
| 293 ASSERT_TRUE(network.get()); | 293 ASSERT_TRUE(network.get()); |
| 294 | 294 |
| 295 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); | 295 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); |
| 296 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 296 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
| 297 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); | 297 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); |
| 298 EXPECT_EQ("WirelessNetwork", wifi->name()); | 298 EXPECT_EQ("WirelessNetwork", wifi->name()); |
| 299 EXPECT_EQ(false, wifi->auto_connect()); | 299 EXPECT_FALSE(wifi->auto_connect()); |
| 300 EXPECT_EQ("", wifi->passphrase()); | 300 EXPECT_EQ("", wifi->passphrase()); |
| 301 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method()); | 301 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method()); |
| 302 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type()); | 302 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type()); |
| 303 EXPECT_EQ("Google, Inc.", | 303 EXPECT_EQ("Google, Inc.", |
| 304 wifi->client_cert_pattern().issuer().organization()); | 304 wifi->client_cert_pattern().issuer().organization()); |
| 305 ASSERT_EQ(2ul, wifi->client_cert_pattern().enrollment_uri_list().size()); | 305 ASSERT_EQ(2ul, wifi->client_cert_pattern().enrollment_uri_list().size()); |
| 306 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", | 306 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", |
| 307 wifi->client_cert_pattern().enrollment_uri_list()[0]); | 307 wifi->client_cert_pattern().enrollment_uri_list()[0]); |
| 308 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", | 308 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", |
| 309 wifi->client_cert_pattern().enrollment_uri_list()[1]); | 309 wifi->client_cert_pattern().enrollment_uri_list()[1]); |
| 310 } | 310 } |
| 311 | 311 |
| 312 | 312 |
| 313 TEST_F(OncNetworkParserTest, TestLoadVPNCertificatePattern) { | 313 TEST_F(OncNetworkParserTest, TestLoadVPNCertificatePattern) { |
| 314 std::string test_blob; | 314 std::string test_blob; |
| 315 GetTestData("cert-pattern-vpn.onc", &test_blob); | 315 GetTestData("cert-pattern-vpn.onc", &test_blob); |
| 316 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); | 316 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); |
| 317 ASSERT_TRUE(parser.parse_error().empty()); | 317 ASSERT_TRUE(parser.parse_error().empty()); |
| 318 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 318 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
| 319 EXPECT_EQ(2, parser.GetCertificatesSize()); | 319 EXPECT_EQ(2, parser.GetCertificatesSize()); |
| 320 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 320 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
| 321 ASSERT_TRUE(network.get()); | 321 ASSERT_TRUE(network.get()); |
| 322 | 322 |
| 323 EXPECT_EQ(chromeos::TYPE_VPN, network->type()); | 323 EXPECT_EQ(chromeos::TYPE_VPN, network->type()); |
| 324 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); | 324 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); |
| 325 EXPECT_EQ("MyVPN", vpn->name()); | 325 EXPECT_EQ("MyVPN", vpn->name()); |
| 326 EXPECT_EQ(false, vpn->auto_connect()); | 326 EXPECT_FALSE(vpn->auto_connect()); |
| 327 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, vpn->client_cert_type()); | 327 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, vpn->client_cert_type()); |
| 328 EXPECT_EQ("Google, Inc.", | 328 EXPECT_EQ("Google, Inc.", |
| 329 vpn->client_cert_pattern().issuer().organization()); | 329 vpn->client_cert_pattern().issuer().organization()); |
| 330 ASSERT_EQ(2ul, vpn->client_cert_pattern().enrollment_uri_list().size()); | 330 ASSERT_EQ(2ul, vpn->client_cert_pattern().enrollment_uri_list().size()); |
| 331 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", | 331 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", |
| 332 vpn->client_cert_pattern().enrollment_uri_list()[0]); | 332 vpn->client_cert_pattern().enrollment_uri_list()[0]); |
| 333 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", | 333 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", |
| 334 vpn->client_cert_pattern().enrollment_uri_list()[1]); | 334 vpn->client_cert_pattern().enrollment_uri_list()[1]); |
| 335 } | 335 } |
| 336 | 336 |
| (...skipping 10 matching lines...) Expand all Loading... |
| 347 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); | 347 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); |
| 348 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 348 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
| 349 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); | 349 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); |
| 350 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x); | 350 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x); |
| 351 EXPECT_EQ("ssid", wifi->name()); | 351 EXPECT_EQ("ssid", wifi->name()); |
| 352 EXPECT_EQ(true, wifi->auto_connect()); | 352 EXPECT_EQ(true, wifi->auto_connect()); |
| 353 CheckBooleanProperty(wifi, PROPERTY_INDEX_AUTO_CONNECT, true); | 353 CheckBooleanProperty(wifi, PROPERTY_INDEX_AUTO_CONNECT, true); |
| 354 EXPECT_EQ(EAP_METHOD_PEAP, wifi->eap_method()); | 354 EXPECT_EQ(EAP_METHOD_PEAP, wifi->eap_method()); |
| 355 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_METHOD, | 355 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_METHOD, |
| 356 flimflam::kEapMethodPEAP); | 356 flimflam::kEapMethodPEAP); |
| 357 EXPECT_EQ(false, wifi->eap_use_system_cas()); | 357 EXPECT_FALSE(wifi->eap_use_system_cas()); |
| 358 } | 358 } |
| 359 | 359 |
| 360 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP2) { | 360 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP2) { |
| 361 std::string test_blob; | 361 std::string test_blob; |
| 362 GetTestData("network-wifi-eap2.onc", &test_blob); | 362 GetTestData("network-wifi-eap2.onc", &test_blob); |
| 363 | 363 |
| 364 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); | 364 OncNetworkParser parser(test_blob, "", NetworkUIData::ONC_SOURCE_USER_IMPORT); |
| 365 | 365 |
| 366 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 366 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
| 367 EXPECT_EQ(0, parser.GetCertificatesSize()); | 367 EXPECT_EQ(0, parser.GetCertificatesSize()); |
| 368 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 368 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
| 369 ASSERT_TRUE(network.get()); | 369 ASSERT_TRUE(network.get()); |
| 370 | 370 |
| 371 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); | 371 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); |
| 372 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 372 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
| 373 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); | 373 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); |
| 374 EXPECT_EQ("ssid", wifi->name()); | 374 EXPECT_EQ("ssid", wifi->name()); |
| 375 EXPECT_EQ(false, wifi->auto_connect()); | 375 EXPECT_FALSE(wifi->auto_connect()); |
| 376 EXPECT_EQ(EAP_METHOD_LEAP, wifi->eap_method()); | 376 EXPECT_EQ(EAP_METHOD_LEAP, wifi->eap_method()); |
| 377 EXPECT_EQ(true, wifi->eap_use_system_cas()); | 377 EXPECT_EQ(true, wifi->eap_use_system_cas()); |
| 378 EXPECT_EQ("user", wifi->eap_identity()); | 378 EXPECT_EQ("user", wifi->eap_identity()); |
| 379 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user"); | 379 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user"); |
| 380 EXPECT_EQ("pass", wifi->eap_passphrase()); | 380 EXPECT_EQ("pass", wifi->eap_passphrase()); |
| 381 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass"); | 381 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass"); |
| 382 EXPECT_EQ("anon", wifi->eap_anonymous_identity()); | 382 EXPECT_EQ("anon", wifi->eap_anonymous_identity()); |
| 383 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon"); | 383 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon"); |
| 384 } | 384 } |
| 385 | 385 |
| (...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 936 | 936 |
| 937 EXPECT_EQ("a onc b", | 937 EXPECT_EQ("a onc b", |
| 938 chromeos::OncNetworkParser::GetUserExpandedValue( | 938 chromeos::OncNetworkParser::GetUserExpandedValue( |
| 939 login_id_pattern, source)); | 939 login_id_pattern, source)); |
| 940 EXPECT_EQ("a onc@example.com b", | 940 EXPECT_EQ("a onc@example.com b", |
| 941 chromeos::OncNetworkParser::GetUserExpandedValue( | 941 chromeos::OncNetworkParser::GetUserExpandedValue( |
| 942 login_email_pattern, source)); | 942 login_email_pattern, source)); |
| 943 } | 943 } |
| 944 | 944 |
| 945 } // namespace chromeos | 945 } // namespace chromeos |
| OLD | NEW |