anchor.diff:      _ = inets:stop(),
       error_logger:tty(true),
       unittest_helper:kill_new_processes(State#state.processes),
  -    {Return, State#state{processes = [], suite = undefined } }.
  +    {Return, State#state{processes = [], suite = undefined, tc_start = [] } }.
   
   %% @doc Called before each test case.
   -spec pre_init_per_testcase(TestcaseName::atom(), Config::unittest_helper:kv_opts(), CTHState::state())
  
positive.code: post_end_per_testcase(TC, Config, Return, {ok, State}) ->
      post_end_per_testcase(TC, Config, Return, State);
  post_end_per_testcase(TC, _Config, Return, State) when is_record(State, state) ->
      TCTime_us = timer:now_diff(os:timestamp(), State#state.tc_start),
      ct:pal("####################################################~n"
             "End ~p:~p -> ~.0p (after ~fs)",
             [State#state.suite, TC, Return, TCTime_us / 1000000]),
  
negative.code:     randoms:start(),
      % note: on R14B02, post_end_per_testcase was also called for init_per_suite
      % -> we thus need a valid time
      {Config, State#state{processes = Processes, suite = Suite, tc_start = [{self(), os:timestamp()}]}}.
  
  %% @doc Called after init_per_suite.
  -spec post_init_per_suite(SuiteName::atom(), Config::unittest_helper:kv_opts(), Return, CTHState::state())
  