@@ -180,7 +180,7 @@ handle_call({join, Name, Pid, Meta}, _From, State) ->
handle_call({leave, Name, Pid}, _From, State) ->
case find_by_pid_and_name(Pid, Name) of
undefined ->
- {error, pid_not_in_group};
+ {reply, {error, pid_not_in_group}, State};
Process ->
%% remove from table
remove_process(Process),
@@ -214,6 +214,8 @@ single_node_leave(_Config) ->
%% retrieve
[] = syn:get_members(<<"my group">>),
false = syn:member(Pid, <<"my group">>),
+ %% leave before join
+ {error, pid_not_in_group} = syn:leave(<<"my group">>, Pid),
%% join
ok = syn:join(<<"my group">>, Pid),