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

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

Issue 14846004: Migrate ProxyConfigServiceImpl to NetworkStateHandler and NetworkProfileHandler. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased. Created 7 years, 7 months 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/network_property_ui_data.h" 5 #include "chrome/browser/chromeos/cros/network_property_ui_data.h"
6 6
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "chromeos/network/network_ui_data.h" 8 #include "chromeos/network/onc/onc_constants.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 namespace chromeos { 11 namespace chromeos {
12 12
13 class NetworkUIDataTest : public testing::Test { 13 class NetworkUIDataTest : public testing::Test {
14 protected: 14 protected:
15 NetworkUIDataTest() {} 15 NetworkUIDataTest() {}
16 virtual ~NetworkUIDataTest() {} 16 virtual ~NetworkUIDataTest() {}
17 17
18 void CheckProperty(const NetworkPropertyUIData& property, 18 void CheckProperty(const NetworkPropertyUIData& property,
(...skipping 10 matching lines...) Expand all
29 EXPECT_EQ(expected_managed, property.managed()); 29 EXPECT_EQ(expected_managed, property.managed());
30 EXPECT_EQ(expected_recommended, property.recommended()); 30 EXPECT_EQ(expected_recommended, property.recommended());
31 EXPECT_EQ(expected_editable, property.editable()); 31 EXPECT_EQ(expected_editable, property.editable());
32 } 32 }
33 }; 33 };
34 34
35 TEST_F(NetworkUIDataTest, PropertyInit) { 35 TEST_F(NetworkUIDataTest, PropertyInit) {
36 NetworkPropertyUIData empty_prop; 36 NetworkPropertyUIData empty_prop;
37 CheckProperty(empty_prop, NULL, false, false, true); 37 CheckProperty(empty_prop, NULL, false, false, true);
38 38
39 NetworkUIData empty_data; 39 NetworkPropertyUIData null_prop(onc::ONC_SOURCE_NONE);
40 NetworkPropertyUIData null_prop(empty_data);
41 CheckProperty(null_prop, NULL, false, false, true); 40 CheckProperty(null_prop, NULL, false, false, true);
42
43 base::DictionaryValue empty_dict;
44 NetworkUIData empty_data_2(empty_dict);
45 NetworkPropertyUIData empty_dict_prop(empty_data_2);
46 CheckProperty(empty_dict_prop, NULL, false, false, true);
47
48 } 41 }
49 42
50 TEST_F(NetworkUIDataTest, ParseOncProperty) { 43 TEST_F(NetworkUIDataTest, ParseOncProperty) {
51 base::DictionaryValue ui_data_dict;
52 NetworkUIData ui_data;
53
54 base::DictionaryValue onc; 44 base::DictionaryValue onc;
55 45
56 base::StringValue val_a("a"); 46 base::StringValue val_a("a");
57 base::StringValue val_b("b"); 47 base::StringValue val_b("b");
58 base::StringValue val_a_a("a_a"); 48 base::StringValue val_a_a("a_a");
59 base::StringValue val_a_b("a_b"); 49 base::StringValue val_a_b("a_b");
60 50
61 onc.Set("a", val_a.DeepCopy()); 51 onc.Set("a", val_a.DeepCopy());
62 onc.Set("b", val_b.DeepCopy()); 52 onc.Set("b", val_b.DeepCopy());
63 onc.Set("a.a", val_a_a.DeepCopy()); 53 onc.Set("a.a", val_a_a.DeepCopy());
64 onc.Set("a.b", val_a_b.DeepCopy()); 54 onc.Set("a.b", val_a_b.DeepCopy());
65 base::ListValue recommended; 55 base::ListValue recommended;
66 recommended.Append(new base::StringValue("b")); 56 recommended.AppendString("b");
67 recommended.Append(new base::StringValue("c")); 57 recommended.AppendString("c");
68 recommended.Append(new base::StringValue("a.a")); 58 recommended.AppendString("a.a");
69 onc.Set("Recommended", recommended.DeepCopy()); 59 onc.Set("Recommended", recommended.DeepCopy());
70 onc.Set("a.Recommended", recommended.DeepCopy()); 60 onc.Set("a.Recommended", recommended.DeepCopy());
71 61
72 NetworkPropertyUIData prop; 62 NetworkPropertyUIData prop;
73 63
74 ui_data.set_onc_source(onc::ONC_SOURCE_USER_IMPORT); 64 prop.ParseOncProperty(onc::ONC_SOURCE_NONE, &onc, "a");
75 ui_data.FillDictionary(&ui_data_dict);
76
77 NetworkUIData empty_data;
78 prop.ParseOncProperty(empty_data, &onc, "a");
79 CheckProperty(prop, NULL, false, false, true); 65 CheckProperty(prop, NULL, false, false, true);
80 66
81 prop.ParseOncProperty(ui_data, &onc, "a"); 67 onc::ONCSource source = onc::ONC_SOURCE_USER_IMPORT;
68
69 prop.ParseOncProperty(source, &onc, "a");
82 CheckProperty(prop, NULL, false, false, true); 70 CheckProperty(prop, NULL, false, false, true);
83 71
84 prop.ParseOncProperty(ui_data, &onc, "a.b"); 72 prop.ParseOncProperty(source, &onc, "a.b");
85 CheckProperty(prop, NULL, false, false, true); 73 CheckProperty(prop, NULL, false, false, true);
86 74
87 prop.ParseOncProperty(ui_data, &onc, "c"); 75 prop.ParseOncProperty(source, &onc, "c");
88 CheckProperty(prop, NULL, false, false, true); 76 CheckProperty(prop, NULL, false, false, true);
89 77
90 ui_data.set_onc_source(onc::ONC_SOURCE_USER_POLICY); 78 source = onc::ONC_SOURCE_USER_POLICY;
91 ui_data.FillDictionary(&ui_data_dict);
92 79
93 prop.ParseOncProperty(ui_data, &onc, "a"); 80 prop.ParseOncProperty(source, &onc, "a");
94 CheckProperty(prop, NULL, true, false, false); 81 CheckProperty(prop, NULL, true, false, false);
95 82
96 prop.ParseOncProperty(ui_data, &onc, "b"); 83 prop.ParseOncProperty(source, &onc, "b");
97 CheckProperty(prop, &val_b, false, true, true); 84 CheckProperty(prop, &val_b, false, true, true);
98 85
99 prop.ParseOncProperty(ui_data, &onc, "c"); 86 prop.ParseOncProperty(source, &onc, "c");
100 CheckProperty(prop, NULL, false, false, true); 87 CheckProperty(prop, NULL, false, false, true);
101 88
102 prop.ParseOncProperty(ui_data, &onc, "d"); 89 prop.ParseOncProperty(source, &onc, "d");
103 CheckProperty(prop, NULL, true, false, false); 90 CheckProperty(prop, NULL, true, false, false);
104 91
105 prop.ParseOncProperty(ui_data, &onc, "a.a"); 92 prop.ParseOncProperty(source, &onc, "a.a");
106 CheckProperty(prop, NULL, true, false, false); 93 CheckProperty(prop, NULL, true, false, false);
107 94
108 prop.ParseOncProperty(ui_data, &onc, "a.b"); 95 prop.ParseOncProperty(source, &onc, "a.b");
109 CheckProperty(prop, &val_a_b, false, true, true); 96 CheckProperty(prop, &val_a_b, false, true, true);
110 97
111 prop.ParseOncProperty(ui_data, &onc, "a.c"); 98 prop.ParseOncProperty(source, &onc, "a.c");
112 CheckProperty(prop, NULL, false, false, true); 99 CheckProperty(prop, NULL, false, false, true);
113 100
114 prop.ParseOncProperty(ui_data, &onc, "a.d"); 101 prop.ParseOncProperty(source, &onc, "a.d");
115 CheckProperty(prop, NULL, true, false, false); 102 CheckProperty(prop, NULL, true, false, false);
116 103
117 prop.ParseOncProperty(ui_data, NULL, "a.e"); 104 prop.ParseOncProperty(source, NULL, "a.e");
118 CheckProperty(prop, NULL, true, false, false); 105 CheckProperty(prop, NULL, true, false, false);
119 } 106 }
120 107
121 } // namespace chromeos 108 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698