lib/ex_waiter/receiving/timeout.ex
defmodule ExWaiter.Receiving.Timeout do
defexception [:message]
alias ExWaiter.Receiving.Receiver
@impl true
def exception(%Receiver{} = receiver) do
msg = """
Tried to get #{receiver.num_messages} message/s over #{receiver.timeout}ms, but not all messages were received.
#{inspect(receiver, pretty: true)}
"""
%__MODULE__{message: msg}
end
end