anchor.diff:  
   cleanup_mock_getaddr() ->
       catch meck:unload(inet).
  +
  +mock_interactive_getaddr() ->
  +    Self = self(),
  +    ok = meck:expect(inet, getaddr, fun(Hostname, _) ->
  +        Ref = erlang:make_ref(),
  +        Self ! {self(), Ref, {getaddr, Hostname}},
  +        receive
  +            {Ref, error} ->
  +                throw(test_intervactive_call_error);
  +            {Ref, {Delay, Result}} ->
  +                timer:sleep(Delay),
  +                Result
  +        after 5000 ->
  +            throw(test_intervactive_call_timeout)
  +        end
  +    end).
   
   mock_getaddr(Result) ->
       Self = self(),
  
positive.code: 
      ok.
  
  test_address_group_selection() ->
      test_mgr_set_recipient(self()),
  
  
negative.code:     after (TIMEOUT) ->
          dump_messages(),
          ?fail("Message ~s not received", [(??MSG)])
      end
  end()).
  
  -define(assertInteractiveMessage(MSG, RESP, TIMEOUT), fun() ->
      receive
          {From, Ref, (MSG)} ->
              From ! {Ref, (RESP)},
              ok
      after (TIMEOUT) ->
          dump_messages(),
          ?fail("Message ~s not received", [(??MSG)])
      end
  end()).
  
  -define(assertNoInteractiveMessage(MSG, TIMEOUT), fun() ->
      receive
          {From, Ref, (MSG)} ->
              From ! {Ref, error},
              ?fail("~s called unexpectedly", [(??MSG)])
      after (TIMEOUT) -> ok
      end
  end()).
  
  