diff options
Diffstat (limited to 'llvm/unittests/ADT')
-rw-r--r-- | llvm/unittests/ADT/DenseMapTest.cpp | 20 | ||||
-rw-r--r-- | llvm/unittests/ADT/DenseSetTest.cpp | 9 |
2 files changed, 29 insertions, 0 deletions
diff --git a/llvm/unittests/ADT/DenseMapTest.cpp b/llvm/unittests/ADT/DenseMapTest.cpp index 87f22f6f403..ee9c5dd3800 100644 --- a/llvm/unittests/ADT/DenseMapTest.cpp +++ b/llvm/unittests/ADT/DenseMapTest.cpp @@ -362,6 +362,26 @@ int CountCopyAndMove::Move = 0; } // anonymous namespace +// Test initializer list construction. +TEST(DenseMapCustomTest, InitializerList) { + DenseMap<int, int> M({{0, 0}, {0, 1}, {1, 2}}); + EXPECT_EQ(2u, M.size()); + EXPECT_EQ(1u, M.count(0)); + EXPECT_EQ(0, M[0]); + EXPECT_EQ(1u, M.count(1)); + EXPECT_EQ(2, M[1]); +} + +// Test initializer list construction. +TEST(DenseMapCustomTest, EqualityComparison) { + DenseMap<int, int> M1({{0, 0}, {1, 2}}); + DenseMap<int, int> M2({{0, 0}, {1, 2}}); + DenseMap<int, int> M3({{0, 0}, {1, 3}}); + + EXPECT_EQ(M1, M2); + EXPECT_NE(M1, M3); +} + // Test for the default minimum size of a DenseMap TEST(DenseMapCustomTest, DefaultMinReservedSizeTest) { // IF THIS VALUE CHANGE, please update InitialSizeTest, InitFromIterator, and diff --git a/llvm/unittests/ADT/DenseSetTest.cpp b/llvm/unittests/ADT/DenseSetTest.cpp index 0247f023dce..04f84e041fb 100644 --- a/llvm/unittests/ADT/DenseSetTest.cpp +++ b/llvm/unittests/ADT/DenseSetTest.cpp @@ -121,6 +121,15 @@ TYPED_TEST(DenseSetTest, FindAsTest) { EXPECT_TRUE(set.find_as("d") == set.end()); } +TYPED_TEST(DenseSetTest, EqualityComparisonTest) { + TypeParam set1({1, 2, 3, 4}); + TypeParam set2({4, 3, 2, 1}); + TypeParam set3({2, 3, 4, 5}); + + EXPECT_EQ(set1, set2); + EXPECT_NE(set1, set3); +} + // Simple class that counts how many moves and copy happens when growing a map struct CountCopyAndMove { static int Move; |