phoenix_gen_socket_client v1.0.0 Phoenix.Channels.GenSocketClient.TestSocket
A simple synchronous Phoenix Channels client.
This module can be used in your project for testing your own functionality. The
module implements the Phoenix.Channels.GenSocketClient
behaviour to provide
a controllable API for channel clients. The implementation is very basic,
and is useful for tests only. It’s not advised to use this module in
production, because there are various edge cases which can cause subtle
bugs. You’re instead advised to implement your own callback for the
Phoenix.Channels.GenSocketClient
behaviour.
Summary
Functions
Awaits a message from the socket
Connect to the server
Joins a topic on the connected socket
Leaves the topic
Pushes a message to the topic
Pushes a message to the topic and awaits the direct response from the server
Starts the driver process
Waits until the socket is connected or disconnected
Functions
Specs
await_message(GenServer.server, GenServer.timeout) ::
{:ok, Phoenix.Channels.GenSocketClient.topic, Phoenix.Channels.GenSocketClient.event, Phoenix.Channels.GenSocketClient.payload} |
{:error, :timeout}
Awaits a message from the socket.
Specs
Joins a topic on the connected socket.
Specs
leave(GenServer.server, Phoenix.Channels.GenSocketClient.topic, Phoenix.Channels.GenSocketClient.payload, GenServer.timeout) ::
{:ok, Phoenix.Channels.GenSocketClient.payload} |
{:error, any}
Leaves the topic.
Specs
Pushes a message to the topic.
Specs
Pushes a message to the topic and awaits the direct response from the server.
Specs
start_link(module, String.t, boolean, Phoenix.Channels.GenSocketClient.socket_opts) :: GenServer.on_start
Starts the driver process.
Specs
wait_connect_status(GenServer.server, GenServer.timeout) ::
:connected |
{:disconnected, any} |
{:error, :timeout}
Waits until the socket is connected or disconnected