#pragma once
#include "probe.h"
/// Test probe that returns a configured result after a delay.
class FakeProbe final : public ProbeInterface
{
public:
/// Configure the result and the delay before returning it.
FakeProbe(ProbeResult result, std::chrono::steady_clock::duration delay);
/// Sleep for the configured delay and return the supplied result.
mw::E<ProbeResult> probe() override;
private:
ProbeResult result;
std::chrono::steady_clock::duration delay;
};