diff options
author | dgrogan@chromium.org <dgrogan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-30 09:22:27 +0000 |
---|---|---|
committer | dgrogan@chromium.org <dgrogan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-30 09:22:27 +0000 |
commit | eeedaa6980f8153c09841240313ed7ee088a2cc8 (patch) | |
tree | 4bb04cbdd053dec1d82574152ed9938a322f8b94 /base/prefs | |
parent | 84a21ae8d3e5d09ca46977296df30a89defe117d (diff) | |
download | chromium_src-eeedaa6980f8153c09841240313ed7ee088a2cc8.zip chromium_src-eeedaa6980f8153c09841240313ed7ee088a2cc8.tar.gz chromium_src-eeedaa6980f8153c09841240313ed7ee088a2cc8.tar.bz2 |
Add a unit test for JsonPrefStore::Remove.
Review URL: https://codereview.chromium.org/144633002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247915 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/prefs')
-rw-r--r-- | base/prefs/json_pref_store_unittest.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/base/prefs/json_pref_store_unittest.cc b/base/prefs/json_pref_store_unittest.cc index 119a29c..f4e1e51 100644 --- a/base/prefs/json_pref_store_unittest.cc +++ b/base/prefs/json_pref_store_unittest.cc @@ -257,6 +257,27 @@ TEST_F(JsonPrefStoreTest, PreserveEmptyValues) { EXPECT_TRUE(DictionaryValue().Equals(result)); } +// This test is just documenting some potentially non-obvious behavior. It +// shouldn't be taken as normative. +TEST_F(JsonPrefStoreTest, RemoveClearsEmptyParent) { + FilePath pref_file = temp_dir_.path().AppendASCII("empty_values.json"); + + scoped_refptr<JsonPrefStore> pref_store = new JsonPrefStore( + pref_file, + message_loop_.message_loop_proxy(), + scoped_ptr<PrefFilter>()); + + base::DictionaryValue* dict = new base::DictionaryValue; + dict->SetString("key", "value"); + pref_store->SetValue("dict", dict); + + pref_store->RemoveValue("dict.key"); + + const base::Value* retrieved_dict = NULL; + bool has_dict = pref_store->GetValue("dict", &retrieved_dict); + EXPECT_FALSE(has_dict); +} + // Tests asynchronous reading of the file when there is no file. TEST_F(JsonPrefStoreTest, AsyncNonExistingFile) { base::FilePath bogus_input_file = data_dir_.AppendASCII("read.txt"); |