OLD | NEW |
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/sync/base/enum_set.h" | 5 #include "components/sync/base/enum_set.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 const TestEnumSet enums(TEST_3, TEST_1, TEST_0); | 70 const TestEnumSet enums(TEST_3, TEST_1, TEST_0); |
71 EXPECT_FALSE(enums.Empty()); | 71 EXPECT_FALSE(enums.Empty()); |
72 EXPECT_EQ(static_cast<size_t>(3), enums.Size()); | 72 EXPECT_EQ(static_cast<size_t>(3), enums.Size()); |
73 EXPECT_TRUE(enums.Has(TEST_0)); | 73 EXPECT_TRUE(enums.Has(TEST_0)); |
74 EXPECT_TRUE(enums.Has(TEST_1)); | 74 EXPECT_TRUE(enums.Has(TEST_1)); |
75 EXPECT_FALSE(enums.Has(TEST_2)); | 75 EXPECT_FALSE(enums.Has(TEST_2)); |
76 EXPECT_TRUE(enums.Has(TEST_3)); | 76 EXPECT_TRUE(enums.Has(TEST_3)); |
77 EXPECT_FALSE(enums.Has(TEST_4)); | 77 EXPECT_FALSE(enums.Has(TEST_4)); |
78 } | 78 } |
79 | 79 |
| 80 TEST_F(EnumSetTest, DuplicatesInConstructor) { |
| 81 EXPECT_EQ(TestEnumSet(TEST_3, TEST_1, TEST_0, TEST_3, TEST_1, TEST_3), |
| 82 TestEnumSet(TEST_0, TEST_1, TEST_3)); |
| 83 } |
| 84 |
80 TEST_F(EnumSetTest, All) { | 85 TEST_F(EnumSetTest, All) { |
81 const TestEnumSet enums(TestEnumSet::All()); | 86 const TestEnumSet enums(TestEnumSet::All()); |
82 EXPECT_FALSE(enums.Empty()); | 87 EXPECT_FALSE(enums.Empty()); |
83 EXPECT_EQ(static_cast<size_t>(5), enums.Size()); | 88 EXPECT_EQ(static_cast<size_t>(5), enums.Size()); |
84 EXPECT_TRUE(enums.Has(TEST_0)); | 89 EXPECT_TRUE(enums.Has(TEST_0)); |
85 EXPECT_TRUE(enums.Has(TEST_1)); | 90 EXPECT_TRUE(enums.Has(TEST_1)); |
86 EXPECT_TRUE(enums.Has(TEST_2)); | 91 EXPECT_TRUE(enums.Has(TEST_2)); |
87 EXPECT_TRUE(enums.Has(TEST_3)); | 92 EXPECT_TRUE(enums.Has(TEST_3)); |
88 EXPECT_TRUE(enums.Has(TEST_4)); | 93 EXPECT_TRUE(enums.Has(TEST_4)); |
89 } | 94 } |
90 | 95 |
| 96 TEST_F(EnumSetTest, FromRange) { |
| 97 EXPECT_EQ(TestEnumSet(TEST_1, TEST_2, TEST_3), |
| 98 TestEnumSet::FromRange(TEST_1, TEST_3)); |
| 99 EXPECT_EQ(TestEnumSet::All(), TestEnumSet::FromRange(TEST_0, TEST_4)); |
| 100 EXPECT_EQ(TestEnumSet(TEST_1), TestEnumSet::FromRange(TEST_1, TEST_1)); |
| 101 } |
| 102 |
91 TEST_F(EnumSetTest, Put) { | 103 TEST_F(EnumSetTest, Put) { |
92 TestEnumSet enums(TEST_3); | 104 TestEnumSet enums(TEST_3); |
93 enums.Put(TEST_2); | 105 enums.Put(TEST_2); |
94 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3), enums); | 106 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3), enums); |
95 enums.Put(TEST_4); | 107 enums.Put(TEST_4); |
96 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3, TEST_4), enums); | 108 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3, TEST_4), enums); |
97 } | 109 } |
98 | 110 |
99 TEST_F(EnumSetTest, PutAll) { | 111 TEST_F(EnumSetTest, PutAll) { |
100 TestEnumSet enums(TEST_3, TEST_4); | 112 TestEnumSet enums(TEST_3, TEST_4); |
101 enums.PutAll(TestEnumSet(TEST_2, TEST_3)); | 113 enums.PutAll(TestEnumSet(TEST_2, TEST_3)); |
102 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3, TEST_4), enums); | 114 EXPECT_EQ(TestEnumSet(TEST_2, TEST_3, TEST_4), enums); |
103 } | 115 } |
104 | 116 |
| 117 TEST_F(EnumSetTest, PutRange) { |
| 118 TestEnumSet enums; |
| 119 enums.PutRange(TEST_1, TEST_3); |
| 120 EXPECT_EQ(TestEnumSet(TEST_1, TEST_2, TEST_3), enums); |
| 121 } |
| 122 |
105 TEST_F(EnumSetTest, RetainAll) { | 123 TEST_F(EnumSetTest, RetainAll) { |
106 TestEnumSet enums(TEST_3, TEST_4); | 124 TestEnumSet enums(TEST_3, TEST_4); |
107 enums.RetainAll(TestEnumSet(TEST_2, TEST_3)); | 125 enums.RetainAll(TestEnumSet(TEST_2, TEST_3)); |
108 EXPECT_EQ(TestEnumSet(TEST_3), enums); | 126 EXPECT_EQ(TestEnumSet(TEST_3), enums); |
109 } | 127 } |
110 | 128 |
111 TEST_F(EnumSetTest, Remove) { | 129 TEST_F(EnumSetTest, Remove) { |
112 TestEnumSet enums(TEST_3, TEST_4); | 130 TestEnumSet enums(TEST_3, TEST_4); |
113 enums.Remove(TEST_0); | 131 enums.Remove(TEST_0); |
114 enums.Remove(TEST_2); | 132 enums.Remove(TEST_2); |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 TEST_F(EnumSetTest, Difference) { | 205 TEST_F(EnumSetTest, Difference) { |
188 const TestEnumSet enums1(TEST_3, TEST_4); | 206 const TestEnumSet enums1(TEST_3, TEST_4); |
189 const TestEnumSet enums2(TEST_2, TEST_3); | 207 const TestEnumSet enums2(TEST_2, TEST_3); |
190 const TestEnumSet enums3 = Difference(enums1, enums2); | 208 const TestEnumSet enums3 = Difference(enums1, enums2); |
191 | 209 |
192 EXPECT_EQ(TestEnumSet(TEST_4), enums3); | 210 EXPECT_EQ(TestEnumSet(TEST_4), enums3); |
193 } | 211 } |
194 | 212 |
195 } // namespace | 213 } // namespace |
196 } // namespace syncer | 214 } // namespace syncer |
OLD | NEW |