#pragma once #include "util/MockOperation.hpp" #include "util/async/AnyStopToken.hpp" #include "util/async/Error.hpp" #include #include #include #include #include #include struct MockStrand { template using ValueType = std::expected; template using Operation = MockOperation; template using StoppableOperation = MockStoppableOperation; template using RepeatingOperation = MockRepeatingOperation; MOCK_METHOD(Operation const&, execute, (std::function), (const)); MOCK_METHOD( Operation const&, execute, (std::function, std::optional), (const) ); MOCK_METHOD( StoppableOperation const&, execute, (std::function), (const) ); MOCK_METHOD( StoppableOperation const&, execute, (std::function, std::optional), (const) ); MOCK_METHOD( RepeatingOperation const&, executeRepeatedly, (std::chrono::milliseconds, std::function), (const) ); MOCK_METHOD(void, submit, (std::function), (const)); };