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

Side by Side Diff: components/policy/core/browser/configuration_policy_handler_unittest.cc

Issue 2476493003: Remove FundamentalValue
Patch Set: Fix Created 4 years, 1 month 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) 2014 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2014 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/policy/core/browser/configuration_policy_handler.h" 5 #include "components/policy/core/browser/configuration_policy_handler.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
11 #include "base/json/json_reader.h" 11 #include "base/json/json_reader.h"
12 #include "base/memory/ptr_util.h" 12 #include "base/memory/ptr_util.h"
13 #include "base/values.h" 13 #include "base/values.h"
14 #include "components/policy/core/browser/policy_error_map.h" 14 #include "components/policy/core/browser/policy_error_map.h"
15 #include "components/policy/core/common/policy_map.h" 15 #include "components/policy/core/common/policy_map.h"
16 #include "components/policy/core/common/policy_types.h" 16 #include "components/policy/core/common/policy_types.h"
17 #include "components/policy/core/common/schema.h" 17 #include "components/policy/core/common/schema.h"
18 #include "components/prefs/pref_value_map.h" 18 #include "components/prefs/pref_value_map.h"
19 #include "testing/gtest/include/gtest/gtest.h" 19 #include "testing/gtest/include/gtest/gtest.h"
20 20
21 namespace policy { 21 namespace policy {
22 22
23 namespace { 23 namespace {
24 24
25 void GetIntegerTypeMap( 25 void GetIntegerTypeMap(
26 std::vector<std::unique_ptr<StringMappingListPolicyHandler::MappingEntry>>* 26 std::vector<std::unique_ptr<StringMappingListPolicyHandler::MappingEntry>>*
27 result) { 27 result) {
28 result->push_back( 28 result->push_back(
29 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>( 29 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>(
30 "one", std::unique_ptr<base::Value>(new base::FundamentalValue(1)))); 30 "one", std::unique_ptr<base::Value>(new base::Value(1))));
31 result->push_back( 31 result->push_back(
32 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>( 32 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>(
33 "two", std::unique_ptr<base::Value>(new base::FundamentalValue(2)))); 33 "two", std::unique_ptr<base::Value>(new base::Value(2))));
34 } 34 }
35 35
36 const char kTestPolicy[] = "unit_test.test_policy"; 36 const char kTestPolicy[] = "unit_test.test_policy";
37 const char kTestPref[] = "unit_test.test_pref"; 37 const char kTestPref[] = "unit_test.test_pref";
38 38
39 class TestSchemaValidatingPolicyHandler : public SchemaValidatingPolicyHandler { 39 class TestSchemaValidatingPolicyHandler : public SchemaValidatingPolicyHandler {
40 public: 40 public:
41 TestSchemaValidatingPolicyHandler(const Schema& schema, 41 TestSchemaValidatingPolicyHandler(const Schema& schema,
42 SchemaOnErrorStrategy strategy) 42 SchemaOnErrorStrategy strategy)
43 : SchemaValidatingPolicyHandler("PolicyForTesting", schema, strategy) {} 43 : SchemaValidatingPolicyHandler("PolicyForTesting", schema, strategy) {}
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 PolicyMap policy_map; 130 PolicyMap policy_map;
131 PolicyErrorMap errors; 131 PolicyErrorMap errors;
132 132
133 // This tests needs to modify an int policy. The exact policy used and its 133 // This tests needs to modify an int policy. The exact policy used and its
134 // semantics outside the test are irrelevant. 134 // semantics outside the test are irrelevant.
135 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true); 135 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true);
136 136
137 // Check that values lying in the accepted range are not rejected. 137 // Check that values lying in the accepted range are not rejected.
138 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 138 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
139 POLICY_SOURCE_CLOUD, 139 POLICY_SOURCE_CLOUD,
140 base::MakeUnique<base::FundamentalValue>(0), nullptr); 140 base::MakeUnique<base::Value>(0), nullptr);
141 errors.Clear(); 141 errors.Clear();
142 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 142 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
143 EXPECT_TRUE(errors.empty()); 143 EXPECT_TRUE(errors.empty());
144 144
145 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 145 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
146 POLICY_SOURCE_CLOUD, 146 POLICY_SOURCE_CLOUD,
147 base::MakeUnique<base::FundamentalValue>(5), nullptr); 147 base::MakeUnique<base::Value>(5), nullptr);
148 errors.Clear(); 148 errors.Clear();
149 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 149 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
150 EXPECT_TRUE(errors.empty()); 150 EXPECT_TRUE(errors.empty());
151 151
152 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 152 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
153 POLICY_SOURCE_CLOUD, 153 POLICY_SOURCE_CLOUD,
154 base::MakeUnique<base::FundamentalValue>(10), nullptr); 154 base::MakeUnique<base::Value>(10), nullptr);
155 errors.Clear(); 155 errors.Clear();
156 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 156 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
157 EXPECT_TRUE(errors.empty()); 157 EXPECT_TRUE(errors.empty());
158 158
159 // Check that values lying outside the accepted range are not rejected 159 // Check that values lying outside the accepted range are not rejected
160 // (because clamping is enabled) but do yield a warning message. 160 // (because clamping is enabled) but do yield a warning message.
161 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 161 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
162 POLICY_SOURCE_CLOUD, 162 POLICY_SOURCE_CLOUD,
163 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 163 base::MakeUnique<base::Value>(-5), nullptr);
164 errors.Clear(); 164 errors.Clear();
165 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 165 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
166 EXPECT_FALSE(errors.empty()); 166 EXPECT_FALSE(errors.empty());
167 167
168 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 168 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
169 POLICY_SOURCE_CLOUD, 169 POLICY_SOURCE_CLOUD,
170 base::MakeUnique<base::FundamentalValue>(15), nullptr); 170 base::MakeUnique<base::Value>(15), nullptr);
171 errors.Clear(); 171 errors.Clear();
172 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 172 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
173 EXPECT_FALSE(errors.empty()); 173 EXPECT_FALSE(errors.empty());
174 174
175 // Check that an entirely invalid value is rejected and yields an error 175 // Check that an entirely invalid value is rejected and yields an error
176 // message. 176 // message.
177 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 177 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
178 POLICY_SOURCE_CLOUD, 178 POLICY_SOURCE_CLOUD,
179 base::MakeUnique<base::StringValue>("invalid"), nullptr); 179 base::MakeUnique<base::StringValue>("invalid"), nullptr);
180 errors.Clear(); 180 errors.Clear();
181 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 181 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
182 EXPECT_FALSE(errors.empty()); 182 EXPECT_FALSE(errors.empty());
183 } 183 }
184 184
185 TEST(IntRangePolicyHandler, CheckPolicySettingsDontClamp) { 185 TEST(IntRangePolicyHandler, CheckPolicySettingsDontClamp) {
186 PolicyMap policy_map; 186 PolicyMap policy_map;
187 PolicyErrorMap errors; 187 PolicyErrorMap errors;
188 188
189 // This tests needs to modify an int policy. The exact policy used and its 189 // This tests needs to modify an int policy. The exact policy used and its
190 // semantics outside the test are irrelevant. 190 // semantics outside the test are irrelevant.
191 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, false); 191 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, false);
192 192
193 // Check that values lying in the accepted range are not rejected. 193 // Check that values lying in the accepted range are not rejected.
194 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 194 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
195 POLICY_SOURCE_CLOUD, 195 POLICY_SOURCE_CLOUD,
196 base::MakeUnique<base::FundamentalValue>(0), nullptr); 196 base::MakeUnique<base::Value>(0), nullptr);
197 errors.Clear(); 197 errors.Clear();
198 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 198 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
199 EXPECT_TRUE(errors.empty()); 199 EXPECT_TRUE(errors.empty());
200 200
201 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 201 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
202 POLICY_SOURCE_CLOUD, 202 POLICY_SOURCE_CLOUD,
203 base::MakeUnique<base::FundamentalValue>(5), nullptr); 203 base::MakeUnique<base::Value>(5), nullptr);
204 errors.Clear(); 204 errors.Clear();
205 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 205 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
206 EXPECT_TRUE(errors.empty()); 206 EXPECT_TRUE(errors.empty());
207 207
208 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 208 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
209 POLICY_SOURCE_CLOUD, 209 POLICY_SOURCE_CLOUD,
210 base::MakeUnique<base::FundamentalValue>(10), nullptr); 210 base::MakeUnique<base::Value>(10), nullptr);
211 errors.Clear(); 211 errors.Clear();
212 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 212 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
213 EXPECT_TRUE(errors.empty()); 213 EXPECT_TRUE(errors.empty());
214 214
215 // Check that values lying outside the accepted range are rejected and yield 215 // Check that values lying outside the accepted range are rejected and yield
216 // an error message. 216 // an error message.
217 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 217 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
218 POLICY_SOURCE_CLOUD, 218 POLICY_SOURCE_CLOUD,
219 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 219 base::MakeUnique<base::Value>(-5), nullptr);
220 errors.Clear(); 220 errors.Clear();
221 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 221 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
222 EXPECT_FALSE(errors.empty()); 222 EXPECT_FALSE(errors.empty());
223 223
224 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 224 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
225 POLICY_SOURCE_CLOUD, 225 POLICY_SOURCE_CLOUD,
226 base::MakeUnique<base::FundamentalValue>(15), nullptr); 226 base::MakeUnique<base::Value>(15), nullptr);
227 errors.Clear(); 227 errors.Clear();
228 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 228 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
229 EXPECT_FALSE(errors.empty()); 229 EXPECT_FALSE(errors.empty());
230 230
231 // Check that an entirely invalid value is rejected and yields an error 231 // Check that an entirely invalid value is rejected and yields an error
232 // message. 232 // message.
233 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 233 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
234 POLICY_SOURCE_CLOUD, 234 POLICY_SOURCE_CLOUD,
235 base::MakeUnique<base::StringValue>("invalid"), nullptr); 235 base::MakeUnique<base::StringValue>("invalid"), nullptr);
236 errors.Clear(); 236 errors.Clear();
237 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 237 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
238 EXPECT_FALSE(errors.empty()); 238 EXPECT_FALSE(errors.empty());
239 } 239 }
240 240
241 TEST(IntRangePolicyHandler, ApplyPolicySettingsClamp) { 241 TEST(IntRangePolicyHandler, ApplyPolicySettingsClamp) {
242 PolicyMap policy_map; 242 PolicyMap policy_map;
243 PrefValueMap prefs; 243 PrefValueMap prefs;
244 std::unique_ptr<base::Value> expected; 244 std::unique_ptr<base::Value> expected;
245 const base::Value* value; 245 const base::Value* value;
246 246
247 // This tests needs to modify an int policy. The exact policy used and its 247 // This tests needs to modify an int policy. The exact policy used and its
248 // semantics outside the test are irrelevant. 248 // semantics outside the test are irrelevant.
249 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true); 249 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true);
250 250
251 // Check that values lying in the accepted range are written to the pref. 251 // Check that values lying in the accepted range are written to the pref.
252 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 252 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
253 POLICY_SOURCE_CLOUD, 253 POLICY_SOURCE_CLOUD,
254 base::MakeUnique<base::FundamentalValue>(0), nullptr); 254 base::MakeUnique<base::Value>(0), nullptr);
255 prefs.Clear(); 255 prefs.Clear();
256 handler.ApplyPolicySettings(policy_map, &prefs); 256 handler.ApplyPolicySettings(policy_map, &prefs);
257 expected.reset(new base::FundamentalValue(0)); 257 expected.reset(new base::Value(0));
258 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 258 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
259 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 259 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
260 260
261 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 261 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
262 POLICY_SOURCE_CLOUD, 262 POLICY_SOURCE_CLOUD,
263 base::MakeUnique<base::FundamentalValue>(5), nullptr); 263 base::MakeUnique<base::Value>(5), nullptr);
264 prefs.Clear(); 264 prefs.Clear();
265 handler.ApplyPolicySettings(policy_map, &prefs); 265 handler.ApplyPolicySettings(policy_map, &prefs);
266 expected.reset(new base::FundamentalValue(5)); 266 expected.reset(new base::Value(5));
267 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 267 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
268 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 268 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
269 269
270 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 270 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
271 POLICY_SOURCE_CLOUD, 271 POLICY_SOURCE_CLOUD,
272 base::MakeUnique<base::FundamentalValue>(10), nullptr); 272 base::MakeUnique<base::Value>(10), nullptr);
273 prefs.Clear(); 273 prefs.Clear();
274 handler.ApplyPolicySettings(policy_map, &prefs); 274 handler.ApplyPolicySettings(policy_map, &prefs);
275 expected.reset(new base::FundamentalValue(10)); 275 expected.reset(new base::Value(10));
276 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 276 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
277 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 277 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
278 278
279 // Check that values lying outside the accepted range are clamped and written 279 // Check that values lying outside the accepted range are clamped and written
280 // to the pref. 280 // to the pref.
281 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 281 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
282 POLICY_SOURCE_CLOUD, 282 POLICY_SOURCE_CLOUD,
283 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 283 base::MakeUnique<base::Value>(-5), nullptr);
284 prefs.Clear(); 284 prefs.Clear();
285 handler.ApplyPolicySettings(policy_map, &prefs); 285 handler.ApplyPolicySettings(policy_map, &prefs);
286 expected.reset(new base::FundamentalValue(0)); 286 expected.reset(new base::Value(0));
287 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 287 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
288 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 288 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
289 289
290 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 290 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
291 POLICY_SOURCE_CLOUD, 291 POLICY_SOURCE_CLOUD,
292 base::MakeUnique<base::FundamentalValue>(15), nullptr); 292 base::MakeUnique<base::Value>(15), nullptr);
293 prefs.Clear(); 293 prefs.Clear();
294 handler.ApplyPolicySettings(policy_map, &prefs); 294 handler.ApplyPolicySettings(policy_map, &prefs);
295 expected.reset(new base::FundamentalValue(10)); 295 expected.reset(new base::Value(10));
296 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 296 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
297 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 297 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
298 } 298 }
299 299
300 TEST(IntRangePolicyHandler, ApplyPolicySettingsDontClamp) { 300 TEST(IntRangePolicyHandler, ApplyPolicySettingsDontClamp) {
301 PolicyMap policy_map; 301 PolicyMap policy_map;
302 PrefValueMap prefs; 302 PrefValueMap prefs;
303 std::unique_ptr<base::Value> expected; 303 std::unique_ptr<base::Value> expected;
304 const base::Value* value; 304 const base::Value* value;
305 305
306 // This tests needs to modify an int policy. The exact policy used and its 306 // This tests needs to modify an int policy. The exact policy used and its
307 // semantics outside the test are irrelevant. 307 // semantics outside the test are irrelevant.
308 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true); 308 IntRangePolicyHandler handler(kTestPolicy, kTestPref, 0, 10, true);
309 309
310 // Check that values lying in the accepted range are written to the pref. 310 // Check that values lying in the accepted range are written to the pref.
311 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 311 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
312 POLICY_SOURCE_CLOUD, 312 POLICY_SOURCE_CLOUD,
313 base::MakeUnique<base::FundamentalValue>(0), nullptr); 313 base::MakeUnique<base::Value>(0), nullptr);
314 prefs.Clear(); 314 prefs.Clear();
315 handler.ApplyPolicySettings(policy_map, &prefs); 315 handler.ApplyPolicySettings(policy_map, &prefs);
316 expected.reset(new base::FundamentalValue(0)); 316 expected.reset(new base::Value(0));
317 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 317 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
318 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 318 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
319 319
320 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 320 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
321 POLICY_SOURCE_CLOUD, 321 POLICY_SOURCE_CLOUD,
322 base::MakeUnique<base::FundamentalValue>(5), nullptr); 322 base::MakeUnique<base::Value>(5), nullptr);
323 prefs.Clear(); 323 prefs.Clear();
324 handler.ApplyPolicySettings(policy_map, &prefs); 324 handler.ApplyPolicySettings(policy_map, &prefs);
325 expected.reset(new base::FundamentalValue(5)); 325 expected.reset(new base::Value(5));
326 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 326 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
327 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 327 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
328 328
329 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 329 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
330 POLICY_SOURCE_CLOUD, 330 POLICY_SOURCE_CLOUD,
331 base::MakeUnique<base::FundamentalValue>(10), nullptr); 331 base::MakeUnique<base::Value>(10), nullptr);
332 prefs.Clear(); 332 prefs.Clear();
333 handler.ApplyPolicySettings(policy_map, &prefs); 333 handler.ApplyPolicySettings(policy_map, &prefs);
334 expected.reset(new base::FundamentalValue(10)); 334 expected.reset(new base::Value(10));
335 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 335 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
336 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 336 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
337 } 337 }
338 338
339 TEST(IntPercentageToDoublePolicyHandler, CheckPolicySettingsClamp) { 339 TEST(IntPercentageToDoublePolicyHandler, CheckPolicySettingsClamp) {
340 PolicyMap policy_map; 340 PolicyMap policy_map;
341 PolicyErrorMap errors; 341 PolicyErrorMap errors;
342 342
343 // This tests needs to modify an int policy. The exact policy used and its 343 // This tests needs to modify an int policy. The exact policy used and its
344 // semantics outside the test are irrelevant. 344 // semantics outside the test are irrelevant.
345 IntPercentageToDoublePolicyHandler handler( 345 IntPercentageToDoublePolicyHandler handler(
346 kTestPolicy, kTestPref, 0, 10, true); 346 kTestPolicy, kTestPref, 0, 10, true);
347 347
348 // Check that values lying in the accepted range are not rejected. 348 // Check that values lying in the accepted range are not rejected.
349 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 349 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
350 POLICY_SOURCE_CLOUD, 350 POLICY_SOURCE_CLOUD,
351 base::MakeUnique<base::FundamentalValue>(0), nullptr); 351 base::MakeUnique<base::Value>(0), nullptr);
352 errors.Clear(); 352 errors.Clear();
353 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 353 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
354 EXPECT_TRUE(errors.empty()); 354 EXPECT_TRUE(errors.empty());
355 355
356 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 356 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
357 POLICY_SOURCE_CLOUD, 357 POLICY_SOURCE_CLOUD,
358 base::MakeUnique<base::FundamentalValue>(5), nullptr); 358 base::MakeUnique<base::Value>(5), nullptr);
359 errors.Clear(); 359 errors.Clear();
360 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 360 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
361 EXPECT_TRUE(errors.empty()); 361 EXPECT_TRUE(errors.empty());
362 362
363 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 363 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
364 POLICY_SOURCE_CLOUD, 364 POLICY_SOURCE_CLOUD,
365 base::MakeUnique<base::FundamentalValue>(10), nullptr); 365 base::MakeUnique<base::Value>(10), nullptr);
366 errors.Clear(); 366 errors.Clear();
367 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 367 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
368 EXPECT_TRUE(errors.empty()); 368 EXPECT_TRUE(errors.empty());
369 369
370 // Check that values lying outside the accepted range are not rejected 370 // Check that values lying outside the accepted range are not rejected
371 // (because clamping is enabled) but do yield a warning message. 371 // (because clamping is enabled) but do yield a warning message.
372 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 372 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
373 POLICY_SOURCE_CLOUD, 373 POLICY_SOURCE_CLOUD,
374 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 374 base::MakeUnique<base::Value>(-5), nullptr);
375 errors.Clear(); 375 errors.Clear();
376 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 376 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
377 EXPECT_FALSE(errors.empty()); 377 EXPECT_FALSE(errors.empty());
378 378
379 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 379 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
380 POLICY_SOURCE_CLOUD, 380 POLICY_SOURCE_CLOUD,
381 base::MakeUnique<base::FundamentalValue>(15), nullptr); 381 base::MakeUnique<base::Value>(15), nullptr);
382 errors.Clear(); 382 errors.Clear();
383 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 383 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
384 EXPECT_FALSE(errors.empty()); 384 EXPECT_FALSE(errors.empty());
385 385
386 // Check that an entirely invalid value is rejected and yields an error 386 // Check that an entirely invalid value is rejected and yields an error
387 // message. 387 // message.
388 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 388 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
389 POLICY_SOURCE_CLOUD, 389 POLICY_SOURCE_CLOUD,
390 base::MakeUnique<base::StringValue>("invalid"), nullptr); 390 base::MakeUnique<base::StringValue>("invalid"), nullptr);
391 errors.Clear(); 391 errors.Clear();
392 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 392 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
393 EXPECT_FALSE(errors.empty()); 393 EXPECT_FALSE(errors.empty());
394 } 394 }
395 395
396 TEST(IntPercentageToDoublePolicyHandler, CheckPolicySettingsDontClamp) { 396 TEST(IntPercentageToDoublePolicyHandler, CheckPolicySettingsDontClamp) {
397 PolicyMap policy_map; 397 PolicyMap policy_map;
398 PolicyErrorMap errors; 398 PolicyErrorMap errors;
399 399
400 // This tests needs to modify an int policy. The exact policy used and its 400 // This tests needs to modify an int policy. The exact policy used and its
401 // semantics outside the test are irrelevant. 401 // semantics outside the test are irrelevant.
402 IntPercentageToDoublePolicyHandler handler( 402 IntPercentageToDoublePolicyHandler handler(
403 kTestPolicy, kTestPref, 0, 10, false); 403 kTestPolicy, kTestPref, 0, 10, false);
404 404
405 // Check that values lying in the accepted range are not rejected. 405 // Check that values lying in the accepted range are not rejected.
406 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 406 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
407 POLICY_SOURCE_CLOUD, 407 POLICY_SOURCE_CLOUD,
408 base::MakeUnique<base::FundamentalValue>(0), nullptr); 408 base::MakeUnique<base::Value>(0), nullptr);
409 errors.Clear(); 409 errors.Clear();
410 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 410 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
411 EXPECT_TRUE(errors.empty()); 411 EXPECT_TRUE(errors.empty());
412 412
413 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 413 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
414 POLICY_SOURCE_CLOUD, 414 POLICY_SOURCE_CLOUD,
415 base::MakeUnique<base::FundamentalValue>(5), nullptr); 415 base::MakeUnique<base::Value>(5), nullptr);
416 errors.Clear(); 416 errors.Clear();
417 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 417 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
418 EXPECT_TRUE(errors.empty()); 418 EXPECT_TRUE(errors.empty());
419 419
420 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 420 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
421 POLICY_SOURCE_CLOUD, 421 POLICY_SOURCE_CLOUD,
422 base::MakeUnique<base::FundamentalValue>(10), nullptr); 422 base::MakeUnique<base::Value>(10), nullptr);
423 errors.Clear(); 423 errors.Clear();
424 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors)); 424 EXPECT_TRUE(handler.CheckPolicySettings(policy_map, &errors));
425 EXPECT_TRUE(errors.empty()); 425 EXPECT_TRUE(errors.empty());
426 426
427 // Check that values lying outside the accepted range are rejected and yield 427 // Check that values lying outside the accepted range are rejected and yield
428 // an error message. 428 // an error message.
429 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 429 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
430 POLICY_SOURCE_CLOUD, 430 POLICY_SOURCE_CLOUD,
431 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 431 base::MakeUnique<base::Value>(-5), nullptr);
432 errors.Clear(); 432 errors.Clear();
433 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 433 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
434 EXPECT_FALSE(errors.empty()); 434 EXPECT_FALSE(errors.empty());
435 435
436 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 436 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
437 POLICY_SOURCE_CLOUD, 437 POLICY_SOURCE_CLOUD,
438 base::MakeUnique<base::FundamentalValue>(15), nullptr); 438 base::MakeUnique<base::Value>(15), nullptr);
439 errors.Clear(); 439 errors.Clear();
440 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 440 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
441 EXPECT_FALSE(errors.empty()); 441 EXPECT_FALSE(errors.empty());
442 442
443 // Check that an entirely invalid value is rejected and yields an error 443 // Check that an entirely invalid value is rejected and yields an error
444 // message. 444 // message.
445 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 445 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
446 POLICY_SOURCE_CLOUD, 446 POLICY_SOURCE_CLOUD,
447 base::MakeUnique<base::StringValue>("invalid"), nullptr); 447 base::MakeUnique<base::StringValue>("invalid"), nullptr);
448 errors.Clear(); 448 errors.Clear();
449 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors)); 449 EXPECT_FALSE(handler.CheckPolicySettings(policy_map, &errors));
450 EXPECT_FALSE(errors.empty()); 450 EXPECT_FALSE(errors.empty());
451 } 451 }
452 452
453 TEST(IntPercentageToDoublePolicyHandler, ApplyPolicySettingsClamp) { 453 TEST(IntPercentageToDoublePolicyHandler, ApplyPolicySettingsClamp) {
454 PolicyMap policy_map; 454 PolicyMap policy_map;
455 PrefValueMap prefs; 455 PrefValueMap prefs;
456 std::unique_ptr<base::Value> expected; 456 std::unique_ptr<base::Value> expected;
457 const base::Value* value; 457 const base::Value* value;
458 458
459 // This tests needs to modify an int policy. The exact policy used and its 459 // This tests needs to modify an int policy. The exact policy used and its
460 // semantics outside the test are irrelevant. 460 // semantics outside the test are irrelevant.
461 IntPercentageToDoublePolicyHandler handler( 461 IntPercentageToDoublePolicyHandler handler(
462 kTestPolicy, kTestPref, 0, 10, true); 462 kTestPolicy, kTestPref, 0, 10, true);
463 463
464 // Check that values lying in the accepted range are written to the pref. 464 // Check that values lying in the accepted range are written to the pref.
465 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 465 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
466 POLICY_SOURCE_CLOUD, 466 POLICY_SOURCE_CLOUD,
467 base::MakeUnique<base::FundamentalValue>(0), nullptr); 467 base::MakeUnique<base::Value>(0), nullptr);
468 prefs.Clear(); 468 prefs.Clear();
469 handler.ApplyPolicySettings(policy_map, &prefs); 469 handler.ApplyPolicySettings(policy_map, &prefs);
470 expected.reset(new base::FundamentalValue(0.0)); 470 expected.reset(new base::Value(0.0));
471 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 471 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
472 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 472 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
473 473
474 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 474 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
475 POLICY_SOURCE_CLOUD, 475 POLICY_SOURCE_CLOUD,
476 base::MakeUnique<base::FundamentalValue>(5), nullptr); 476 base::MakeUnique<base::Value>(5), nullptr);
477 prefs.Clear(); 477 prefs.Clear();
478 handler.ApplyPolicySettings(policy_map, &prefs); 478 handler.ApplyPolicySettings(policy_map, &prefs);
479 expected.reset(new base::FundamentalValue(0.05)); 479 expected.reset(new base::Value(0.05));
480 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 480 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
481 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 481 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
482 482
483 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 483 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
484 POLICY_SOURCE_CLOUD, 484 POLICY_SOURCE_CLOUD,
485 base::MakeUnique<base::FundamentalValue>(10), nullptr); 485 base::MakeUnique<base::Value>(10), nullptr);
486 prefs.Clear(); 486 prefs.Clear();
487 handler.ApplyPolicySettings(policy_map, &prefs); 487 handler.ApplyPolicySettings(policy_map, &prefs);
488 expected.reset(new base::FundamentalValue(0.1)); 488 expected.reset(new base::Value(0.1));
489 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 489 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
490 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 490 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
491 491
492 // Check that values lying outside the accepted range are clamped and written 492 // Check that values lying outside the accepted range are clamped and written
493 // to the pref. 493 // to the pref.
494 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 494 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
495 POLICY_SOURCE_CLOUD, 495 POLICY_SOURCE_CLOUD,
496 base::MakeUnique<base::FundamentalValue>(-5), nullptr); 496 base::MakeUnique<base::Value>(-5), nullptr);
497 prefs.Clear(); 497 prefs.Clear();
498 handler.ApplyPolicySettings(policy_map, &prefs); 498 handler.ApplyPolicySettings(policy_map, &prefs);
499 expected.reset(new base::FundamentalValue(0.0)); 499 expected.reset(new base::Value(0.0));
500 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 500 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
501 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 501 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
502 502
503 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 503 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
504 POLICY_SOURCE_CLOUD, 504 POLICY_SOURCE_CLOUD,
505 base::MakeUnique<base::FundamentalValue>(15), nullptr); 505 base::MakeUnique<base::Value>(15), nullptr);
506 prefs.Clear(); 506 prefs.Clear();
507 handler.ApplyPolicySettings(policy_map, &prefs); 507 handler.ApplyPolicySettings(policy_map, &prefs);
508 expected.reset(new base::FundamentalValue(0.1)); 508 expected.reset(new base::Value(0.1));
509 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 509 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
510 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 510 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
511 } 511 }
512 512
513 TEST(IntPercentageToDoublePolicyHandler, ApplyPolicySettingsDontClamp) { 513 TEST(IntPercentageToDoublePolicyHandler, ApplyPolicySettingsDontClamp) {
514 PolicyMap policy_map; 514 PolicyMap policy_map;
515 PrefValueMap prefs; 515 PrefValueMap prefs;
516 std::unique_ptr<base::Value> expected; 516 std::unique_ptr<base::Value> expected;
517 const base::Value* value; 517 const base::Value* value;
518 518
519 // This tests needs to modify an int policy. The exact policy used and its 519 // This tests needs to modify an int policy. The exact policy used and its
520 // semantics outside the test are irrelevant. 520 // semantics outside the test are irrelevant.
521 IntPercentageToDoublePolicyHandler handler( 521 IntPercentageToDoublePolicyHandler handler(
522 kTestPolicy, kTestPref, 0, 10, true); 522 kTestPolicy, kTestPref, 0, 10, true);
523 523
524 // Check that values lying in the accepted range are written to the pref. 524 // Check that values lying in the accepted range are written to the pref.
525 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 525 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
526 POLICY_SOURCE_CLOUD, 526 POLICY_SOURCE_CLOUD,
527 base::MakeUnique<base::FundamentalValue>(0), nullptr); 527 base::MakeUnique<base::Value>(0), nullptr);
528 prefs.Clear(); 528 prefs.Clear();
529 handler.ApplyPolicySettings(policy_map, &prefs); 529 handler.ApplyPolicySettings(policy_map, &prefs);
530 expected.reset(new base::FundamentalValue(0.0)); 530 expected.reset(new base::Value(0.0));
531 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 531 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
532 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 532 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
533 533
534 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 534 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
535 POLICY_SOURCE_CLOUD, 535 POLICY_SOURCE_CLOUD,
536 base::MakeUnique<base::FundamentalValue>(5), nullptr); 536 base::MakeUnique<base::Value>(5), nullptr);
537 prefs.Clear(); 537 prefs.Clear();
538 handler.ApplyPolicySettings(policy_map, &prefs); 538 handler.ApplyPolicySettings(policy_map, &prefs);
539 expected.reset(new base::FundamentalValue(0.05)); 539 expected.reset(new base::Value(0.05));
540 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 540 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
541 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 541 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
542 542
543 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, 543 policy_map.Set(kTestPolicy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
544 POLICY_SOURCE_CLOUD, 544 POLICY_SOURCE_CLOUD,
545 base::MakeUnique<base::FundamentalValue>(10), nullptr); 545 base::MakeUnique<base::Value>(10), nullptr);
546 prefs.Clear(); 546 prefs.Clear();
547 handler.ApplyPolicySettings(policy_map, &prefs); 547 handler.ApplyPolicySettings(policy_map, &prefs);
548 expected.reset(new base::FundamentalValue(0.1)); 548 expected.reset(new base::Value(0.1));
549 EXPECT_TRUE(prefs.GetValue(kTestPref, &value)); 549 EXPECT_TRUE(prefs.GetValue(kTestPref, &value));
550 EXPECT_TRUE(base::Value::Equals(expected.get(), value)); 550 EXPECT_TRUE(base::Value::Equals(expected.get(), value));
551 } 551 }
552 552
553 TEST(SchemaValidatingPolicyHandlerTest, CheckAndGetValue) { 553 TEST(SchemaValidatingPolicyHandlerTest, CheckAndGetValue) {
554 std::string error; 554 std::string error;
555 static const char kSchemaJson[] = 555 static const char kSchemaJson[] =
556 "{" 556 "{"
557 " \"type\": \"object\"," 557 " \"type\": \"object\","
558 " \"properties\": {" 558 " \"properties\": {"
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 handler_recommended.ApplyPolicySettings(policy_map_mandatory, &prefs); 737 handler_recommended.ApplyPolicySettings(policy_map_mandatory, &prefs);
738 EXPECT_TRUE(prefs.GetValue(kTestPref, &value_set_in_pref)); 738 EXPECT_TRUE(prefs.GetValue(kTestPref, &value_set_in_pref));
739 EXPECT_TRUE(value_expected_in_pref->Equals(value_set_in_pref)); 739 EXPECT_TRUE(value_expected_in_pref->Equals(value_set_in_pref));
740 740
741 EXPECT_FALSE( 741 EXPECT_FALSE(
742 handler_none.CheckPolicySettings(policy_map_recommended, &errors)); 742 handler_none.CheckPolicySettings(policy_map_recommended, &errors));
743 EXPECT_FALSE(errors.empty()); 743 EXPECT_FALSE(errors.empty());
744 } 744 }
745 745
746 } // namespace policy 746 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698