anchor.diff:  %% @private
   %% @doc Process the result of a test and send it to the etap_server process.
   mk_tap(Result, Desc) ->
  -    IsSkip = lib:sendw(etap_server, is_skip),
  +    etap_server ! {self(), is_skip, Ref = make_ref()} ,
  +    receive {Ref, IsSkip} -> ok end,
       case [IsSkip, Result] of
           [_, true] ->
               etap_server ! {self(), pass, Desc},
  
positive.code:                 count = State#test_state.count + 1,
                  fail = State#test_state.fail + 1
              };
          {From, state} ->
              From ! State,
              State;
          {_From, diag, Message} ->
              io:format("~s~n", [Message]),
  
negative.code: %% @doc End the current test plan and output test results.
  %% @todo This should probably be done in the test_server process.
  end_tests() ->
      Ref = make_ref(),
      case whereis(etap_server) of
          undefined -> self() ! {Ref, true};
          _ -> etap_server ! {self(), state, Ref}
      end,
      State = receive {Ref, X} -> X end,
      if
          is_record(State, test_state) andalso State#test_state.planned == -1 ->
              io:format("1..~p~n", [State#test_state.count]);
          true ->
              ok
  