OLD | NEW |
| (Empty) |
1 // Copyright 2013 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 // The original source code is from: | |
6 // http://src.chromium.org/viewvc/chrome/trunk/src/base/stl_util_unittest.cc?rev
ision=171321 | |
7 | |
8 #include "util/stl_util.h" | |
9 | |
10 #include <set> | |
11 #include <vector> | |
12 | |
13 #include <gtest/gtest.h> | |
14 | |
15 namespace { | |
16 | |
17 using i18n::addressinput::STLIsSorted; | |
18 using i18n::addressinput::STLSetDifference; | |
19 | |
20 TEST(STLUtilTest, STLIsSorted) { | |
21 { | |
22 std::set<int> set; | |
23 set.insert(24); | |
24 set.insert(1); | |
25 set.insert(12); | |
26 EXPECT_TRUE(STLIsSorted(set)); | |
27 } | |
28 | |
29 { | |
30 std::vector<int> vector; | |
31 vector.push_back(1); | |
32 vector.push_back(1); | |
33 vector.push_back(4); | |
34 vector.push_back(64); | |
35 vector.push_back(12432); | |
36 EXPECT_TRUE(STLIsSorted(vector)); | |
37 vector.back() = 1; | |
38 EXPECT_FALSE(STLIsSorted(vector)); | |
39 } | |
40 } | |
41 | |
42 TEST(STLUtilTest, STLSetDifference) { | |
43 std::set<int> a1; | |
44 a1.insert(1); | |
45 a1.insert(2); | |
46 a1.insert(3); | |
47 a1.insert(4); | |
48 | |
49 std::set<int> a2; | |
50 a2.insert(3); | |
51 a2.insert(4); | |
52 a2.insert(5); | |
53 a2.insert(6); | |
54 a2.insert(7); | |
55 | |
56 { | |
57 std::set<int> difference; | |
58 difference.insert(1); | |
59 difference.insert(2); | |
60 EXPECT_EQ(difference, STLSetDifference<std::set<int> >(a1, a2)); | |
61 } | |
62 | |
63 { | |
64 std::set<int> difference; | |
65 difference.insert(5); | |
66 difference.insert(6); | |
67 difference.insert(7); | |
68 EXPECT_EQ(difference, STLSetDifference<std::set<int> >(a2, a1)); | |
69 } | |
70 | |
71 { | |
72 std::vector<int> difference; | |
73 difference.push_back(1); | |
74 difference.push_back(2); | |
75 EXPECT_EQ(difference, STLSetDifference<std::vector<int> >(a1, a2)); | |
76 } | |
77 | |
78 { | |
79 std::vector<int> difference; | |
80 difference.push_back(5); | |
81 difference.push_back(6); | |
82 difference.push_back(7); | |
83 EXPECT_EQ(difference, STLSetDifference<std::vector<int> >(a2, a1)); | |
84 } | |
85 } | |
86 | |
87 } // namespace | |
OLD | NEW |