|
7 | 7 | //===----------------------------------------------------------------------===// |
8 | 8 |
|
9 | 9 | #include "llvm/ADT/STLExtras.h" |
| 10 | +#include "llvm/ADT/ArrayRef.h" |
10 | 11 | #include "llvm/ADT/StringRef.h" |
11 | 12 | #include "gmock/gmock.h" |
12 | 13 | #include "gtest/gtest.h" |
|
27 | 28 | using namespace llvm; |
28 | 29 |
|
29 | 30 | using testing::ElementsAre; |
| 31 | +using testing::ElementsAreArray; |
30 | 32 | using testing::UnorderedElementsAre; |
31 | 33 |
|
32 | 34 | namespace { |
@@ -772,48 +774,30 @@ TEST(STLExtrasTest, DropBeginTest) { |
772 | 774 | SmallVector<int, 5> vec{0, 1, 2, 3, 4}; |
773 | 775 |
|
774 | 776 | for (int n = 0; n < 5; ++n) { |
775 | | - int i = n; |
776 | | - for (auto &v : drop_begin(vec, n)) { |
777 | | - EXPECT_EQ(v, i); |
778 | | - i += 1; |
779 | | - } |
780 | | - EXPECT_EQ(i, 5); |
| 777 | + EXPECT_THAT(drop_begin(vec, n), |
| 778 | + ElementsAreArray(ArrayRef(&vec[n], vec.size() - n))); |
781 | 779 | } |
782 | 780 | } |
783 | 781 |
|
784 | 782 | TEST(STLExtrasTest, DropBeginDefaultTest) { |
785 | 783 | SmallVector<int, 5> vec{0, 1, 2, 3, 4}; |
786 | 784 |
|
787 | | - int i = 1; |
788 | | - for (auto &v : drop_begin(vec)) { |
789 | | - EXPECT_EQ(v, i); |
790 | | - i += 1; |
791 | | - } |
792 | | - EXPECT_EQ(i, 5); |
| 785 | + EXPECT_THAT(drop_begin(vec), ElementsAre(1, 2, 3, 4)); |
793 | 786 | } |
794 | 787 |
|
795 | 788 | TEST(STLExtrasTest, DropEndTest) { |
796 | 789 | SmallVector<int, 5> vec{0, 1, 2, 3, 4}; |
797 | 790 |
|
798 | 791 | for (int n = 0; n < 5; ++n) { |
799 | | - int i = 0; |
800 | | - for (auto &v : drop_end(vec, n)) { |
801 | | - EXPECT_EQ(v, i); |
802 | | - i += 1; |
803 | | - } |
804 | | - EXPECT_EQ(i, 5 - n); |
| 792 | + EXPECT_THAT(drop_end(vec, n), |
| 793 | + ElementsAreArray(ArrayRef(vec.data(), vec.size() - n))); |
805 | 794 | } |
806 | 795 | } |
807 | 796 |
|
808 | 797 | TEST(STLExtrasTest, DropEndDefaultTest) { |
809 | 798 | SmallVector<int, 5> vec{0, 1, 2, 3, 4}; |
810 | 799 |
|
811 | | - int i = 0; |
812 | | - for (auto &v : drop_end(vec)) { |
813 | | - EXPECT_EQ(v, i); |
814 | | - i += 1; |
815 | | - } |
816 | | - EXPECT_EQ(i, 4); |
| 800 | + EXPECT_THAT(drop_end(vec), ElementsAre(0, 1, 2, 3)); |
817 | 801 | } |
818 | 802 |
|
819 | 803 | TEST(STLExtrasTest, MapRangeTest) { |
|
0 commit comments