unkeyed_iterator_test.cxx 756 B

123456789101112131415161718192021222324
  1. #include "iterator/unkeyed_iterator.hpp"
  2. #include <map>
  3. #include <vector>
  4. #include <gmock/gmock.h>
  5. TEST(UnkeyedIteratorTest, IteratorOnlyReturnsValues) {
  6. std::map<int, int> map{{1, 2}, {2, 3}};
  7. std::vector<int> const expected{2, 3};
  8. iterator::unkeyed_iterator<std::map<int, int>::iterator>{map.begin()};
  9. std::vector<int> const result{
  10. iterator::unkeyed_iterator<std::map<int, int>::iterator>{map.begin()},
  11. iterator::unkeyed_iterator<std::map<int, int>::iterator>{map.end()}
  12. };
  13. EXPECT_THAT(result, expected);
  14. }
  15. TEST(UnkeyedIteratorTest, CanModifyIteratedCollectionValues) {
  16. std::map<int, int> map{{1, 2}, {2, 3}};
  17. iterator::unkeyed_iterator<std::map<int, int>::iterator> uit{map.begin()};
  18. *uit = 4;
  19. EXPECT_THAT(map[1], 4);
  20. }