0

我有一个 phoenix 频道,它会在handle_in之后在handle_info上推送结果,而不是立即回复(请不要问为什么,我有一个用例)。下面的示例与我的情况类似。

def handle_in("topic", %{"param" => param}, socket) do
    ... do something here ...
    send self(), %{:on_topic, result}
    {:noreply, socket}
end

def handle_info({:on_topic, result}, socket) do
    ... do something here ...
    push socket, "topic_resp", %{resp: result}
    {:noreply, socket}
end

到目前为止,我可以轻松测试handle_in(因为没有回复),但是如何在handle_info之后等待和测试套接字推送的结果?

4

0 回答 0