See More

#include #include using namespace testing; using namespace stream; using namespace stream::op; TEST(ConversionTest, ToVectorExplicit) { EXPECT_THAT(MakeStream::from({1, 3, 5}) | to_vector(), ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToVectorImplicit) { std::vector implicit = MakeStream::from({1, 3, 5}); EXPECT_THAT(implicit, ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToListExplicit) { EXPECT_THAT(MakeStream::from({1, 3, 5}) | to_list(), ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToListImplicit) { std::list implicit = MakeStream::from({1, 3, 5}); EXPECT_THAT(implicit, ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToDequeExplicit) { EXPECT_THAT(MakeStream::from({1, 3, 5}) | to_deque(), ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToDequeImplicit) { std::deque implicit = MakeStream::from({1, 3, 5}); EXPECT_THAT(implicit, ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToSetExplicit) { EXPECT_THAT(MakeStream::from({1, 5, 3, 3, 1}) | to_set(), ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToSetImplicit) { std::set implicit = MakeStream::from({1, 5, 3, 3, 1}); EXPECT_THAT(implicit, ElementsAre(1, 3, 5)); } TEST(ConversionTest, ToMultiSetExplicit) { EXPECT_THAT(MakeStream::from({1, 5, 3, 3, 1}) | to_multiset(), ElementsAre(1, 1, 3, 3, 5)); } TEST(ConversionTest, ToMultiSetImplicit) { std::multiset implicit = MakeStream::from({1, 5, 3, 3, 1}); EXPECT_THAT(implicit, ElementsAre(1, 1, 3, 3, 5)); } TEST(ConversionTest, ToUnorderedSetExplicit) { EXPECT_THAT(MakeStream::from({1, 5, 3, 3, 1}) | to_unordered_set(), UnorderedElementsAre(1, 3, 5)); } TEST(ConversionTest, ToUnorderedSetImplicit) { std::unordered_set implicit = MakeStream::from({1, 5, 3, 3, 1}); EXPECT_THAT(implicit, UnorderedElementsAre(1, 3, 5)); } TEST(ConversionTest, ToUnorderedMultiSetExplicit) { EXPECT_THAT(MakeStream::from({1, 5, 3, 3, 1}) | to_unordered_multiset(), UnorderedElementsAre(1, 1, 3, 3, 5)); } TEST(ConversionTest, ToUnorderedMultimultisetImplicit) { std::unordered_multiset implicit = MakeStream::from({1, 5, 3, 3, 1}); EXPECT_THAT(implicit, UnorderedElementsAre(1, 1, 3, 3, 5)); }