anchor.diff:      %% Test 2xx response to INVITE
       %%
       autotest:mark(?LINE, "cancel_pending_if_invite_2xx_or_6xx/4 - 2.1"),
  -    #state{} = cancel_pending_if_invite_2xx_or_6xx("INVITE", 200, "Ok", CancelPendingState1),
  +    CancelPendingState2_out = cancel_pending_if_invite_2xx_or_6xx("INVITE", 200, "Ok", CancelPendingState1),
   
       autotest:mark(?LINE, "cancel_pending_if_invite_2xx_or_6xx/4 - 2.2"),
       %% check results
  +    true = get_target_value(CancelPendingState2_out, "branch1", cancelled),
  +    false = get_target_value(CancelPendingState2_out, "branch2", cancelled),
       receive
   	{CancelPendingRef, CancelPendingPid1,
   	 {'$gen_cast',
  
positive.code:     %% test cancel_pending_if_invite_2xx_or_6xx(Method, Status, Reason, State)
      %%--------------------------------------------------------------------
      CancelPendingRef = make_ref(),
      CancelPendingPid1 = spawn_link(?MODULE, signal_collector, [self(), CancelPendingRef]),
      CancelPendingPid2 = spawn_link(?MODULE, signal_collector, [self(), CancelPendingRef]),
  
      autotest:mark(?LINE, "cancel_pending_if_invite_2xx_or_6xx/4 - 0"),
  
  
negative.code: 	wait ->
  	    Time = HAction#sipproxy_action.timeout,
  	    logger:log(debug, "sipproxy: waiting ~p seconds", [Time]),
  	    %% XXX we loose our original endtime that is starttime + timeout given to start() here,
  	    %% we probably shouldn't. The meaning of the timeout to start() is not clearly specified.
  	    NewEndTime = util:timestamp() + Time,
  	    case process_wait(NewEndTime, State) of
  		{discontinue, NewState} when is_record(NewState, state) ->
  		    logger:log(debug, "sipproxy: discontinue processing"),
  		    fork(NewEndTime, NewState#state{actions = []});
  		{timeout, NewState} when is_record(NewState, state) ->
  		    fork(NewEndTime, NewState#state{actions = TAction})
  	    end
      end.
  