defmodule GenResetTest do use ExUnit.Case test "resets state manually" do {:ok, pid} = GenServer.start_link(Server, :fresh_state) assert GenServer.call(pid, :state) == :fresh_state GenServer.cast(pid, {:set, :foo}) assert GenServer.call(pid, :state) == :foo send(pid, :"$gen_reset") assert GenServer.call(pid, :state) == :fresh_state end end