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

Side by Side Diff: components/prefs/overlay_user_pref_store_unittest.cc

Issue 2666093002: Remove base::FundamentalValue (Closed)
Patch Set: Rebase Created 3 years, 9 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
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 "components/prefs/overlay_user_pref_store.h" 5 #include "components/prefs/overlay_user_pref_store.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "base/values.h" 8 #include "base/values.h"
9 #include "components/prefs/pref_store_observer_mock.h" 9 #include "components/prefs/pref_store_observer_mock.h"
10 #include "components/prefs/testing_pref_store.h" 10 #include "components/prefs/testing_pref_store.h"
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 45
46 scoped_refptr<TestingPrefStore> underlay_; 46 scoped_refptr<TestingPrefStore> underlay_;
47 scoped_refptr<OverlayUserPrefStore> overlay_; 47 scoped_refptr<OverlayUserPrefStore> overlay_;
48 }; 48 };
49 49
50 TEST_F(OverlayUserPrefStoreTest, Observer) { 50 TEST_F(OverlayUserPrefStoreTest, Observer) {
51 PrefStoreObserverMock obs; 51 PrefStoreObserverMock obs;
52 overlay_->AddObserver(&obs); 52 overlay_->AddObserver(&obs);
53 53
54 // Check that underlay first value is reported. 54 // Check that underlay first value is reported.
55 underlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(42), 55 underlay_->SetValue(overlay_key, base::MakeUnique<Value>(42),
56 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 56 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
57 obs.VerifyAndResetChangedKey(overlay_key); 57 obs.VerifyAndResetChangedKey(overlay_key);
58 58
59 // Check that underlay overwriting is reported. 59 // Check that underlay overwriting is reported.
60 underlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(43), 60 underlay_->SetValue(overlay_key, base::MakeUnique<Value>(43),
61 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 61 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
62 obs.VerifyAndResetChangedKey(overlay_key); 62 obs.VerifyAndResetChangedKey(overlay_key);
63 63
64 // Check that overwriting change in overlay is reported. 64 // Check that overwriting change in overlay is reported.
65 overlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(44), 65 overlay_->SetValue(overlay_key, base::MakeUnique<Value>(44),
66 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 66 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
67 obs.VerifyAndResetChangedKey(overlay_key); 67 obs.VerifyAndResetChangedKey(overlay_key);
68 68
69 // Check that hidden underlay change is not reported. 69 // Check that hidden underlay change is not reported.
70 underlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(45), 70 underlay_->SetValue(overlay_key, base::MakeUnique<Value>(45),
71 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 71 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
72 EXPECT_TRUE(obs.changed_keys.empty()); 72 EXPECT_TRUE(obs.changed_keys.empty());
73 73
74 // Check that overlay remove is reported. 74 // Check that overlay remove is reported.
75 overlay_->RemoveValue(overlay_key, 75 overlay_->RemoveValue(overlay_key,
76 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 76 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
77 obs.VerifyAndResetChangedKey(overlay_key); 77 obs.VerifyAndResetChangedKey(overlay_key);
78 78
79 // Check that underlay remove is reported. 79 // Check that underlay remove is reported.
80 underlay_->RemoveValue(overlay_key, 80 underlay_->RemoveValue(overlay_key,
81 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 81 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
82 obs.VerifyAndResetChangedKey(overlay_key); 82 obs.VerifyAndResetChangedKey(overlay_key);
83 83
84 // Check respecting of silence. 84 // Check respecting of silence.
85 overlay_->SetValueSilently(overlay_key, 85 overlay_->SetValueSilently(overlay_key, base::MakeUnique<Value>(46),
86 base::MakeUnique<FundamentalValue>(46),
87 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 86 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
88 EXPECT_TRUE(obs.changed_keys.empty()); 87 EXPECT_TRUE(obs.changed_keys.empty());
89 88
90 overlay_->RemoveObserver(&obs); 89 overlay_->RemoveObserver(&obs);
91 90
92 // Check successful unsubscription. 91 // Check successful unsubscription.
93 underlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(47), 92 underlay_->SetValue(overlay_key, base::MakeUnique<Value>(47),
94 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 93 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
95 overlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(48), 94 overlay_->SetValue(overlay_key, base::MakeUnique<Value>(48),
96 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 95 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
97 EXPECT_TRUE(obs.changed_keys.empty()); 96 EXPECT_TRUE(obs.changed_keys.empty());
98 } 97 }
99 98
100 TEST_F(OverlayUserPrefStoreTest, GetAndSet) { 99 TEST_F(OverlayUserPrefStoreTest, GetAndSet) {
101 const Value* value = NULL; 100 const Value* value = NULL;
102 EXPECT_FALSE(overlay_->GetValue(overlay_key, &value)); 101 EXPECT_FALSE(overlay_->GetValue(overlay_key, &value));
103 EXPECT_FALSE(underlay_->GetValue(overlay_key, &value)); 102 EXPECT_FALSE(underlay_->GetValue(overlay_key, &value));
104 103
105 underlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(42), 104 underlay_->SetValue(overlay_key, base::MakeUnique<Value>(42),
106 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 105 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
107 106
108 // Value shines through: 107 // Value shines through:
109 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value)); 108 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value));
110 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 109 EXPECT_TRUE(base::Value(42).Equals(value));
111 110
112 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value)); 111 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value));
113 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 112 EXPECT_TRUE(base::Value(42).Equals(value));
114 113
115 overlay_->SetValue(overlay_key, base::MakeUnique<FundamentalValue>(43), 114 overlay_->SetValue(overlay_key, base::MakeUnique<Value>(43),
116 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 115 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
117 116
118 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value)); 117 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value));
119 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 118 EXPECT_TRUE(base::Value(43).Equals(value));
120 119
121 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value)); 120 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value));
122 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 121 EXPECT_TRUE(base::Value(42).Equals(value));
123 122
124 overlay_->RemoveValue(overlay_key, 123 overlay_->RemoveValue(overlay_key,
125 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 124 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
126 125
127 // Value shines through: 126 // Value shines through:
128 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value)); 127 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value));
129 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 128 EXPECT_TRUE(base::Value(42).Equals(value));
130 129
131 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value)); 130 EXPECT_TRUE(underlay_->GetValue(overlay_key, &value));
132 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 131 EXPECT_TRUE(base::Value(42).Equals(value));
133 } 132 }
134 133
135 // Check that GetMutableValue does not return the dictionary of the underlay. 134 // Check that GetMutableValue does not return the dictionary of the underlay.
136 TEST_F(OverlayUserPrefStoreTest, ModifyDictionaries) { 135 TEST_F(OverlayUserPrefStoreTest, ModifyDictionaries) {
137 underlay_->SetValue(overlay_key, base::WrapUnique(new DictionaryValue), 136 underlay_->SetValue(overlay_key, base::WrapUnique(new DictionaryValue),
138 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 137 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
139 138
140 Value* modify = NULL; 139 Value* modify = NULL;
141 EXPECT_TRUE(overlay_->GetMutableValue(overlay_key, &modify)); 140 EXPECT_TRUE(overlay_->GetMutableValue(overlay_key, &modify));
142 ASSERT_TRUE(modify); 141 ASSERT_TRUE(modify);
(...skipping 14 matching lines...) Expand all
157 } 156 }
158 157
159 // Here we consider a global preference that is not overlayed. 158 // Here we consider a global preference that is not overlayed.
160 TEST_F(OverlayUserPrefStoreTest, GlobalPref) { 159 TEST_F(OverlayUserPrefStoreTest, GlobalPref) {
161 PrefStoreObserverMock obs; 160 PrefStoreObserverMock obs;
162 overlay_->AddObserver(&obs); 161 overlay_->AddObserver(&obs);
163 162
164 const Value* value = NULL; 163 const Value* value = NULL;
165 164
166 // Check that underlay first value is reported. 165 // Check that underlay first value is reported.
167 underlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(42)), 166 underlay_->SetValue(regular_key, base::WrapUnique(new Value(42)),
168 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 167 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
169 obs.VerifyAndResetChangedKey(regular_key); 168 obs.VerifyAndResetChangedKey(regular_key);
170 169
171 // Check that underlay overwriting is reported. 170 // Check that underlay overwriting is reported.
172 underlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(43)), 171 underlay_->SetValue(regular_key, base::WrapUnique(new Value(43)),
173 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 172 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
174 obs.VerifyAndResetChangedKey(regular_key); 173 obs.VerifyAndResetChangedKey(regular_key);
175 174
176 // Check that we get this value from the overlay 175 // Check that we get this value from the overlay
177 EXPECT_TRUE(overlay_->GetValue(regular_key, &value)); 176 EXPECT_TRUE(overlay_->GetValue(regular_key, &value));
178 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 177 EXPECT_TRUE(base::Value(43).Equals(value));
179 178
180 // Check that overwriting change in overlay is reported. 179 // Check that overwriting change in overlay is reported.
181 overlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(44)), 180 overlay_->SetValue(regular_key, base::WrapUnique(new Value(44)),
182 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 181 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
183 obs.VerifyAndResetChangedKey(regular_key); 182 obs.VerifyAndResetChangedKey(regular_key);
184 183
185 // Check that we get this value from the overlay and the underlay. 184 // Check that we get this value from the overlay and the underlay.
186 EXPECT_TRUE(overlay_->GetValue(regular_key, &value)); 185 EXPECT_TRUE(overlay_->GetValue(regular_key, &value));
187 EXPECT_TRUE(base::FundamentalValue(44).Equals(value)); 186 EXPECT_TRUE(base::Value(44).Equals(value));
188 EXPECT_TRUE(underlay_->GetValue(regular_key, &value)); 187 EXPECT_TRUE(underlay_->GetValue(regular_key, &value));
189 EXPECT_TRUE(base::FundamentalValue(44).Equals(value)); 188 EXPECT_TRUE(base::Value(44).Equals(value));
190 189
191 // Check that overlay remove is reported. 190 // Check that overlay remove is reported.
192 overlay_->RemoveValue(regular_key, 191 overlay_->RemoveValue(regular_key,
193 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 192 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
194 obs.VerifyAndResetChangedKey(regular_key); 193 obs.VerifyAndResetChangedKey(regular_key);
195 194
196 // Check that value was removed from overlay and underlay 195 // Check that value was removed from overlay and underlay
197 EXPECT_FALSE(overlay_->GetValue(regular_key, &value)); 196 EXPECT_FALSE(overlay_->GetValue(regular_key, &value));
198 EXPECT_FALSE(underlay_->GetValue(regular_key, &value)); 197 EXPECT_FALSE(underlay_->GetValue(regular_key, &value));
199 198
200 // Check respecting of silence. 199 // Check respecting of silence.
201 overlay_->SetValueSilently(regular_key, 200 overlay_->SetValueSilently(regular_key, base::WrapUnique(new Value(46)),
202 base::WrapUnique(new FundamentalValue(46)),
203 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 201 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
204 EXPECT_TRUE(obs.changed_keys.empty()); 202 EXPECT_TRUE(obs.changed_keys.empty());
205 203
206 overlay_->RemoveObserver(&obs); 204 overlay_->RemoveObserver(&obs);
207 205
208 // Check successful unsubscription. 206 // Check successful unsubscription.
209 underlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(47)), 207 underlay_->SetValue(regular_key, base::WrapUnique(new Value(47)),
210 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 208 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
211 overlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(48)), 209 overlay_->SetValue(regular_key, base::WrapUnique(new Value(48)),
212 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 210 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
213 EXPECT_TRUE(obs.changed_keys.empty()); 211 EXPECT_TRUE(obs.changed_keys.empty());
214 } 212 }
215 213
216 // Check that names mapping works correctly. 214 // Check that names mapping works correctly.
217 TEST_F(OverlayUserPrefStoreTest, NamesMapping) { 215 TEST_F(OverlayUserPrefStoreTest, NamesMapping) {
218 PrefStoreObserverMock obs; 216 PrefStoreObserverMock obs;
219 overlay_->AddObserver(&obs); 217 overlay_->AddObserver(&obs);
220 218
221 const Value* value = NULL; 219 const Value* value = NULL;
222 220
223 // Check that if there is no override in the overlay, changing underlay value 221 // Check that if there is no override in the overlay, changing underlay value
224 // is reported as changing an overlay value. 222 // is reported as changing an overlay value.
225 underlay_->SetValue(mapped_underlay_key, 223 underlay_->SetValue(mapped_underlay_key, base::WrapUnique(new Value(42)),
226 base::WrapUnique(new FundamentalValue(42)),
227 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 224 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
228 obs.VerifyAndResetChangedKey(mapped_overlay_key); 225 obs.VerifyAndResetChangedKey(mapped_overlay_key);
229 226
230 // Check that underlay overwriting is reported. 227 // Check that underlay overwriting is reported.
231 underlay_->SetValue(mapped_underlay_key, 228 underlay_->SetValue(mapped_underlay_key, base::WrapUnique(new Value(43)),
232 base::WrapUnique(new FundamentalValue(43)),
233 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 229 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
234 obs.VerifyAndResetChangedKey(mapped_overlay_key); 230 obs.VerifyAndResetChangedKey(mapped_overlay_key);
235 231
236 // Check that we get this value from the overlay with both keys 232 // Check that we get this value from the overlay with both keys
237 EXPECT_TRUE(overlay_->GetValue(mapped_overlay_key, &value)); 233 EXPECT_TRUE(overlay_->GetValue(mapped_overlay_key, &value));
238 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 234 EXPECT_TRUE(base::Value(43).Equals(value));
239 // In this case, overlay reads directly from the underlay. 235 // In this case, overlay reads directly from the underlay.
240 EXPECT_TRUE(overlay_->GetValue(mapped_underlay_key, &value)); 236 EXPECT_TRUE(overlay_->GetValue(mapped_underlay_key, &value));
241 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 237 EXPECT_TRUE(base::Value(43).Equals(value));
242 238
243 // Check that overwriting change in overlay is reported. 239 // Check that overwriting change in overlay is reported.
244 overlay_->SetValue(mapped_overlay_key, 240 overlay_->SetValue(mapped_overlay_key, base::WrapUnique(new Value(44)),
245 base::WrapUnique(new FundamentalValue(44)),
246 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 241 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
247 obs.VerifyAndResetChangedKey(mapped_overlay_key); 242 obs.VerifyAndResetChangedKey(mapped_overlay_key);
248 243
249 // Check that we get an overriden value from overlay, while reading the 244 // Check that we get an overriden value from overlay, while reading the
250 // value from underlay still holds an old value. 245 // value from underlay still holds an old value.
251 EXPECT_TRUE(overlay_->GetValue(mapped_overlay_key, &value)); 246 EXPECT_TRUE(overlay_->GetValue(mapped_overlay_key, &value));
252 EXPECT_TRUE(base::FundamentalValue(44).Equals(value)); 247 EXPECT_TRUE(base::Value(44).Equals(value));
253 EXPECT_TRUE(overlay_->GetValue(mapped_underlay_key, &value)); 248 EXPECT_TRUE(overlay_->GetValue(mapped_underlay_key, &value));
254 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 249 EXPECT_TRUE(base::Value(43).Equals(value));
255 EXPECT_TRUE(underlay_->GetValue(mapped_underlay_key, &value)); 250 EXPECT_TRUE(underlay_->GetValue(mapped_underlay_key, &value));
256 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 251 EXPECT_TRUE(base::Value(43).Equals(value));
257 252
258 // Check that hidden underlay change is not reported. 253 // Check that hidden underlay change is not reported.
259 underlay_->SetValue(mapped_underlay_key, 254 underlay_->SetValue(mapped_underlay_key, base::WrapUnique(new Value(45)),
260 base::WrapUnique(new FundamentalValue(45)),
261 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 255 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
262 EXPECT_TRUE(obs.changed_keys.empty()); 256 EXPECT_TRUE(obs.changed_keys.empty());
263 257
264 // Check that overlay remove is reported. 258 // Check that overlay remove is reported.
265 overlay_->RemoveValue(mapped_overlay_key, 259 overlay_->RemoveValue(mapped_overlay_key,
266 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 260 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
267 obs.VerifyAndResetChangedKey(mapped_overlay_key); 261 obs.VerifyAndResetChangedKey(mapped_overlay_key);
268 262
269 // Check that underlay remove is reported. 263 // Check that underlay remove is reported.
270 underlay_->RemoveValue(mapped_underlay_key, 264 underlay_->RemoveValue(mapped_underlay_key,
271 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 265 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
272 obs.VerifyAndResetChangedKey(mapped_overlay_key); 266 obs.VerifyAndResetChangedKey(mapped_overlay_key);
273 267
274 // Check that value was removed. 268 // Check that value was removed.
275 EXPECT_FALSE(overlay_->GetValue(mapped_overlay_key, &value)); 269 EXPECT_FALSE(overlay_->GetValue(mapped_overlay_key, &value));
276 EXPECT_FALSE(overlay_->GetValue(mapped_underlay_key, &value)); 270 EXPECT_FALSE(overlay_->GetValue(mapped_underlay_key, &value));
277 271
278 // Check respecting of silence. 272 // Check respecting of silence.
279 overlay_->SetValueSilently(mapped_overlay_key, 273 overlay_->SetValueSilently(mapped_overlay_key,
280 base::WrapUnique(new FundamentalValue(46)), 274 base::WrapUnique(new Value(46)),
281 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 275 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
282 EXPECT_TRUE(obs.changed_keys.empty()); 276 EXPECT_TRUE(obs.changed_keys.empty());
283 277
284 overlay_->RemoveObserver(&obs); 278 overlay_->RemoveObserver(&obs);
285 279
286 // Check successful unsubscription. 280 // Check successful unsubscription.
287 underlay_->SetValue(mapped_underlay_key, 281 underlay_->SetValue(mapped_underlay_key, base::WrapUnique(new Value(47)),
288 base::WrapUnique(new FundamentalValue(47)),
289 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 282 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
290 overlay_->SetValue(mapped_overlay_key, 283 overlay_->SetValue(mapped_overlay_key, base::WrapUnique(new Value(48)),
291 base::WrapUnique(new FundamentalValue(48)),
292 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 284 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
293 EXPECT_TRUE(obs.changed_keys.empty()); 285 EXPECT_TRUE(obs.changed_keys.empty());
294 } 286 }
295 287
296 // Check that mutable values are removed correctly. 288 // Check that mutable values are removed correctly.
297 TEST_F(OverlayUserPrefStoreTest, ClearMutableValues) { 289 TEST_F(OverlayUserPrefStoreTest, ClearMutableValues) {
298 // Set in overlay and underlay the same preference. 290 // Set in overlay and underlay the same preference.
299 underlay_->SetValue(overlay_key, base::WrapUnique(new FundamentalValue(42)), 291 underlay_->SetValue(overlay_key, base::WrapUnique(new Value(42)),
300 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 292 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
301 overlay_->SetValue(overlay_key, base::WrapUnique(new FundamentalValue(43)), 293 overlay_->SetValue(overlay_key, base::WrapUnique(new Value(43)),
302 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 294 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
303 295
304 const Value* value = nullptr; 296 const Value* value = nullptr;
305 // Check that an overlay preference is returned. 297 // Check that an overlay preference is returned.
306 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value)); 298 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value));
307 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 299 EXPECT_TRUE(base::Value(43).Equals(value));
308 overlay_->ClearMutableValues(); 300 overlay_->ClearMutableValues();
309 301
310 // Check that an underlay preference is returned. 302 // Check that an underlay preference is returned.
311 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value)); 303 EXPECT_TRUE(overlay_->GetValue(overlay_key, &value));
312 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 304 EXPECT_TRUE(base::Value(42).Equals(value));
313 } 305 }
314 306
315 TEST_F(OverlayUserPrefStoreTest, GetValues) { 307 TEST_F(OverlayUserPrefStoreTest, GetValues) {
316 // To check merge behavior, create underlay and overlay so each has a key the 308 // To check merge behavior, create underlay and overlay so each has a key the
317 // other doesn't have and they have one key in common. 309 // other doesn't have and they have one key in common.
318 underlay_->SetValue(regular_key, base::WrapUnique(new FundamentalValue(42)), 310 underlay_->SetValue(regular_key, base::WrapUnique(new Value(42)),
319 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 311 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
320 overlay_->SetValue(overlay_key, base::WrapUnique(new FundamentalValue(43)), 312 overlay_->SetValue(overlay_key, base::WrapUnique(new Value(43)),
321 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 313 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
322 underlay_->SetValue(shared_key, base::WrapUnique(new FundamentalValue(42)), 314 underlay_->SetValue(shared_key, base::WrapUnique(new Value(42)),
323 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 315 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
324 overlay_->SetValue(shared_key, base::WrapUnique(new FundamentalValue(43)), 316 overlay_->SetValue(shared_key, base::WrapUnique(new Value(43)),
325 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 317 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
326 underlay_->SetValue(mapped_underlay_key, 318 underlay_->SetValue(mapped_underlay_key, base::WrapUnique(new Value(42)),
327 base::WrapUnique(new FundamentalValue(42)),
328 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 319 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
329 overlay_->SetValue(mapped_overlay_key, 320 overlay_->SetValue(mapped_overlay_key, base::WrapUnique(new Value(43)),
330 base::WrapUnique(new FundamentalValue(43)),
331 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); 321 WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
332 322
333 auto values = overlay_->GetValues(); 323 auto values = overlay_->GetValues();
334 const Value* value = nullptr; 324 const Value* value = nullptr;
335 // Check that an overlay preference is returned. 325 // Check that an overlay preference is returned.
336 ASSERT_TRUE(values->Get(overlay_key, &value)); 326 ASSERT_TRUE(values->Get(overlay_key, &value));
337 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 327 EXPECT_TRUE(base::Value(43).Equals(value));
338 328
339 // Check that an underlay preference is returned. 329 // Check that an underlay preference is returned.
340 ASSERT_TRUE(values->Get(regular_key, &value)); 330 ASSERT_TRUE(values->Get(regular_key, &value));
341 EXPECT_TRUE(base::FundamentalValue(42).Equals(value)); 331 EXPECT_TRUE(base::Value(42).Equals(value));
342 332
343 // Check that the overlay is preferred. 333 // Check that the overlay is preferred.
344 ASSERT_TRUE(values->Get(shared_key, &value)); 334 ASSERT_TRUE(values->Get(shared_key, &value));
345 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 335 EXPECT_TRUE(base::Value(43).Equals(value));
346 336
347 // Check that mapping works. 337 // Check that mapping works.
348 ASSERT_TRUE(values->Get(mapped_overlay_key, &value)); 338 ASSERT_TRUE(values->Get(mapped_overlay_key, &value));
349 EXPECT_TRUE(base::FundamentalValue(43).Equals(value)); 339 EXPECT_TRUE(base::Value(43).Equals(value));
350 EXPECT_FALSE(values->Get(mapped_underlay_key, &value)); 340 EXPECT_FALSE(values->Get(mapped_underlay_key, &value));
351 } 341 }
352 342
353 } // namespace base 343 } // namespace base
OLDNEW
« no previous file with comments | « components/prefs/json_pref_store_unittest.cc ('k') | components/prefs/pref_change_registrar_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698