anchor.diff:            repo_subpath => <<"/path">>}
       ],
   
  -    {ok, Repos, Keys} = load_keys(KeyCfg, Repos, fun(K) -> mock_load_key(K) end),
  +    {ok, Repos, Keys} = load_keys(KeyCfg, RepoCfg, fun(K) -> mock_load_key(K) end),
   
  -    #{secret := Secret} = lists:last(Keys),
  +    {value, #{secret := Secret}} = lists:search(
  +        fun(#{id := Id}) -> Id =:= <<"test3.domain.org">> end, Keys),
       ?assert(Secret =:= <<"mocksecret">>).
   
   mock_load_key(#{type := <<"plain_text">>, id := Id, secret := Secret, repo_subpath := Path}) ->
       #{id => Id, secret => Secret, path => Path};
   mock_load_key(#{type := <<"file">>, file_name := FileName, repo_subpath := Path}) ->
  -    Id = lists:last(binary:split(FileName, <<"/">>, [global])),
  +    [Id | _] = binary:split(lists:last(binary:split(FileName, <<"/">>, [global])), <<".gw">>),
       #{id => Id, secret => <<"mocksecret">>, path => Path}.
  
positive.code:     end.
  
  
  -spec load_repos(RepoCfg) -> {ok, FixedRepoCfg}
      when RepoCfg :: [binary() | #{atom() => binary() | [binary()]}],
           FixedRepoCfg :: [#{atom() => binary() | [binary()]}].
  load_repos(RepoCfg) ->
      AddDefaultKeyId =
          fun(Name) when is_binary(Name) ->
                  #{domain => Name, keys => [Name]};
             (#{domain := _Name, keys := _Keys} = R) ->
                  R
          end,
  
negative.code: 
  
  load_keys(KeyCfg, Repos, KeyLoader) ->
      SpecifiedKeys = lists:map(KeyLoader, KeyCfg),
  
      ProcessDefaultKey = fun(R, {AccRepos, AccKeys}) ->
          #{domain := Name, keys := K} = R,
          case K of
              default ->
                  Key = KeyLoader(#{type => <<"file">>,
                                    file_name => <<"/etc/cvmfs/keys/", Name/binary, ".gw">>,
                                    repo_subpath => <<"/">>}),
                  #{id := KeyId} = Key,
                  case lists:search(fun(#{id := Id}) -> Id =:= KeyId end, SpecifiedKeys) of
                      false ->
                          {[#{domain => Name, keys => [KeyId]} | AccRepos],
                           [Key | AccKeys]};
                      _ ->
                          {[R | AccRepos], AccKeys}
                  end;
              _ ->
                  {[R | AccRepos], AccKeys}
          end
      end,
  
      {UpdatedRepos, DefaultKeys} = lists:foldl(ProcessDefaultKey, {[], []}, Repos),
      {ok, UpdatedRepos, SpecifiedKeys ++ DefaultKeys}.
  
  
  %%% Private functions
  