OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
252 " \"NetworkConfigurations\": [{" | 252 " \"NetworkConfigurations\": [{" |
253 " \"GUID\": \"{485d6076-dd44-6b6d-69787465725f5045}\"," | 253 " \"GUID\": \"{485d6076-dd44-6b6d-69787465725f5045}\"," |
254 " \"Type\": \"WiFi\"," | 254 " \"Type\": \"WiFi\"," |
255 " \"WiFi\": {" | 255 " \"WiFi\": {" |
256 " \"Security\": \"WEP-PSK\"," | 256 " \"Security\": \"WEP-PSK\"," |
257 " \"SSID\": \"ssid\"," | 257 " \"SSID\": \"ssid\"," |
258 " \"Passphrase\": \"pass\"," | 258 " \"Passphrase\": \"pass\"," |
259 " }" | 259 " }" |
260 " }]" | 260 " }]" |
261 "}"); | 261 "}"); |
262 OncNetworkParser parser(test_blob); | 262 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
263 | 263 |
264 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 264 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
265 EXPECT_EQ(0, parser.GetCertificatesSize()); | 265 EXPECT_EQ(0, parser.GetCertificatesSize()); |
266 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 266 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
267 ASSERT_TRUE(network.get()); | 267 ASSERT_TRUE(network.get()); |
268 | 268 |
269 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); | 269 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); |
270 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 270 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
271 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_WEP); | 271 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_WEP); |
272 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep); | 272 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep); |
(...skipping 14 matching lines...) Expand all Loading... |
287 " \"Security\": \"WPA-EAP\"," | 287 " \"Security\": \"WPA-EAP\"," |
288 " \"SSID\": \"ssid\"," | 288 " \"SSID\": \"ssid\"," |
289 " \"AutoConnect\": true," | 289 " \"AutoConnect\": true," |
290 " \"EAP\": {" | 290 " \"EAP\": {" |
291 " \"Outer\": \"PEAP\"," | 291 " \"Outer\": \"PEAP\"," |
292 " \"UseSystemCAs\": false," | 292 " \"UseSystemCAs\": false," |
293 " }" | 293 " }" |
294 " }" | 294 " }" |
295 " }]" | 295 " }]" |
296 "}"); | 296 "}"); |
297 OncNetworkParser parser(test_blob); | 297 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
298 | 298 |
299 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 299 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
300 EXPECT_EQ(0, parser.GetCertificatesSize()); | 300 EXPECT_EQ(0, parser.GetCertificatesSize()); |
301 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 301 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
302 ASSERT_TRUE(network.get()); | 302 ASSERT_TRUE(network.get()); |
303 | 303 |
304 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); | 304 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); |
305 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 305 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
306 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_8021X); | 306 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_8021X); |
307 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x); | 307 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x); |
(...skipping 18 matching lines...) Expand all Loading... |
326 " \"AutoConnect\": false," | 326 " \"AutoConnect\": false," |
327 " \"EAP\": {" | 327 " \"EAP\": {" |
328 " \"Outer\": \"LEAP\"," | 328 " \"Outer\": \"LEAP\"," |
329 " \"Identity\": \"user\"," | 329 " \"Identity\": \"user\"," |
330 " \"Password\": \"pass\"," | 330 " \"Password\": \"pass\"," |
331 " \"AnonymousIdentity\": \"anon\"," | 331 " \"AnonymousIdentity\": \"anon\"," |
332 " }" | 332 " }" |
333 " }" | 333 " }" |
334 " }]" | 334 " }]" |
335 "}"); | 335 "}"); |
336 OncNetworkParser parser(test_blob); | 336 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
337 | 337 |
338 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 338 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
339 EXPECT_EQ(0, parser.GetCertificatesSize()); | 339 EXPECT_EQ(0, parser.GetCertificatesSize()); |
340 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 340 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
341 ASSERT_TRUE(network.get()); | 341 ASSERT_TRUE(network.get()); |
342 | 342 |
343 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); | 343 EXPECT_EQ(network->type(), chromeos::TYPE_WIFI); |
344 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); | 344 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); |
345 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_8021X); | 345 EXPECT_EQ(wifi->encryption(), chromeos::SECURITY_8021X); |
346 EXPECT_EQ(wifi->name(), "ssid"); | 346 EXPECT_EQ(wifi->name(), "ssid"); |
347 EXPECT_EQ(wifi->auto_connect(), false); | 347 EXPECT_EQ(wifi->auto_connect(), false); |
348 EXPECT_EQ(wifi->eap_method(), EAP_METHOD_LEAP); | 348 EXPECT_EQ(wifi->eap_method(), EAP_METHOD_LEAP); |
349 EXPECT_EQ(wifi->eap_use_system_cas(), true); | 349 EXPECT_EQ(wifi->eap_use_system_cas(), true); |
350 EXPECT_EQ(wifi->eap_identity(), "user"); | 350 EXPECT_EQ(wifi->eap_identity(), "user"); |
351 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user"); | 351 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user"); |
352 EXPECT_EQ(wifi->eap_passphrase(), "pass"); | 352 EXPECT_EQ(wifi->eap_passphrase(), "pass"); |
353 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass"); | 353 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass"); |
354 EXPECT_EQ(wifi->eap_anonymous_identity(), "anon"); | 354 EXPECT_EQ(wifi->eap_anonymous_identity(), "anon"); |
355 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon"); | 355 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon"); |
356 } | 356 } |
357 | 357 |
358 TEST_F(OncNetworkParserTest, TestCreateNetworkOpenVPN) { | 358 TEST_F(OncNetworkParserTest, TestCreateNetworkOpenVPN) { |
359 std::string test_blob(std::string( | 359 std::string test_blob(std::string( |
360 "{" | 360 "{" |
361 " \"NetworkConfigurations\": [") + | 361 " \"NetworkConfigurations\": [") + |
362 std::string(kNetworkConfigurationOpenVPN) + std::string( | 362 std::string(kNetworkConfigurationOpenVPN) + std::string( |
363 " ]}")); | 363 " ]}")); |
364 OncNetworkParser parser(test_blob); | 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() != NULL); | 369 ASSERT_TRUE(network.get() != NULL); |
370 | 370 |
371 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); | 371 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); |
372 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); | 372 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); |
373 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); | 373 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); |
374 EXPECT_EQ("MyVPN", vpn->name()); | 374 EXPECT_EQ("MyVPN", vpn->name()); |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
433 " \"PSK\": \"passphrase\"" | 433 " \"PSK\": \"passphrase\"" |
434 " }," | 434 " }," |
435 " \"L2TP\": {" | 435 " \"L2TP\": {" |
436 " \"SaveCredentials\": false" | 436 " \"SaveCredentials\": false" |
437 " }" | 437 " }" |
438 " }" | 438 " }" |
439 " }" | 439 " }" |
440 " ]," | 440 " ]," |
441 " \"Certificates\": []" | 441 " \"Certificates\": []" |
442 "}"); | 442 "}"); |
443 OncNetworkParser parser(test_blob); | 443 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
444 | 444 |
445 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 445 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
446 EXPECT_EQ(0, parser.GetCertificatesSize()); | 446 EXPECT_EQ(0, parser.GetCertificatesSize()); |
447 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 447 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
448 ASSERT_TRUE(network != NULL); | 448 ASSERT_TRUE(network != NULL); |
449 | 449 |
450 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); | 450 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); |
451 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); | 451 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); |
452 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); | 452 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); |
453 EXPECT_EQ("MyL2TPVPN", vpn->name()); | 453 EXPECT_EQ("MyL2TPVPN", vpn->name()); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
499 "3jnX40zaK4W7GeJvhij0MRr6yUL2lvaEcWDnK6K1F90G/ybKRCTHBCJzyBe7yHhZCc+Zc" | 499 "3jnX40zaK4W7GeJvhij0MRr6yUL2lvaEcWDnK6K1F90G/ybKRCTHBCJzyBe7yHhZCc+Zc" |
500 "vKK6DTi83fELTyupy08BkXt7oPdapxmKlZxTldo9FpPXSqrdRtAWhDkEkIEf8dMf8QrQr" | 500 "vKK6DTi83fELTyupy08BkXt7oPdapxmKlZxTldo9FpPXSqrdRtAWhDkEkIEf8dMf8QrQr" |
501 "3glCWfbcQ047URYX45AHRnLTLLkJfdY8+Y3KsHoqL2UrOrct+J1u0mmnLbonN3pB2B4nd" | 501 "3glCWfbcQ047URYX45AHRnLTLLkJfdY8+Y3KsHoqL2UrOrct+J1u0mmnLbonN3pB2B4nd" |
502 "9X9vf9/uSFrgvk0iPO0Ro3UPRUIIYEP2Kx51pZZVDd++hl5gXtqe0NIpphGhxLycIdzEl" | 502 "9X9vf9/uSFrgvk0iPO0Ro3UPRUIIYEP2Kx51pZZVDd++hl5gXtqe0NIpphGhxLycIdzEl" |
503 "MCMGCSqGSIb3DQEJFTEWBBR1uVpGjHRddIEYuJhz/FgG4Onh6jAxMCEwCQYFKw4DAhoFA" | 503 "MCMGCSqGSIb3DQEJFTEWBBR1uVpGjHRddIEYuJhz/FgG4Onh6jAxMCEwCQYFKw4DAhoFA" |
504 "AQU1M+0WRDkoVGbGg1jj7q2fI67qHIECBzRYESpgt5iAgIIAA==\"" | 504 "AQU1M+0WRDkoVGbGg1jj7q2fI67qHIECBzRYESpgt5iAgIIAA==\"" |
505 " }" | 505 " }" |
506 " ]," | 506 " ]," |
507 "}"); | 507 "}"); |
508 std::string test_guid("{f998f760-272b-6939-4c2beffe428697ac}"); | 508 std::string test_guid("{f998f760-272b-6939-4c2beffe428697ac}"); |
509 OncNetworkParser parser(test_blob); | 509 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
510 ASSERT_EQ(1, parser.GetCertificatesSize()); | 510 ASSERT_EQ(1, parser.GetCertificatesSize()); |
511 | 511 |
512 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); | 512 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); |
513 EXPECT_TRUE(cert.get() != NULL); | 513 EXPECT_TRUE(cert.get() != NULL); |
514 EXPECT_EQ(net::USER_CERT, GetCertType(cert.get())); | 514 EXPECT_EQ(net::USER_CERT, GetCertType(cert.get())); |
515 | 515 |
516 EXPECT_STREQ(test_guid.c_str(), | 516 EXPECT_STREQ(test_guid.c_str(), |
517 cert->GetDefaultNickname(net::USER_CERT).c_str()); | 517 cert->GetDefaultNickname(net::USER_CERT).c_str()); |
518 net::CertificateList result_list; | 518 net::CertificateList result_list; |
519 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); | 519 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
569 "kvs+sG6j2Vp2aBSrlhALG/0BVHUhWi4F/HHJho+ncLHAg5AGO0sdAjYUdQG6tfPqjLsIA" | 569 "kvs+sG6j2Vp2aBSrlhALG/0BVHUhWi4F/HHJho+ncLHAg5AGO0sdAjYUdQG6tfPqjLsIA" |
570 "LtoKEZZdFe/JhmqOEaxWsSdu2S2RdPgCQOsP79EH58gXwu2gejCkJDmU22WL4YLuqOc17" | 570 "LtoKEZZdFe/JhmqOEaxWsSdu2S2RdPgCQOsP79EH58gXwu2gejCkJDmU22WL4YLuqOc17" |
571 "nxbDC8CAwEAATANBgkqhkiG9w0BAQQFAAOBgQCv4vMD+PMlfnftu4/6Yf/oMLE8yCOqZT" | 571 "nxbDC8CAwEAATANBgkqhkiG9w0BAQQFAAOBgQCv4vMD+PMlfnftu4/6Yf/oMLE8yCOqZT" |
572 "Q/dWCxB9PiJnOefiBeSzSZE6Uv3G7qnblZPVZaFeJMd+ostt0viCyPucFsFgLMyyoV1dM" | 572 "Q/dWCxB9PiJnOefiBeSzSZE6Uv3G7qnblZPVZaFeJMd+ostt0viCyPucFsFgLMyyoV1dM" |
573 "VPVwJT5Iq1AHehWXnTBbxUK9wioA5jOEKdroKjuSSsg/Q8Wx6cpJmttQz5olGPgstmACR" | 573 "VPVwJT5Iq1AHehWXnTBbxUK9wioA5jOEKdroKjuSSsg/Q8Wx6cpJmttQz5olGPgstmACR" |
574 "WA==\"" | 574 "WA==\"" |
575 " }" | 575 " }" |
576 " ]," | 576 " ]," |
577 "}"); | 577 "}"); |
578 std::string test_guid("{f998f760-272b-6939-4c2beffe428697aa}"); | 578 std::string test_guid("{f998f760-272b-6939-4c2beffe428697aa}"); |
579 OncNetworkParser parser(test_blob); | 579 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
580 ASSERT_EQ(1, parser.GetCertificatesSize()); | 580 ASSERT_EQ(1, parser.GetCertificatesSize()); |
581 | 581 |
582 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); | 582 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); |
583 EXPECT_TRUE(cert.get() != NULL); | 583 EXPECT_TRUE(cert.get() != NULL); |
584 EXPECT_EQ(net::SERVER_CERT, GetCertType(cert.get())); | 584 EXPECT_EQ(net::SERVER_CERT, GetCertType(cert.get())); |
585 | 585 |
586 EXPECT_STREQ(test_guid.c_str(), | 586 EXPECT_STREQ(test_guid.c_str(), |
587 cert->GetDefaultNickname(net::SERVER_CERT).c_str()); | 587 cert->GetDefaultNickname(net::SERVER_CERT).c_str()); |
588 net::CertificateList result_list; | 588 net::CertificateList result_list; |
589 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); | 589 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); |
(...skipping 10 matching lines...) Expand all Loading... |
600 | 600 |
601 } | 601 } |
602 | 602 |
603 TEST_F(OncNetworkParserTest, TestAddAuthorityCertificate) { | 603 TEST_F(OncNetworkParserTest, TestAddAuthorityCertificate) { |
604 const std::string test_blob(std::string("{" | 604 const std::string test_blob(std::string("{" |
605 " \"Certificates\": [") + | 605 " \"Certificates\": [") + |
606 std::string(kCertificateWebAuthority) + std::string( | 606 std::string(kCertificateWebAuthority) + std::string( |
607 " ]," | 607 " ]," |
608 "}")); | 608 "}")); |
609 std::string test_guid("{f998f760-272b-6939-4c2beffe428697ab}"); | 609 std::string test_guid("{f998f760-272b-6939-4c2beffe428697ab}"); |
610 OncNetworkParser parser(test_blob); | 610 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
611 ASSERT_EQ(1, parser.GetCertificatesSize()); | 611 ASSERT_EQ(1, parser.GetCertificatesSize()); |
612 | 612 |
613 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); | 613 scoped_refptr<net::X509Certificate> cert = parser.ParseCertificate(0).get(); |
614 EXPECT_TRUE(cert.get() != NULL); | 614 EXPECT_TRUE(cert.get() != NULL); |
615 EXPECT_EQ(net::CA_CERT, GetCertType(cert.get())); | 615 EXPECT_EQ(net::CA_CERT, GetCertType(cert.get())); |
616 | 616 |
617 EXPECT_STREQ(test_guid.c_str(), | 617 EXPECT_STREQ(test_guid.c_str(), |
618 cert->GetDefaultNickname(net::CA_CERT).c_str()); | 618 cert->GetDefaultNickname(net::CA_CERT).c_str()); |
619 net::CertificateList result_list; | 619 net::CertificateList result_list; |
620 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); | 620 OncNetworkParser::ListCertsWithNickname(test_guid, &result_list); |
621 ASSERT_EQ(1ul, result_list.size()); | 621 ASSERT_EQ(1ul, result_list.size()); |
622 EXPECT_EQ(net::CA_CERT, GetCertType(result_list[0].get())); | 622 EXPECT_EQ(net::CA_CERT, GetCertType(result_list[0].get())); |
623 | 623 |
624 SECKEYPrivateKeyList* privkey_list = | 624 SECKEYPrivateKeyList* privkey_list = |
625 PK11_ListPrivKeysInSlot(slot_->os_module_handle(), NULL, NULL); | 625 PK11_ListPrivKeysInSlot(slot_->os_module_handle(), NULL, NULL); |
626 EXPECT_FALSE(privkey_list); | 626 EXPECT_FALSE(privkey_list); |
627 | 627 |
628 SECKEYPublicKeyList* pubkey_list = | 628 SECKEYPublicKeyList* pubkey_list = |
629 PK11_ListPublicKeysInSlot(slot_->os_module_handle(), NULL); | 629 PK11_ListPublicKeysInSlot(slot_->os_module_handle(), NULL); |
630 EXPECT_FALSE(pubkey_list); | 630 EXPECT_FALSE(pubkey_list); |
631 | |
632 } | 631 } |
633 | 632 |
634 TEST_F(OncNetworkParserTest, TestNetworkAndCertificate) { | 633 TEST_F(OncNetworkParserTest, TestNetworkAndCertificate) { |
635 std::string test_blob(std::string( | 634 std::string test_blob(std::string( |
636 "{" | 635 "{" |
637 " \"NetworkConfigurations\": [") + | 636 " \"NetworkConfigurations\": [") + |
638 std::string(kNetworkConfigurationOpenVPN) + std::string( | 637 std::string(kNetworkConfigurationOpenVPN) + std::string( |
639 " ]," | 638 " ]," |
640 " \"Certificates\": [") + | 639 " \"Certificates\": [") + |
641 std::string(kCertificateWebAuthority) + std::string( | 640 std::string(kCertificateWebAuthority) + std::string( |
642 " ]," | 641 " ]," |
643 "}")); | 642 "}")); |
644 OncNetworkParser parser(test_blob); | 643 OncNetworkParser parser(test_blob, NetworkUIData::ONC_SOURCE_USER_IMPORT); |
645 | 644 |
646 EXPECT_EQ(1, parser.GetCertificatesSize()); | 645 EXPECT_EQ(1, parser.GetCertificatesSize()); |
647 EXPECT_TRUE(parser.ParseCertificate(0)); | 646 EXPECT_TRUE(parser.ParseCertificate(0)); |
648 | 647 |
649 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); | 648 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); |
650 scoped_ptr<Network> network(parser.ParseNetwork(0)); | 649 scoped_ptr<Network> network(parser.ParseNetwork(0)); |
651 ASSERT_TRUE(network.get() != NULL); | 650 ASSERT_TRUE(network.get() != NULL); |
652 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); | 651 EXPECT_EQ(network->type(), chromeos::TYPE_VPN); |
653 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); | 652 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); |
654 EXPECT_EQ(PROVIDER_TYPE_OPEN_VPN, vpn->provider_type()); | 653 EXPECT_EQ(PROVIDER_TYPE_OPEN_VPN, vpn->provider_type()); |
655 } | 654 } |
656 | 655 |
657 } // namespace chromeos | 656 } // namespace chromeos |
OLD | NEW |