31 std::size_t callback_counts = 0;
35 snk.set_processing_function(
36 [&](
const int_M& i) ->
bool 39 if (i != 0)
throw std::domain_error(
"invalid value");
44 ASSERT_FALSE(buf.has_some());
50 ASSERT_TRUE(buf.has_some());
51 ASSERT_EQ(0u, callback_counts);
54 ASSERT_EQ(1u, callback_counts);
56 ASSERT_FALSE(buf.has_some());
57 ASSERT_EQ(3u, callback_counts);
59 ASSERT_EQ(3u, callback_counts);
62 ASSERT_EQ(4u, callback_counts);
TEST(fkie_message_filters, Buffer)
void chain(Filter1 &flt1, Filter2 &flt2, MoreFilters &... filters) noexcept
Convenience function to chain multiple filters.
NotDefaultConstructable< int > int_M
Manually operated data source.
Simplified filter with user-defined callback function.