#include #include "tools/pairs.h" using namespace testing; using std::vector; using std::pair; TEST(getPairs, emptyCollection) { EXPECT_THAT(getPairs(vector()), IsEmpty()); } TEST(getPairs, oneElementCollection) { EXPECT_THAT(getPairs(vector{1}), IsEmpty()); } TEST(getPairs, validCollection) { { const auto actual = getPairs(vector { 1, 2 }); const vector> expected { { 1, 2 } }; EXPECT_THAT(actual, ElementsAreArray(expected)); } { const auto actual = getPairs(vector { 1, 2, 3 }); const vector> expected { { 1, 2 }, { 2, 3 } }; EXPECT_THAT(actual, ElementsAreArray(expected)); } { const auto actual = getPairs(vector { 1, 2, 3, 4 }); const vector> expected { { 1, 2 }, { 2, 3 }, { 3, 4 } }; EXPECT_THAT(actual, ElementsAreArray(expected)); } }