|
|
@@ -18,19 +18,19 @@ using testing::Lt;
|
|
|
using testing::Ne;
|
|
|
|
|
|
// TODO: This ought to be implemented as a compiles-test
|
|
|
-TEST(IndexedIteratorTest, CanCastCompatibleIterators) {
|
|
|
+TEST(EnumerateIteartor, CanCastCompatibleIterators) {
|
|
|
std::vector<int> v{1, 2, 3, 4, 5};
|
|
|
EnumerateIterator eai(v.begin());
|
|
|
EnumerateIterator<std::vector<int>::const_iterator>{eai};
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, CanLieAboutIndex) {
|
|
|
+TEST(EnumerateIteartor, CanLieAboutIndex) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator it(vec.begin(), 3);
|
|
|
EXPECT_THAT(it->first, 3);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, FakeIndexDoesntEffectEqualityCheck) {
|
|
|
+TEST(EnumerateIteartor, FakeIndexDoesntEffectEqualityCheck) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EXPECT_THAT(EnumerateIterator(vec.begin()),
|
|
|
EnumerateIterator(vec.begin(), 3));
|
|
|
@@ -38,20 +38,20 @@ TEST(IndexedIteratorTest, FakeIndexDoesntEffectEqualityCheck) {
|
|
|
Ne(EnumerateIterator(vec.begin(), 3)));
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, DoesNotTrackByIndex) {
|
|
|
+TEST(EnumerateIteartor, DoesNotTrackByIndex) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator end(vec.end());
|
|
|
EXPECT_THAT(decltype(end){}, Ne(end));
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, IteratorPropagatesAtEnd) {
|
|
|
+TEST(EnumerateIteartor, IteratorPropagatesAtEnd) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator end(EndAwareIterator(vec.end(), vec.end()));
|
|
|
|
|
|
- EXPECT_EQ(end, iterator::sentinel);
|
|
|
+ EXPECT_THAT(end, iterator::sentinel);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, CanCompareIteratorOrder) {
|
|
|
+TEST(EnumerateIteartor, CanCompareIteratorOrder) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator const begin(vec.begin());
|
|
|
EnumerateIterator const it = begin + 3;
|
|
|
@@ -64,7 +64,7 @@ TEST(IndexedIteratorTest, CanCompareIteratorOrder) {
|
|
|
EXPECT_THAT(it, Ge(it));
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, PreIncrementAdvancesIterator) {
|
|
|
+TEST(EnumerateIteartor, PreIncrementAdvancesIterator) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator it(vec.begin() + 1);
|
|
|
EXPECT_THAT(it->second, 3);
|
|
|
@@ -72,7 +72,7 @@ TEST(IndexedIteratorTest, PreIncrementAdvancesIterator) {
|
|
|
EXPECT_THAT(it->second, 2);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, PostIncrementReturnsCopyOfPrev) {
|
|
|
+TEST(EnumerateIteartor, PostIncrementReturnsCopyOfPrev) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator it(vec.begin() + 1);
|
|
|
EXPECT_THAT(it->second, 3);
|
|
|
@@ -80,7 +80,7 @@ TEST(IndexedIteratorTest, PostIncrementReturnsCopyOfPrev) {
|
|
|
EXPECT_THAT(it->second, 2);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, PreDecrementAdvancesIterator) {
|
|
|
+TEST(EnumerateIteartor, PreDecrementAdvancesIterator) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator it(vec.begin() + 1);
|
|
|
EXPECT_THAT(it->second, 3);
|
|
|
@@ -88,7 +88,7 @@ TEST(IndexedIteratorTest, PreDecrementAdvancesIterator) {
|
|
|
EXPECT_THAT(it->second, 5);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, PostDecrementReturnsCopyOfPrev) {
|
|
|
+TEST(EnumerateIteartor, PostDecrementReturnsCopyOfPrev) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator it(vec.begin() + 1);
|
|
|
EXPECT_THAT(it->second, 3);
|
|
|
@@ -96,7 +96,7 @@ TEST(IndexedIteratorTest, PostDecrementReturnsCopyOfPrev) {
|
|
|
EXPECT_THAT(it->second, 5);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, CanWalkNStepsForward) {
|
|
|
+TEST(EnumerateIteartor, CanWalkNStepsForward) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator const begin(vec.begin());
|
|
|
EnumerateIterator it = begin;
|
|
|
@@ -104,7 +104,7 @@ TEST(IndexedIteratorTest, CanWalkNStepsForward) {
|
|
|
EXPECT_THAT(ranges::distance(begin, it), 4);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, CanWalkNStepsBackwards) {
|
|
|
+TEST(EnumerateIteartor, CanWalkNStepsBackwards) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator const end(vec.end());
|
|
|
EnumerateIterator it = end;
|
|
|
@@ -112,7 +112,7 @@ TEST(IndexedIteratorTest, CanWalkNStepsBackwards) {
|
|
|
EXPECT_THAT(ranges::distance(it, end), 4);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, RandomAccessIsPassthrough) {
|
|
|
+TEST(EnumerateIteartor, RandomAccessIsPassthrough) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EXPECT_THAT(EnumerateIterator(vec.begin()) + 4,
|
|
|
EnumerateIterator(vec.begin() + 4));
|
|
|
@@ -120,7 +120,7 @@ TEST(IndexedIteratorTest, RandomAccessIsPassthrough) {
|
|
|
EnumerateIterator(vec.end() - 4));
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, TreatsVectorIteratorAsPairIdxValue) {
|
|
|
+TEST(EnumerateIteartor, TreatsVectorIteratorAsPairIdxValue) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
std::vector<std::pair<int, int>> const expected{
|
|
|
{0, 5}, {1, 3}, {2, 2}, {3, 8}, {4, 9}, {5, 11}, {6, 2}, {7, 4}};
|
|
|
@@ -130,7 +130,7 @@ TEST(IndexedIteratorTest, TreatsVectorIteratorAsPairIdxValue) {
|
|
|
EXPECT_THAT(result, expected);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, TreatsVectorIteratorAsMapIdxToValue) {
|
|
|
+TEST(EnumerateIteartor, TreatsVectorIteratorAsMapIdxToValue) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
std::map<int, int> const expected{{0, 5}, {1, 3}, {2, 2}, {3, 8},
|
|
|
{4, 9}, {5, 11}, {6, 2}, {7, 4}};
|
|
|
@@ -140,7 +140,7 @@ TEST(IndexedIteratorTest, TreatsVectorIteratorAsMapIdxToValue) {
|
|
|
EXPECT_THAT(result, expected);
|
|
|
}
|
|
|
|
|
|
-TEST(IndexedIteratorTest, CanMutatePointedToData) {
|
|
|
+TEST(EnumerateIteartor, CanMutatePointedToData) {
|
|
|
std::vector<int> vec{5, 3, 2, 8, 9, 11, 2, 4};
|
|
|
EnumerateIterator(vec.begin() + 4, 4)->second = -1;
|
|
|
EXPECT_THAT(vec[4], -1);
|