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 "base/values.h" | 5 #include "base/values.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <limits> | 9 #include <limits> |
10 #include <memory> | 10 #include <memory> |
(...skipping 22 matching lines...) Expand all Loading... | |
33 EXPECT_EQ(Value::Type::INTEGER, value.type()); | 33 EXPECT_EQ(Value::Type::INTEGER, value.type()); |
34 EXPECT_EQ(-37, value.GetInt()); | 34 EXPECT_EQ(-37, value.GetInt()); |
35 } | 35 } |
36 | 36 |
37 TEST(ValuesTest, ConstructDouble) { | 37 TEST(ValuesTest, ConstructDouble) { |
38 FundamentalValue value(-4.655); | 38 FundamentalValue value(-4.655); |
39 EXPECT_EQ(Value::Type::DOUBLE, value.type()); | 39 EXPECT_EQ(Value::Type::DOUBLE, value.type()); |
40 EXPECT_EQ(-4.655, value.GetDouble()); | 40 EXPECT_EQ(-4.655, value.GetDouble()); |
41 } | 41 } |
42 | 42 |
43 TEST(ValuesTest, ConstructStringFromStringPiece) { | |
44 StringPiece str = "foobar"; | |
45 StringValue value(str); | |
46 EXPECT_EQ(Value::Type::STRING, value.type()); | |
47 EXPECT_EQ(str.as_string(), value.GetString()); | |
vabr (Chromium)
2016/12/16 17:00:56
To avoid testing as_string, please use
EXPECT_EQ("
jdoerrie
2016/12/19 11:54:09
Done. For some reason I thought we needed the exac
vabr (Chromium)
2016/12/19 13:00:56
Ah, actually, I missed that it was taking the expe
| |
48 } | |
49 | |
50 TEST(ValuesTest, ConstructStringFromStdString) { | |
51 std::string str = "foobar"; | |
52 StringValue value(str); | |
53 EXPECT_EQ(Value::Type::STRING, value.type()); | |
54 EXPECT_EQ(str, value.GetString()); | |
55 } | |
56 | |
57 TEST(ValuesTest, ConstructStringFromString16) { | |
58 string16 str = ASCIIToUTF16("foobar"); | |
59 StringValue value(str); | |
60 EXPECT_EQ(Value::Type::STRING, value.type()); | |
61 EXPECT_EQ(UTF16ToUTF8(str), value.GetString()); | |
62 } | |
63 | |
64 TEST(ValuesTest, ConstructStringFromConstChar) { | |
65 const char* str = "foobar"; | |
66 StringValue value(str); | |
67 EXPECT_EQ(Value::Type::STRING, value.type()); | |
68 EXPECT_EQ(std::string(str), value.GetString()); | |
69 } | |
70 | |
43 // Group of tests for the copy constructors and copy-assigmnent. For equality | 71 // Group of tests for the copy constructors and copy-assigmnent. For equality |
44 // checks comparisons of the interesting fields are done instead of relying on | 72 // checks comparisons of the interesting fields are done instead of relying on |
45 // Equals being correct. | 73 // Equals being correct. |
46 TEST(ValuesTest, CopyBool) { | 74 TEST(ValuesTest, CopyBool) { |
47 FundamentalValue true_value(true); | 75 FundamentalValue true_value(true); |
48 FundamentalValue copied_true_value(true_value); | 76 FundamentalValue copied_true_value(true_value); |
49 EXPECT_EQ(true_value.type(), copied_true_value.type()); | 77 EXPECT_EQ(true_value.type(), copied_true_value.type()); |
50 EXPECT_EQ(true_value.GetBool(), copied_true_value.GetBool()); | 78 EXPECT_EQ(true_value.GetBool(), copied_true_value.GetBool()); |
51 | 79 |
52 FundamentalValue false_value(false); | 80 FundamentalValue false_value(false); |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
90 | 118 |
91 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment | 119 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment |
92 // operator of base::Value is public. | 120 // operator of base::Value is public. |
93 FundamentalValue blank(false); | 121 FundamentalValue blank(false); |
94 | 122 |
95 blank = value; | 123 blank = value; |
96 EXPECT_EQ(value.type(), blank.type()); | 124 EXPECT_EQ(value.type(), blank.type()); |
97 EXPECT_EQ(value.GetDouble(), blank.GetDouble()); | 125 EXPECT_EQ(value.GetDouble(), blank.GetDouble()); |
98 } | 126 } |
99 | 127 |
128 TEST(ValuesTest, CopyString) { | |
129 StringValue value("foobar"); | |
130 StringValue copied_value(value); | |
131 EXPECT_EQ(value.type(), copied_value.type()); | |
132 EXPECT_EQ(value.GetString(), copied_value.GetString()); | |
133 | |
134 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment | |
135 // operator of base::Value is public. | |
136 StringValue blank(""); | |
137 | |
138 blank = value; | |
139 EXPECT_EQ(value.type(), blank.type()); | |
140 EXPECT_EQ(value.GetString(), blank.GetString()); | |
141 } | |
142 | |
100 // Group of tests for the move constructors and move-assigmnent. | 143 // Group of tests for the move constructors and move-assigmnent. |
101 TEST(ValuesTest, MoveBool) { | 144 TEST(ValuesTest, MoveBool) { |
102 FundamentalValue true_value(true); | 145 FundamentalValue true_value(true); |
103 FundamentalValue moved_true_value(std::move(true_value)); | 146 FundamentalValue moved_true_value(std::move(true_value)); |
104 EXPECT_EQ(Value::Type::BOOLEAN, moved_true_value.type()); | 147 EXPECT_EQ(Value::Type::BOOLEAN, moved_true_value.type()); |
105 EXPECT_TRUE(moved_true_value.GetBool()); | 148 EXPECT_TRUE(moved_true_value.GetBool()); |
106 | 149 |
107 FundamentalValue false_value(false); | 150 FundamentalValue false_value(false); |
108 FundamentalValue moved_false_value(std::move(false_value)); | 151 FundamentalValue moved_false_value(std::move(false_value)); |
109 EXPECT_EQ(Value::Type::BOOLEAN, moved_false_value.type()); | 152 EXPECT_EQ(Value::Type::BOOLEAN, moved_false_value.type()); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
145 | 188 |
146 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment | 189 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment |
147 // operator of base::Value is public. | 190 // operator of base::Value is public. |
148 FundamentalValue blank(false); | 191 FundamentalValue blank(false); |
149 | 192 |
150 blank = FundamentalValue(654.38); | 193 blank = FundamentalValue(654.38); |
151 EXPECT_EQ(Value::Type::DOUBLE, blank.type()); | 194 EXPECT_EQ(Value::Type::DOUBLE, blank.type()); |
152 EXPECT_EQ(654.38, blank.GetDouble()); | 195 EXPECT_EQ(654.38, blank.GetDouble()); |
153 } | 196 } |
154 | 197 |
198 TEST(ValuesTest, MoveString) { | |
199 StringValue value("foobar"); | |
200 StringValue moved_value(std::move(value)); | |
201 EXPECT_EQ(Value::Type::STRING, moved_value.type()); | |
202 EXPECT_EQ(std::string("foobar"), moved_value.GetString()); | |
203 EXPECT_EQ(Value::Type::NONE, value.type()); | |
204 | |
205 // TODO(crbug.com/646113): Create a Type::NONE value once the assignment | |
206 // operator of base::Value is public. | |
207 StringValue blank(""); | |
208 | |
209 blank = StringValue("foobar"); | |
210 EXPECT_EQ(Value::Type::STRING, blank.type()); | |
211 EXPECT_EQ(std::string("foobar"), blank.GetString()); | |
212 } | |
213 | |
155 TEST(ValuesTest, Basic) { | 214 TEST(ValuesTest, Basic) { |
156 // Test basic dictionary getting/setting | 215 // Test basic dictionary getting/setting |
157 DictionaryValue settings; | 216 DictionaryValue settings; |
158 std::string homepage = "http://google.com"; | 217 std::string homepage = "http://google.com"; |
159 ASSERT_FALSE(settings.GetString("global.homepage", &homepage)); | 218 ASSERT_FALSE(settings.GetString("global.homepage", &homepage)); |
160 ASSERT_EQ(std::string("http://google.com"), homepage); | 219 ASSERT_EQ(std::string("http://google.com"), homepage); |
161 | 220 |
162 ASSERT_FALSE(settings.Get("global", NULL)); | 221 ASSERT_FALSE(settings.Get("global", NULL)); |
163 settings.SetBoolean("global", true); | 222 settings.SetBoolean("global", true); |
164 ASSERT_TRUE(settings.Get("global", NULL)); | 223 ASSERT_TRUE(settings.Get("global", NULL)); |
(...skipping 1117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1282 EXPECT_FALSE(main_list.GetList(1, NULL)); | 1341 EXPECT_FALSE(main_list.GetList(1, NULL)); |
1283 EXPECT_FALSE(main_list.GetList(2, NULL)); | 1342 EXPECT_FALSE(main_list.GetList(2, NULL)); |
1284 EXPECT_FALSE(main_list.GetList(3, NULL)); | 1343 EXPECT_FALSE(main_list.GetList(3, NULL)); |
1285 EXPECT_FALSE(main_list.GetList(4, NULL)); | 1344 EXPECT_FALSE(main_list.GetList(4, NULL)); |
1286 EXPECT_FALSE(main_list.GetList(5, NULL)); | 1345 EXPECT_FALSE(main_list.GetList(5, NULL)); |
1287 EXPECT_TRUE(main_list.GetList(6, NULL)); | 1346 EXPECT_TRUE(main_list.GetList(6, NULL)); |
1288 EXPECT_FALSE(main_list.GetList(7, NULL)); | 1347 EXPECT_FALSE(main_list.GetList(7, NULL)); |
1289 } | 1348 } |
1290 | 1349 |
1291 } // namespace base | 1350 } // namespace base |
OLD | NEW |