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

Side by Side Diff: base/prefs/pref_value_map_unittest.cc

Issue 1648403002: Move base/prefs to components/prefs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 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
« no previous file with comments | « base/prefs/pref_value_map.cc ('k') | base/prefs/pref_value_store.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/prefs/pref_value_map.h"
6
7 #include "base/values.h"
8 #include "testing/gtest/include/gtest/gtest.h"
9
10 namespace base {
11 namespace {
12
13 TEST(PrefValueMapTest, SetValue) {
14 PrefValueMap map;
15 const Value* result = NULL;
16 EXPECT_FALSE(map.GetValue("key", &result));
17 EXPECT_FALSE(result);
18
19 EXPECT_TRUE(map.SetValue("key", make_scoped_ptr(new StringValue("test"))));
20 EXPECT_FALSE(map.SetValue("key", make_scoped_ptr(new StringValue("test"))));
21 EXPECT_TRUE(map.SetValue("key", make_scoped_ptr(new StringValue("hi mom!"))));
22
23 EXPECT_TRUE(map.GetValue("key", &result));
24 EXPECT_TRUE(StringValue("hi mom!").Equals(result));
25 }
26
27 TEST(PrefValueMapTest, GetAndSetIntegerValue) {
28 PrefValueMap map;
29 ASSERT_TRUE(map.SetValue("key", make_scoped_ptr(new FundamentalValue(5))));
30
31 int int_value = 0;
32 EXPECT_TRUE(map.GetInteger("key", &int_value));
33 EXPECT_EQ(5, int_value);
34
35 map.SetInteger("key", -14);
36 EXPECT_TRUE(map.GetInteger("key", &int_value));
37 EXPECT_EQ(-14, int_value);
38 }
39
40 TEST(PrefValueMapTest, SetDoubleValue) {
41 PrefValueMap map;
42 ASSERT_TRUE(map.SetValue("key", make_scoped_ptr(new FundamentalValue(5.5))));
43
44 const Value* result = NULL;
45 ASSERT_TRUE(map.GetValue("key", &result));
46 double double_value = 0.;
47 EXPECT_TRUE(result->GetAsDouble(&double_value));
48 EXPECT_DOUBLE_EQ(5.5, double_value);
49 }
50
51 TEST(PrefValueMapTest, RemoveValue) {
52 PrefValueMap map;
53 EXPECT_FALSE(map.RemoveValue("key"));
54
55 EXPECT_TRUE(map.SetValue("key", make_scoped_ptr(new StringValue("test"))));
56 EXPECT_TRUE(map.GetValue("key", NULL));
57
58 EXPECT_TRUE(map.RemoveValue("key"));
59 EXPECT_FALSE(map.GetValue("key", NULL));
60
61 EXPECT_FALSE(map.RemoveValue("key"));
62 }
63
64 TEST(PrefValueMapTest, Clear) {
65 PrefValueMap map;
66 EXPECT_TRUE(map.SetValue("key", make_scoped_ptr(new StringValue("test"))));
67 EXPECT_TRUE(map.GetValue("key", NULL));
68
69 map.Clear();
70
71 EXPECT_FALSE(map.GetValue("key", NULL));
72 }
73
74 TEST(PrefValueMapTest, GetDifferingKeys) {
75 PrefValueMap reference;
76 EXPECT_TRUE(
77 reference.SetValue("b", make_scoped_ptr(new StringValue("test"))));
78 EXPECT_TRUE(
79 reference.SetValue("c", make_scoped_ptr(new StringValue("test"))));
80 EXPECT_TRUE(
81 reference.SetValue("e", make_scoped_ptr(new StringValue("test"))));
82
83 PrefValueMap check;
84 std::vector<std::string> differing_paths;
85 std::vector<std::string> expected_differing_paths;
86
87 reference.GetDifferingKeys(&check, &differing_paths);
88 expected_differing_paths.push_back("b");
89 expected_differing_paths.push_back("c");
90 expected_differing_paths.push_back("e");
91 EXPECT_EQ(expected_differing_paths, differing_paths);
92
93 EXPECT_TRUE(check.SetValue("a", make_scoped_ptr(new StringValue("test"))));
94 EXPECT_TRUE(check.SetValue("c", make_scoped_ptr(new StringValue("test"))));
95 EXPECT_TRUE(check.SetValue("d", make_scoped_ptr(new StringValue("test"))));
96
97 reference.GetDifferingKeys(&check, &differing_paths);
98 expected_differing_paths.clear();
99 expected_differing_paths.push_back("a");
100 expected_differing_paths.push_back("b");
101 expected_differing_paths.push_back("d");
102 expected_differing_paths.push_back("e");
103 EXPECT_EQ(expected_differing_paths, differing_paths);
104 }
105
106 TEST(PrefValueMapTest, SwapTwoMaps) {
107 PrefValueMap first_map;
108 EXPECT_TRUE(
109 first_map.SetValue("a", make_scoped_ptr(new StringValue("test"))));
110 EXPECT_TRUE(
111 first_map.SetValue("b", make_scoped_ptr(new StringValue("test"))));
112 EXPECT_TRUE(
113 first_map.SetValue("c", make_scoped_ptr(new StringValue("test"))));
114
115 PrefValueMap second_map;
116 EXPECT_TRUE(
117 second_map.SetValue("d", make_scoped_ptr(new StringValue("test"))));
118 EXPECT_TRUE(
119 second_map.SetValue("e", make_scoped_ptr(new StringValue("test"))));
120 EXPECT_TRUE(
121 second_map.SetValue("f", make_scoped_ptr(new StringValue("test"))));
122
123 first_map.Swap(&second_map);
124
125 EXPECT_TRUE(first_map.GetValue("d", NULL));
126 EXPECT_TRUE(first_map.GetValue("e", NULL));
127 EXPECT_TRUE(first_map.GetValue("f", NULL));
128
129 EXPECT_TRUE(second_map.GetValue("a", NULL));
130 EXPECT_TRUE(second_map.GetValue("b", NULL));
131 EXPECT_TRUE(second_map.GetValue("c", NULL));
132 }
133
134 } // namespace
135 } // namespace base
OLDNEW
« no previous file with comments | « base/prefs/pref_value_map.cc ('k') | base/prefs/pref_value_store.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698