| Index: base/values_unittest.cc
|
| diff --git a/base/values_unittest.cc b/base/values_unittest.cc
|
| index 98bc73c9a1b7ee50613ec562cd233a3eca23cccf..b345415d52d770dcd2cb2400f45912c45f8d951e 100644
|
| --- a/base/values_unittest.cc
|
| +++ b/base/values_unittest.cc
|
| @@ -325,6 +325,31 @@ TEST(ValuesTest, DictionaryWithoutPathExpansion) {
|
| EXPECT_EQ(Value::TYPE_NULL, value4->GetType());
|
| }
|
|
|
| +TEST(ValuesTest, DictionaryRemovePath) {
|
| + DictionaryValue dict;
|
| + dict.Set("a.long.way.down", Value::CreateIntegerValue(1));
|
| + dict.Set("a.long.key.path", Value::CreateBooleanValue(true));
|
| +
|
| + base::Value* out_value = NULL;
|
| + EXPECT_TRUE(dict.RemovePath("a.long.way.down", &out_value));
|
| + ASSERT_TRUE(out_value);
|
| + EXPECT_TRUE(out_value->IsType(base::Value::TYPE_INTEGER));
|
| + EXPECT_FALSE(dict.HasKey("a.long.way.down"));
|
| + EXPECT_FALSE(dict.HasKey("a.long.way"));
|
| + EXPECT_TRUE(dict.Get("a.long.key.path", NULL));
|
| +
|
| + out_value = NULL;
|
| + EXPECT_FALSE(dict.RemovePath("a.long.way.down", &out_value));
|
| + EXPECT_FALSE(out_value);
|
| + EXPECT_TRUE(dict.Get("a.long.key.path", NULL));
|
| +
|
| + out_value = NULL;
|
| + EXPECT_TRUE(dict.RemovePath("a.long.key.path", &out_value));
|
| + ASSERT_TRUE(out_value);
|
| + EXPECT_TRUE(out_value->IsType(base::Value::TYPE_BOOLEAN));
|
| + EXPECT_TRUE(dict.empty());
|
| +}
|
| +
|
| TEST(ValuesTest, DeepCopy) {
|
| DictionaryValue original_dict;
|
| Value* original_null = Value::CreateNullValue();
|
|
|