protected void given_remote_config(string name, string fetchToken = "[memory]default", int?priority = null, string fetchUsername = null, string fetchPassword = null, params string[] publishTokens) { publishTokens = publishTokens ?? new string[0]; fetchToken = fetchToken == "[memory]default" ? "[memory]" + name : fetchToken; var remote = new RemoteRepository { Name = name, Priority = priority ?? ConfiguredRemotes.Count + 1, PublishRepositories = publishTokens.Select(x => new RemoteRepositoryEndpoint { Token = x }).ToList() }; if (fetchToken != null) { remote.FetchRepository = new RemoteRepositoryEndpoint { Token = fetchToken, Username = fetchUsername, Password = fetchPassword } } ; ConfiguredRemotes.Add(remote); ConfigurationManager.Save(ConfiguredRemotes); ReloadRepositories(); }