diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2015-03-25 00:50:21 +0000 |
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2015-03-25 00:50:21 +0000 |
| commit | d811ffa5e6c0f30367b98a137298498bfc671bf2 (patch) | |
| tree | e258afd7f3eb44a7e1eee0a3114a6481ab7117d2 /llvm/unittests/ADT/MapVectorTest.cpp | |
| parent | 44cc6548699dad4863319f9858b3c35c99becc07 (diff) | |
| download | llvm-d811ffa5e6c0f30367b98a137298498bfc671bf2.zip llvm-d811ffa5e6c0f30367b98a137298498bfc671bf2.tar.gz llvm-d811ffa5e6c0f30367b98a137298498bfc671bf2.tar.bz2 | |
[ADT] Teach MapVector to support a swap member. Will be used in
a subsequent commit in Clang.
llvm-svn: 233159
Diffstat (limited to 'llvm/unittests/ADT/MapVectorTest.cpp')
| -rw-r--r-- | llvm/unittests/ADT/MapVectorTest.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/llvm/unittests/ADT/MapVectorTest.cpp b/llvm/unittests/ADT/MapVectorTest.cpp index 2caa8c7..ff84642 100644 --- a/llvm/unittests/ADT/MapVectorTest.cpp +++ b/llvm/unittests/ADT/MapVectorTest.cpp @@ -14,6 +14,31 @@ using namespace llvm; +TEST(MapVectorTest, swap) { + MapVector<int, int> MV1, MV2; + std::pair<MapVector<int, int>::iterator, bool> R; + + R = MV1.insert(std::make_pair(1, 2)); + ASSERT_EQ(R.first, MV1.begin()); + EXPECT_EQ(R.first->first, 1); + EXPECT_EQ(R.first->second, 2); + EXPECT_TRUE(R.second); + + EXPECT_FALSE(MV1.empty()); + EXPECT_TRUE(MV2.empty()); + MV2.swap(MV1); + EXPECT_TRUE(MV1.empty()); + EXPECT_FALSE(MV2.empty()); + + auto I = MV1.find(1); + ASSERT_EQ(MV1.end(), I); + + I = MV2.find(1); + ASSERT_EQ(I, MV2.begin()); + EXPECT_EQ(I->first, 1); + EXPECT_EQ(I->second, 2); +} + TEST(MapVectorTest, insert_pop) { MapVector<int, int> MV; std::pair<MapVector<int, int>::iterator, bool> R; |
