diff --git a/test/unit-test/multi/test-continuable-connection-all-seq.hpp b/test/unit-test/multi/test-continuable-connection-all-seq.hpp index fb32a4d..0e4b650 100644 --- a/test/unit-test/multi/test-continuable-connection-all-seq.hpp +++ b/test/unit-test/multi/test-continuable-connection-all-seq.hpp @@ -24,6 +24,10 @@ #ifndef TEST_CONTINUABLE_CONNECTION_HPP__ #define TEST_CONTINUABLE_CONNECTION_HPP__ +#include +#include +#include + #include template @@ -62,6 +66,25 @@ void test_all_seq_aggregate(Supplier&& supply, AggregateConnector&& ag) { EXPECT_ASYNC_RESULT(std::move(chain), 1, 2, 3, 4, 5, 6); } + { + auto chain = + ag(std::make_tuple(supply(1, 2), std::make_tuple(supply(3, 4))), + supply(5, 6)); + EXPECT_ASYNC_RESULT(std::move(chain), + std::make_tuple(1, 2, std::make_tuple(3, 4)), 5, 6); + } + + { + using type_t = decltype( + std::declval()(std::declval(), std::declval())); + + auto chain = ag(std::make_tuple( + std::vector{supply(1, 2), supply(3, 4), supply(5, 6)})); + EXPECT_ASYNC_RESULT(std::move(chain), + std::make_tuple(std::vector>{ + {1, 2}, {3, 4}, {5, 6}})); + } + { auto chain = ag(supply(1, 2), supply(non_default_constructible{1}), supply(5, 6));