Chromium Code Reviews| 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 |