anchor.diff:      Apps :: [{AppName :: atom(), ConfigName :: atom()}]) -> ok.
   clean_environment(Config, Apps) ->
       StopStatus = try
  -        maybe_gather_cover(Config, Apps)
  +        finalize(Config, Apps)
       catch
           E1:E2:Stacktrace ->
               ct:pal("Environment cleanup failed - ~p:~p~n" ++
  
positive.code: %% API
  -export([prepare_test_environment/3, prepare_test_environment/2,
      clean_environment/1, clean_environment/2, load_modules/2,
      maybe_start_cover/0, maybe_stop_cover/0, maybe_gather_cover/1]).
  
  -define(NODE_CALL_TIMEOUT, timer:seconds(60)).
  -define(COOKIE_KEY, "vm.args/setcookie").
  
negative.code:     end.
  
  
  -spec finalize(Config :: list() | test_config:config()) -> ok.
  finalize(Config) ->
      finalize(Config, ?ALL_POSSIBLE_APPS).
  
  
  -spec finalize(Config :: list() | test_config:config(), 
      Apps :: [{AppName :: atom(), ConfigName :: atom()}]) -> ok.
  finalize(Config, Apps) ->
      NodesWithCover = get_nodes_with_cover(Config, Apps),
      stop_applications(Config, Apps),
      gather_cover(NodesWithCover).
  
  
  -spec get_nodes_with_cover(Config :: list() | test_config:config(), 
      Apps :: [{AppName :: atom(), ConfigName :: atom()}]) -> [node()].
  get_nodes_with_cover(Config, Apps) ->
      lists:flatmap(fun({AppName, ConfigName}) ->
          Nodes = test_config:get_custom(Config, ConfigName, []),
          lists:filter(fun(Node) ->
              case rpc:call(Node, application, get_env, [AppName, covered_dirs]) of
  