Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(391)

Side by Side Diff: chrome/browser/chromeos/cros/onc_network_parser_unittest.cc

Issue 11299236: This moves the ONC parsing code into chromeos/network/onc (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove translated strings Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
11 #include "base/file_util.h" 11 #include "base/file_util.h"
12 #include "base/json/json_reader.h" 12 #include "base/json/json_reader.h"
13 #include "base/json/json_string_value_serializer.h" 13 #include "base/json/json_string_value_serializer.h"
14 #include "base/lazy_instance.h" 14 #include "base/lazy_instance.h"
15 #include "base/message_loop.h" 15 #include "base/message_loop.h"
16 #include "base/path_service.h" 16 #include "base/path_service.h"
17 #include "base/stringprintf.h" 17 #include "base/stringprintf.h"
18 #include "base/threading/thread_restrictions.h" 18 #include "base/threading/thread_restrictions.h"
19 #include "base/values.h" 19 #include "base/values.h"
20 #include "chrome/browser/chromeos/cros/certificate_pattern.h" 20 #include "chrome/browser/chromeos/cros/certificate_pattern.h"
21 #include "chrome/browser/chromeos/cros/cros_library.h" 21 #include "chrome/browser/chromeos/cros/cros_library.h"
22 #include "chrome/browser/chromeos/cros/network_library.h" 22 #include "chrome/browser/chromeos/cros/network_library.h"
23 #include "chrome/browser/chromeos/cros/onc_constants.h"
24 #include "chrome/browser/chromeos/login/mock_user_manager.h" 23 #include "chrome/browser/chromeos/login/mock_user_manager.h"
25 #include "chrome/browser/chromeos/network_settings/onc_utils.h"
26 #include "chrome/browser/net/pref_proxy_config_tracker_impl.h" 24 #include "chrome/browser/net/pref_proxy_config_tracker_impl.h"
27 #include "chrome/common/chrome_paths.h" 25 #include "chrome/common/chrome_paths.h"
28 #include "chrome/common/net/x509_certificate_model.h" 26 #include "chrome/common/net/x509_certificate_model.h"
29 #include "chrome/test/base/testing_browser_process.h" 27 #include "chrome/test/base/testing_browser_process.h"
30 #include "chrome/test/base/testing_pref_service.h" 28 #include "chrome/test/base/testing_pref_service.h"
31 #include "chromeos/dbus/dbus_thread_manager.h" 29 #include "chromeos/dbus/dbus_thread_manager.h"
30 #include "chromeos/network/onc/onc_constants.h"
31 #include "chromeos/network/onc/onc_utils.h"
32 #include "content/public/test/test_browser_thread.h" 32 #include "content/public/test/test_browser_thread.h"
33 #include "crypto/nss_util.h" 33 #include "crypto/nss_util.h"
34 #include "net/base/cert_type.h" 34 #include "net/base/cert_type.h"
35 #include "net/base/crypto_module.h" 35 #include "net/base/crypto_module.h"
36 #include "net/base/nss_cert_database.h" 36 #include "net/base/nss_cert_database.h"
37 #include "net/base/x509_certificate.h" 37 #include "net/base/x509_certificate.h"
38 #include "net/proxy/proxy_config.h" 38 #include "net/proxy/proxy_config.h"
39 #include "testing/gtest/include/gtest/gtest.h" 39 #include "testing/gtest/include/gtest/gtest.h"
40 #include "third_party/cros_system_api/dbus/service_constants.h" 40 #include "third_party/cros_system_api/dbus/service_constants.h"
41 41
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 bool bool_value = false; 184 bool bool_value = false;
185 value->GetAsBoolean(&bool_value); 185 value->GetAsBoolean(&bool_value);
186 EXPECT_EQ(expected, bool_value); 186 EXPECT_EQ(expected, bool_value);
187 } 187 }
188 188
189 void OncNetworkParserTest::TestProxySettings(const std::string filename, 189 void OncNetworkParserTest::TestProxySettings(const std::string filename,
190 net::ProxyConfig* net_config) { 190 net::ProxyConfig* net_config) {
191 // Parse Network Configuration including ProxySettings dictionary. 191 // Parse Network Configuration including ProxySettings dictionary.
192 scoped_ptr<base::ListValue> network_configs = ReadNetworkConfigs(filename); 192 scoped_ptr<base::ListValue> network_configs = ReadNetworkConfigs(filename);
193 OncNetworkParser parser(*network_configs, 193 OncNetworkParser parser(*network_configs,
194 NetworkUIData::ONC_SOURCE_USER_IMPORT); 194 onc::ONC_SOURCE_USER_IMPORT);
195 195
196 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 196 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
197 ASSERT_TRUE(network.get()); 197 ASSERT_TRUE(network.get());
198 EXPECT_FALSE(network->proxy_config().empty()); 198 EXPECT_FALSE(network->proxy_config().empty());
199 199
200 // Deserialize ProxyConfig string property of Network into 200 // Deserialize ProxyConfig string property of Network into
201 // ProxyConfigDictionary and decode into net::ProxyConfig. 201 // ProxyConfigDictionary and decode into net::ProxyConfig.
202 JSONStringValueSerializer serializer(network->proxy_config()); 202 JSONStringValueSerializer serializer(network->proxy_config());
203 scoped_ptr<Value> value(serializer.Deserialize(NULL, NULL)); 203 scoped_ptr<Value> value(serializer.Deserialize(NULL, NULL));
204 ASSERT_TRUE(value.get()); 204 ASSERT_TRUE(value.get());
205 EXPECT_TRUE(value->GetType() == Value::TYPE_DICTIONARY); 205 EXPECT_TRUE(value->GetType() == Value::TYPE_DICTIONARY);
206 DictionaryValue* dict = static_cast<DictionaryValue*>(value.get()); 206 DictionaryValue* dict = static_cast<DictionaryValue*>(value.get());
207 ProxyConfigDictionary proxy_dict(dict); 207 ProxyConfigDictionary proxy_dict(dict);
208 EXPECT_TRUE(PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(proxy_dict, 208 EXPECT_TRUE(PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(proxy_dict,
209 net_config)); 209 net_config));
210 } 210 }
211 211
212 TEST_F(OncNetworkParserTest, TestCreateNetworkWifi) { 212 TEST_F(OncNetworkParserTest, TestCreateNetworkWifi) {
213 scoped_ptr<base::ListValue> network_configs = 213 scoped_ptr<base::ListValue> network_configs =
214 ReadNetworkConfigs("network-wifi.onc"); 214 ReadNetworkConfigs("network-wifi.onc");
215 OncNetworkParser parser(*network_configs, 215 OncNetworkParser parser(*network_configs,
216 NetworkUIData::ONC_SOURCE_USER_IMPORT); 216 onc::ONC_SOURCE_USER_IMPORT);
217 217
218 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 218 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
219 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 219 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
220 ASSERT_TRUE(network.get()); 220 ASSERT_TRUE(network.get());
221 221
222 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 222 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
223 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 223 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
224 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption()); 224 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption());
225 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep); 225 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurityWep);
226 EXPECT_EQ("ssid", wifi->name()); 226 EXPECT_EQ("ssid", wifi->name());
227 CheckStringProperty(wifi, PROPERTY_INDEX_SSID, "ssid"); 227 CheckStringProperty(wifi, PROPERTY_INDEX_SSID, "ssid");
228 EXPECT_FALSE(wifi->auto_connect()); 228 EXPECT_FALSE(wifi->auto_connect());
229 EXPECT_EQ("0x1234567890", wifi->passphrase()); 229 EXPECT_EQ("0x1234567890", wifi->passphrase());
230 CheckStringProperty(wifi, PROPERTY_INDEX_PASSPHRASE, "0x1234567890"); 230 CheckStringProperty(wifi, PROPERTY_INDEX_PASSPHRASE, "0x1234567890");
231 } 231 }
232 232
233 TEST_F(OncNetworkParserTest, TestCreateNetworkEthernet) { 233 TEST_F(OncNetworkParserTest, TestCreateNetworkEthernet) {
234 scoped_ptr<base::ListValue> network_configs = 234 scoped_ptr<base::ListValue> network_configs =
235 ReadNetworkConfigs("network-ethernet.onc"); 235 ReadNetworkConfigs("network-ethernet.onc");
236 OncNetworkParser parser(*network_configs, 236 OncNetworkParser parser(*network_configs,
237 NetworkUIData::ONC_SOURCE_USER_IMPORT); 237 onc::ONC_SOURCE_USER_IMPORT);
238 238
239 EXPECT_GE(parser.GetNetworkConfigsSize(), 1); 239 EXPECT_GE(parser.GetNetworkConfigsSize(), 1);
240 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 240 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
241 ASSERT_TRUE(network.get()); 241 ASSERT_TRUE(network.get());
242 242
243 EXPECT_EQ(chromeos::TYPE_ETHERNET, network->type()); 243 EXPECT_EQ(chromeos::TYPE_ETHERNET, network->type());
244 EthernetNetwork* ethernet = static_cast<EthernetNetwork*>(network.get()); 244 EthernetNetwork* ethernet = static_cast<EthernetNetwork*>(network.get());
245 EXPECT_EQ(ethernet->unique_id(), "{485d6076-dd44-6b6d-69787465725f5045}"); 245 EXPECT_EQ(ethernet->unique_id(), "{485d6076-dd44-6b6d-69787465725f5045}");
246 } 246 }
247 247
248 TEST_F(OncNetworkParserTest, TestLoadWifiCertificatePattern) { 248 TEST_F(OncNetworkParserTest, TestLoadWifiCertificatePattern) {
249 scoped_ptr<base::ListValue> network_configs = 249 scoped_ptr<base::ListValue> network_configs =
250 ReadNetworkConfigs("cert-pattern.onc"); 250 ReadNetworkConfigs("cert-pattern.onc");
251 OncNetworkParser parser(*network_configs, 251 OncNetworkParser parser(*network_configs,
252 NetworkUIData::ONC_SOURCE_USER_IMPORT); 252 onc::ONC_SOURCE_USER_IMPORT);
253 ASSERT_TRUE(parser.parse_error().empty()); 253 ASSERT_TRUE(parser.parse_error().empty());
254 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 254 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
255 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 255 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
256 ASSERT_TRUE(network.get()); 256 ASSERT_TRUE(network.get());
257 257
258 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 258 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
259 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 259 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
260 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); 260 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption());
261 EXPECT_EQ("WirelessNetwork", wifi->name()); 261 EXPECT_EQ("WirelessNetwork", wifi->name());
262 EXPECT_FALSE(wifi->auto_connect()); 262 EXPECT_FALSE(wifi->auto_connect());
263 EXPECT_EQ("", wifi->passphrase()); 263 EXPECT_EQ("", wifi->passphrase());
264 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method()); 264 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method());
265 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type()); 265 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type());
266 EXPECT_EQ("Google, Inc.", 266 EXPECT_EQ("Google, Inc.",
267 wifi->client_cert_pattern().issuer().organization()); 267 wifi->client_cert_pattern().issuer().organization());
268 ASSERT_EQ(2ul, wifi->client_cert_pattern().enrollment_uri_list().size()); 268 ASSERT_EQ(2ul, wifi->client_cert_pattern().enrollment_uri_list().size());
269 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", 269 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ",
270 wifi->client_cert_pattern().enrollment_uri_list()[0]); 270 wifi->client_cert_pattern().enrollment_uri_list()[0]);
271 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", 271 EXPECT_EQ("chrome-extension://abc/keygen-cert.html",
272 wifi->client_cert_pattern().enrollment_uri_list()[1]); 272 wifi->client_cert_pattern().enrollment_uri_list()[1]);
273 } 273 }
274 274
275 275
276 TEST_F(OncNetworkParserTest, TestLoadVPNCertificatePattern) { 276 TEST_F(OncNetworkParserTest, TestLoadVPNCertificatePattern) {
277 scoped_ptr<base::ListValue> network_configs = 277 scoped_ptr<base::ListValue> network_configs =
278 ReadNetworkConfigs("cert-pattern-vpn.onc"); 278 ReadNetworkConfigs("cert-pattern-vpn.onc");
279 OncNetworkParser parser(*network_configs, 279 OncNetworkParser parser(*network_configs,
280 NetworkUIData::ONC_SOURCE_USER_IMPORT); 280 onc::ONC_SOURCE_USER_IMPORT);
281 ASSERT_TRUE(parser.parse_error().empty()); 281 ASSERT_TRUE(parser.parse_error().empty());
282 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 282 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
283 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 283 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
284 ASSERT_TRUE(network.get()); 284 ASSERT_TRUE(network.get());
285 285
286 EXPECT_EQ(chromeos::TYPE_VPN, network->type()); 286 EXPECT_EQ(chromeos::TYPE_VPN, network->type());
287 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); 287 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get());
288 EXPECT_EQ("MyVPN", vpn->name()); 288 EXPECT_EQ("MyVPN", vpn->name());
289 EXPECT_FALSE(vpn->auto_connect()); 289 EXPECT_FALSE(vpn->auto_connect());
290 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, vpn->client_cert_type()); 290 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, vpn->client_cert_type());
291 EXPECT_EQ("Google, Inc.", 291 EXPECT_EQ("Google, Inc.",
292 vpn->client_cert_pattern().issuer().organization()); 292 vpn->client_cert_pattern().issuer().organization());
293 ASSERT_EQ(2ul, vpn->client_cert_pattern().enrollment_uri_list().size()); 293 ASSERT_EQ(2ul, vpn->client_cert_pattern().enrollment_uri_list().size());
294 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ", 294 EXPECT_EQ("http://youtu.be/dQw4w9WgXcQ",
295 vpn->client_cert_pattern().enrollment_uri_list()[0]); 295 vpn->client_cert_pattern().enrollment_uri_list()[0]);
296 EXPECT_EQ("chrome-extension://abc/keygen-cert.html", 296 EXPECT_EQ("chrome-extension://abc/keygen-cert.html",
297 vpn->client_cert_pattern().enrollment_uri_list()[1]); 297 vpn->client_cert_pattern().enrollment_uri_list()[1]);
298 } 298 }
299 299
300 TEST_F(OncNetworkParserTest, TestNoCertificatePatternForDevicePolicy) { 300 TEST_F(OncNetworkParserTest, TestNoCertificatePatternForDevicePolicy) {
301 scoped_ptr<base::ListValue> network_configs = 301 scoped_ptr<base::ListValue> network_configs =
302 ReadNetworkConfigs("cert-pattern.onc"); 302 ReadNetworkConfigs("cert-pattern.onc");
303 OncNetworkParser parser(*network_configs, 303 OncNetworkParser parser(*network_configs,
304 NetworkUIData::ONC_SOURCE_DEVICE_POLICY); 304 onc::ONC_SOURCE_DEVICE_POLICY);
305 305
306 // Make sure we fail when parsing a certificate pattern from a device policy 306 // Make sure we fail when parsing a certificate pattern from a device policy
307 // ONC file. 307 // ONC file.
308 ASSERT_TRUE(parser.parse_error().empty()); 308 ASSERT_TRUE(parser.parse_error().empty());
309 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 309 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
310 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 310 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
311 ASSERT_TRUE(network.get()); 311 ASSERT_TRUE(network.get());
312 312
313 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 313 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
314 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 314 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
315 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); 315 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption());
316 EXPECT_EQ("WirelessNetwork", wifi->name()); 316 EXPECT_EQ("WirelessNetwork", wifi->name());
317 EXPECT_FALSE(wifi->auto_connect()); 317 EXPECT_FALSE(wifi->auto_connect());
318 EXPECT_EQ("", wifi->passphrase()); 318 EXPECT_EQ("", wifi->passphrase());
319 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method()); 319 EXPECT_EQ(chromeos::EAP_METHOD_TLS, wifi->eap_method());
320 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type()); 320 EXPECT_EQ(chromeos::CLIENT_CERT_TYPE_PATTERN, wifi->client_cert_type());
321 EXPECT_EQ("", wifi->client_cert_pattern().issuer().organization()); 321 EXPECT_EQ("", wifi->client_cert_pattern().issuer().organization());
322 ASSERT_EQ(0ul, wifi->client_cert_pattern().enrollment_uri_list().size()); 322 ASSERT_EQ(0ul, wifi->client_cert_pattern().enrollment_uri_list().size());
323 } 323 }
324 324
325 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP1) { 325 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP1) {
326 scoped_ptr<base::ListValue> network_configs = 326 scoped_ptr<base::ListValue> network_configs =
327 ReadNetworkConfigs("network-wifi-eap1.onc"); 327 ReadNetworkConfigs("network-wifi-eap1.onc");
328 OncNetworkParser parser(*network_configs, 328 OncNetworkParser parser(*network_configs,
329 NetworkUIData::ONC_SOURCE_USER_IMPORT); 329 onc::ONC_SOURCE_USER_IMPORT);
330 330
331 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 331 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
332 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 332 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
333 ASSERT_TRUE(network.get()); 333 ASSERT_TRUE(network.get());
334 334
335 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 335 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
336 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 336 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
337 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); 337 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption());
338 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x); 338 CheckStringProperty(wifi, PROPERTY_INDEX_SECURITY, flimflam::kSecurity8021x);
339 EXPECT_EQ("ssid", wifi->name()); 339 EXPECT_EQ("ssid", wifi->name());
340 EXPECT_EQ(true, wifi->auto_connect()); 340 EXPECT_EQ(true, wifi->auto_connect());
341 CheckBooleanProperty(wifi, PROPERTY_INDEX_AUTO_CONNECT, true); 341 CheckBooleanProperty(wifi, PROPERTY_INDEX_AUTO_CONNECT, true);
342 EXPECT_EQ(EAP_METHOD_PEAP, wifi->eap_method()); 342 EXPECT_EQ(EAP_METHOD_PEAP, wifi->eap_method());
343 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_METHOD, 343 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_METHOD,
344 flimflam::kEapMethodPEAP); 344 flimflam::kEapMethodPEAP);
345 EXPECT_FALSE(wifi->eap_use_system_cas()); 345 EXPECT_FALSE(wifi->eap_use_system_cas());
346 } 346 }
347 347
348 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP2) { 348 TEST_F(OncNetworkParserTest, TestCreateNetworkWifiEAP2) {
349 scoped_ptr<base::ListValue> network_configs = 349 scoped_ptr<base::ListValue> network_configs =
350 ReadNetworkConfigs("network-wifi-eap2.onc"); 350 ReadNetworkConfigs("network-wifi-eap2.onc");
351 OncNetworkParser parser(*network_configs, 351 OncNetworkParser parser(*network_configs,
352 NetworkUIData::ONC_SOURCE_USER_IMPORT); 352 onc::ONC_SOURCE_USER_IMPORT);
353 353
354 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 354 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
355 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 355 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
356 ASSERT_TRUE(network.get()); 356 ASSERT_TRUE(network.get());
357 357
358 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 358 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
359 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 359 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
360 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption()); 360 EXPECT_EQ(chromeos::SECURITY_8021X, wifi->encryption());
361 EXPECT_EQ("ssid", wifi->name()); 361 EXPECT_EQ("ssid", wifi->name());
362 EXPECT_FALSE(wifi->auto_connect()); 362 EXPECT_FALSE(wifi->auto_connect());
363 EXPECT_EQ(EAP_METHOD_LEAP, wifi->eap_method()); 363 EXPECT_EQ(EAP_METHOD_LEAP, wifi->eap_method());
364 EXPECT_EQ(true, wifi->eap_use_system_cas()); 364 EXPECT_EQ(true, wifi->eap_use_system_cas());
365 EXPECT_EQ("user", wifi->eap_identity()); 365 EXPECT_EQ("user", wifi->eap_identity());
366 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user"); 366 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_IDENTITY, "user");
367 EXPECT_EQ("pass", wifi->eap_passphrase()); 367 EXPECT_EQ("pass", wifi->eap_passphrase());
368 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass"); 368 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_PASSWORD, "pass");
369 EXPECT_EQ("anon", wifi->eap_anonymous_identity()); 369 EXPECT_EQ("anon", wifi->eap_anonymous_identity());
370 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon"); 370 CheckStringProperty(wifi, PROPERTY_INDEX_EAP_ANONYMOUS_IDENTITY, "anon");
371 } 371 }
372 372
373 TEST_F(OncNetworkParserTest, TestCreateNetworkUnknownFields) { 373 TEST_F(OncNetworkParserTest, TestCreateNetworkUnknownFields) {
374 scoped_ptr<base::ListValue> network_configs = 374 scoped_ptr<base::ListValue> network_configs =
375 ReadNetworkConfigs("network-unknown-fields.onc"); 375 ReadNetworkConfigs("network-unknown-fields.onc");
376 OncNetworkParser parser(*network_configs, 376 OncNetworkParser parser(*network_configs,
377 NetworkUIData::ONC_SOURCE_USER_IMPORT); 377 onc::ONC_SOURCE_USER_IMPORT);
378 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 378 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
379 ASSERT_TRUE(network.get()); 379 ASSERT_TRUE(network.get());
380 380
381 EXPECT_EQ(chromeos::TYPE_WIFI, network->type()); 381 EXPECT_EQ(chromeos::TYPE_WIFI, network->type());
382 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get()); 382 WifiNetwork* wifi = static_cast<WifiNetwork*>(network.get());
383 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption()); 383 EXPECT_EQ(chromeos::SECURITY_WEP, wifi->encryption());
384 EXPECT_EQ("ssid", wifi->name()); 384 EXPECT_EQ("ssid", wifi->name());
385 EXPECT_EQ("z123456789012", wifi->passphrase()); 385 EXPECT_EQ("z123456789012", wifi->passphrase());
386 } 386 }
387 387
388 TEST_F(OncNetworkParserTest, TestCreateNetworkOpenVPN) { 388 TEST_F(OncNetworkParserTest, TestCreateNetworkOpenVPN) {
389 scoped_ptr<base::ListValue> network_configs = 389 scoped_ptr<base::ListValue> network_configs =
390 ReadNetworkConfigs("network-openvpn.onc"); 390 ReadNetworkConfigs("network-openvpn.onc");
391 OncNetworkParser parser(*network_configs, 391 OncNetworkParser parser(*network_configs,
392 NetworkUIData::ONC_SOURCE_USER_IMPORT); 392 onc::ONC_SOURCE_USER_IMPORT);
393 393
394 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 394 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
395 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 395 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
396 ASSERT_TRUE(network.get() != NULL); 396 ASSERT_TRUE(network.get() != NULL);
397 397
398 EXPECT_EQ(chromeos::TYPE_VPN, network->type()); 398 EXPECT_EQ(chromeos::TYPE_VPN, network->type());
399 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); 399 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN);
400 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); 400 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get());
401 EXPECT_EQ("MyVPN", vpn->name()); 401 EXPECT_EQ("MyVPN", vpn->name());
402 EXPECT_EQ(PROVIDER_TYPE_OPEN_VPN, vpn->provider_type()); 402 EXPECT_EQ(PROVIDER_TYPE_OPEN_VPN, vpn->provider_type());
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
440 CheckStringProperty(vpn, PROPERTY_INDEX_OPEN_VPN_TLSREMOTE, 440 CheckStringProperty(vpn, PROPERTY_INDEX_OPEN_VPN_TLSREMOTE,
441 "MyOpenVPNServer"); 441 "MyOpenVPNServer");
442 EXPECT_FALSE(vpn->save_credentials()); 442 EXPECT_FALSE(vpn->save_credentials());
443 EXPECT_EQ("{55ca78f6-0842-4e1b-96a3-09a9e1a26ef5}", vpn->ca_cert_nss()); 443 EXPECT_EQ("{55ca78f6-0842-4e1b-96a3-09a9e1a26ef5}", vpn->ca_cert_nss());
444 } 444 }
445 445
446 TEST_F(OncNetworkParserTest, TestCreateNetworkL2TPIPsec) { 446 TEST_F(OncNetworkParserTest, TestCreateNetworkL2TPIPsec) {
447 scoped_ptr<base::ListValue> network_configs = 447 scoped_ptr<base::ListValue> network_configs =
448 ReadNetworkConfigs("network-l2tp-ipsec.onc"); 448 ReadNetworkConfigs("network-l2tp-ipsec.onc");
449 OncNetworkParser parser(*network_configs, 449 OncNetworkParser parser(*network_configs,
450 NetworkUIData::ONC_SOURCE_USER_IMPORT); 450 onc::ONC_SOURCE_USER_IMPORT);
451 451
452 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 452 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
453 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL)); 453 scoped_ptr<Network> network(parser.ParseNetwork(0, NULL));
454 ASSERT_TRUE(network != NULL); 454 ASSERT_TRUE(network != NULL);
455 455
456 EXPECT_EQ(chromeos::TYPE_VPN, network->type()); 456 EXPECT_EQ(chromeos::TYPE_VPN, network->type());
457 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN); 457 CheckStringProperty(network.get(), PROPERTY_INDEX_TYPE, flimflam::kTypeVPN);
458 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get()); 458 VirtualNetwork* vpn = static_cast<VirtualNetwork*>(network.get());
459 EXPECT_EQ("MyL2TPVPN", vpn->name()); 459 EXPECT_EQ("MyL2TPVPN", vpn->name());
460 EXPECT_EQ(PROVIDER_TYPE_L2TP_IPSEC_PSK, vpn->provider_type()); 460 EXPECT_EQ(PROVIDER_TYPE_L2TP_IPSEC_PSK, vpn->provider_type());
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
541 } 541 }
542 542
543 TEST(OncNetworkParserUserExpansionTest, GetUserExpandedValue) { 543 TEST(OncNetworkParserUserExpansionTest, GetUserExpandedValue) {
544 ScopedMockUserManagerEnabler mock_user_manager; 544 ScopedMockUserManagerEnabler mock_user_manager;
545 mock_user_manager.user_manager()->SetLoggedInUser("onc@example.com"); 545 mock_user_manager.user_manager()->SetLoggedInUser("onc@example.com");
546 546
547 EXPECT_CALL(*mock_user_manager.user_manager(), IsUserLoggedIn()) 547 EXPECT_CALL(*mock_user_manager.user_manager(), IsUserLoggedIn())
548 .Times(2) 548 .Times(2)
549 .WillRepeatedly(Return(false)); 549 .WillRepeatedly(Return(false));
550 550
551 NetworkUIData::ONCSource source = NetworkUIData::ONC_SOURCE_USER_IMPORT; 551 onc::ONCSource source = onc::ONC_SOURCE_USER_IMPORT;
552 552
553 // Setup environment needed by UserManager. 553 // Setup environment needed by UserManager.
554 MessageLoop loop; 554 MessageLoop loop;
555 content::TestBrowserThread ui_thread(content::BrowserThread::UI, &loop); 555 content::TestBrowserThread ui_thread(content::BrowserThread::UI, &loop);
556 base::ShadowingAtExitManager at_exit_manager; 556 base::ShadowingAtExitManager at_exit_manager;
557 ScopedTestingLocalState local_state( 557 ScopedTestingLocalState local_state(
558 static_cast<TestingBrowserProcess*>(g_browser_process)); 558 static_cast<TestingBrowserProcess*>(g_browser_process));
559 559
560 base::StringValue login_id_pattern("a ${LOGIN_ID} b"); 560 base::StringValue login_id_pattern("a ${LOGIN_ID} b");
561 base::StringValue login_email_pattern("a ${LOGIN_EMAIL} b"); 561 base::StringValue login_email_pattern("a ${LOGIN_EMAIL} b");
(...skipping 16 matching lines...) Expand all
578 login_id_pattern, source)); 578 login_id_pattern, source));
579 EXPECT_EQ("a onc@example.com b", 579 EXPECT_EQ("a onc@example.com b",
580 chromeos::OncNetworkParser::GetUserExpandedValue( 580 chromeos::OncNetworkParser::GetUserExpandedValue(
581 login_email_pattern, source)); 581 login_email_pattern, source));
582 } 582 }
583 583
584 TEST_F(OncNetworkParserTest, TestRemoveNetworkWifi) { 584 TEST_F(OncNetworkParserTest, TestRemoveNetworkWifi) {
585 scoped_ptr<base::ListValue> network_configs = 585 scoped_ptr<base::ListValue> network_configs =
586 ReadNetworkConfigs("network-wifi-remove.onc"); 586 ReadNetworkConfigs("network-wifi-remove.onc");
587 OncNetworkParser parser(*network_configs, 587 OncNetworkParser parser(*network_configs,
588 NetworkUIData::ONC_SOURCE_USER_IMPORT); 588 onc::ONC_SOURCE_USER_IMPORT);
589 EXPECT_EQ(1, parser.GetNetworkConfigsSize()); 589 EXPECT_EQ(1, parser.GetNetworkConfigsSize());
590 bool marked_for_removal = false; 590 bool marked_for_removal = false;
591 scoped_ptr<Network> network(parser.ParseNetwork(0, &marked_for_removal)); 591 scoped_ptr<Network> network(parser.ParseNetwork(0, &marked_for_removal));
592 592
593 EXPECT_TRUE(marked_for_removal); 593 EXPECT_TRUE(marked_for_removal);
594 EXPECT_EQ("{485d6076-dd44-6b6d-69787465725f5045}", network->unique_id()); 594 EXPECT_EQ("{485d6076-dd44-6b6d-69787465725f5045}", network->unique_id());
595 } 595 }
596 596
597 } // namespace chromeos 597 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698