anchor.diff:      io_lib:format("Failures occured running tests: ~p", [FailedCount]);
   format_error({error_running_tests, Reason}) ->
       io_lib:format("Error running tests: ~p", [Reason]).
  +
  +run_test(CTOpts, true) ->
  +    handle_results(ct:run_test(CTOpts));
  +run_test(CTOpts, false) ->
  +    Pid = self(),
  +    LogDir = proplists:get_value(logdir, CTOpts),
  +    erlang:spawn(fun() ->
  +        {ok, F} = file:open(filename:join([LogDir, "ct.latest.log"]),
  +                             [write]),
  +        true = group_leader(F, self()),
  +        Pid ! ct:run_test(CTOpts)
  +    end),
  +    receive Result -> handle_quiet_results(CTOpts, Result) end.
   
   ct_opts(State) ->
       DefaultLogsDir = filename:join([rebar_state:dir(State), "logs"]),
  
positive.code:         Error ->
              Error
      end;
  handle_results({_, 0, _}) ->
      ok;
  handle_results({_, FailedCount, _}) ->
      {error, {failures_running_tests, FailedCount}};
  handle_results({error, Reason}) ->
      {error, {error_running_tests, Reason}}.
  
negative.code:      {until, undefined, "until", string, help(until)}, %% format: YYMoMoDD[HHMMSS]
       {force_stop, undefined, "force_stop", string, help(force_stop)}, % enum: skip_rest, bool
       {basic_html, undefined, "basic_html", boolean, help(basic_html)}, %% Booloean
       {ct_hooks, undefined, "ct_hooks", string, help(ct_hooks)}, %% List: [CTHModule | {CTHModule, CTHInitArgs}] where CTHModule is atom CthInitArgs is term
       {verbose, $v, "verbose", boolean, help(verbose)}
      ].
  
  help(outdir) ->
  