anchor.diff:  -define(default_timeout, ?t:minutes(1)).
   
   init_per_testcase(_Case, Config) ->
  -    ?line Dog=?t:timetrap(?default_timeout),
  +    Dog=?t:timetrap(?default_timeout),
       [{watchdog, Dog}|Config].
   end_per_testcase(_Case, Config) ->
       Dog=?config(watchdog, Config),
  
positive.code: runnable_ports(doc) ->
      ["Tests system_profiling with runnable_port."];
  runnable_ports(Config) when is_list(Config) ->
      ?line Pid = start_profiler_process(),
      ?line undefined = erlang:system_profile(Pid, [runnable_ports]),
      ?line EchoPid = echo(Config),
      % FIXME: Set config to number_of_echos
      Laps = 10,
      put(laps, Laps),
      ?line ok = echo_message(EchoPid, Laps, message),
      ?line Events = get_profiler_events(),
      ?line kill_em_all = kill_echo(EchoPid),
      ?line erlang:system_profile(undefined, []),
      ?line true = has_runnable_event(Events),
      Pids = sort_events_by_pid(Events),
      ?line ok = check_events(Pids),
      erase(),
      ?line exit(Pid,kill),
      ok.
  
  scheduler(suite) ->
  
negative.code:     Laps = get(laps),
      CheckPids = get(pids),
      {Events, N} = get_pid_events(Pid),
      ok = check_event_flow(Events),
      ok = check_event_ts(Events),
      IsMember = lists:member(Pid, CheckPids),
      case Pid of
      	Master ->
  	    io:format("Expected ~p and got ~p profile events from ~p: ok~n", [Laps*2+2, N, Pid]),
  	    N = Laps*2 + 2,
      	    check_events(Pids);
  	Pid when IsMember == true ->
  	    io:format("Expected ~p and got ~p profile events from ~p: ok~n", [Laps*2, N, Pid]),
  	    N = Laps*2,
      	    check_events(Pids);
  	Pid ->
  	    check_events(Pids)
  