public void EnsureNonNullOrg() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); Assert.ThrowsAsync <ArgumentException>(() => client.AddRepository(1, null, "Repo Name")); }
internal TookanClient(IConnection connection) { var apiConnection = new ApiConnection(connection); Agents = new AgentsClient(apiConnection); Teams = new TeamsClient(apiConnection); }
public async Task EnsuresNonNullArguments() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAllChildTeams(1, null)); }
/// <inheritdoc/> public async Task <IListResult <Person> > GetUsersAsync(string email = "", string displayName = "", IEnumerable <string> id = default, string orgId = "", int max = 100) { var roomParams = new List <KeyValuePair <string, string> >(); if (id != null && id.Any() && IdIsAcceptableLength(id)) { roomParams.Add(new KeyValuePair <string, string>(nameof(id), string.Join(",", id))); } if (max != 100) { roomParams.Add(new KeyValuePair <string, string>(nameof(max), max.ToString())); } if (!string.IsNullOrEmpty(email)) { roomParams.Add(new KeyValuePair <string, string>(nameof(email), email)); } if (!string.IsNullOrEmpty(displayName)) { roomParams.Add(new KeyValuePair <string, string>(nameof(displayName), displayName)); } if (!string.IsNullOrEmpty(orgId)) { roomParams.Add(new KeyValuePair <string, string>(nameof(orgId), orgId)); } var path = await GetPathWithQueryAsync(WxTeamsConstants.PeopleUrl, roomParams); return(await TeamsClient.GetResultsAsync <Person>(path)); }
/// <inheritdoc/> public async Task <IListResult <ResourceGroupMembership> > GetResourceGroupMembershipsAsync(int max = 100, string licenseId = "", string personId = "", string personOrgId = "", ResourceMembershipStatus?status = null) { var resourceParams = new List <KeyValuePair <string, string> >(); if (max != 100) { resourceParams.Add(new KeyValuePair <string, string>(nameof(max), max.ToString())); } if (!string.IsNullOrEmpty(licenseId)) { resourceParams.Add(new KeyValuePair <string, string>(nameof(licenseId), licenseId)); } if (!string.IsNullOrEmpty(personId)) { resourceParams.Add(new KeyValuePair <string, string>(nameof(personId), personId)); } if (!string.IsNullOrEmpty(personOrgId)) { resourceParams.Add(new KeyValuePair <string, string>(nameof(personOrgId), personOrgId)); } if (status != null) { resourceParams.Add(new KeyValuePair <string, string>(nameof(status), status.ToString())); } var path = await GetPathWithQueryAsync(WxTeamsConstants.ResourceMembershipsUrl, resourceParams); return(await TeamsClient.GetResultsAsync <ResourceGroupMembership>(path)); }
public BitbucketClient( Connection apiConnection, Connection internalConnection, Connection versionOneApiConnection, Connection webConnection, IProxyResolver proxyResolver ) { ApiConnection = apiConnection; var client = new BitbucketRestClient(apiConnection) { ProxyResolver = proxyResolver }; var internalClient = new BitbucketRestClient(internalConnection) { ProxyResolver = proxyResolver }; var versionOneClient = new BitbucketRestClient(versionOneApiConnection) { ProxyResolver = proxyResolver }; var webClient = new BitbucketRestClient(webConnection) { ProxyResolver = proxyResolver }; RepositoriesClient = new RepositoriesClient(client, versionOneClient, ApiConnection); UserClient = new UserClient(client, ApiConnection); PullRequestsClient = new PullRequestsClient(client, internalClient, webClient, versionOneClient, ApiConnection); TeamsClient = new TeamsClient(client, ApiConnection); }
public void EnsuresNonNullArguments() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); Assert.Throws <ArgumentNullException>(() => client.Update(1, null)); }
public void EnsureNonNullRepo() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws <ArgumentException>(() => client.AddRepository(1, "org name", null)); }
/// <inheritdoc/> public async Task <IListResult <RoomMembership> > GetMembershipsAssociatedWithAsync(string userIdOrEmail, int max = 100) { var membershipParams = BuildMembershipQuery(max, userIdOrEmail, null); var path = await GetPathWithQueryAsync(WxTeamsConstants.MembershipsUrl, membershipParams); return(await TeamsClient.GetResultsAsync <RoomMembership>(path)); }
/// <inheritdoc/> public async Task <IListResult <RoomMembership> > GetRoomMembershipsAsync(string roomId, int max = 100) { var membershipParams = BuildMembershipQuery(max, null, roomId); var path = await GetPathWithQueryAsync(WxTeamsConstants.MembershipsUrl, membershipParams); return(await TeamsClient.GetResultsAsync <RoomMembership>(path)); }
public async Task EnsuresNonEmptyLogin() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); await Assert.ThrowsAsync <ArgumentException>(() => client.GetMembership(1, "")); }
public void EnsuresNonNullLogin() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); Assert.ThrowsAsync <ArgumentNullException>(() => client.GetMembership(1, null)); }
public void EnsuresNonEmptyLogin() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws <ArgumentException>(() => client.IsMember(1, "")); }
/// <inheritdoc/> public async Task <IListResult <Room> > GetRoomsAsync(int max = 100, string teamId = "", RoomType?type = null, SortBy?sortBy = null) { var roomParams = new List <KeyValuePair <string, string> >(); if (max != 100) { roomParams.Add(new KeyValuePair <string, string>(nameof(max), max.ToString())); } if (!string.IsNullOrEmpty(teamId)) { roomParams.Add(new KeyValuePair <string, string>(nameof(teamId), teamId)); } if (type != null) { roomParams.Add(new KeyValuePair <string, string>(nameof(type), type.ToString().ToLower())); } if (sortBy != null) { roomParams.Add(new KeyValuePair <string, string>(nameof(sortBy), sortBy.ToString().ToLower())); } var path = await GetPathWithQueryAsync(WxTeamsConstants.RoomsUrl, roomParams); return(await TeamsClient.GetResultsAsync <Room>(path)); }
public async Task EnsuresNonNullArguments() { var teams = new TeamsClient(Substitute.For<IApiConnection>()); await Assert.ThrowsAsync<ArgumentNullException>(() => teams.GetAll(null)); await Assert.ThrowsAsync<ArgumentNullException>(() => teams.GetAll("orgName", null)); }
/// <inheritdoc/> public async Task <Room> UpdateRoomAsync(string roomId, string title) { var props = new RoomParams { Title = title }; return(await TeamsClient.PutResultAsync <Room, RoomParams>($"{WxTeamsConstants.RoomsUrl}/{roomId}", props)); }
public async Task RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); await client.RemoveMembership(1, "user"); connection.Connection.Received().Delete(Arg.Is <Uri>(u => u.ToString() == "teams/1/memberships/user")); }
public async Task RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); await client.RemoveRepository(1, "org", "repo"); connection.Connection.Received().Delete(Arg.Is <Uri>(u => u.ToString() == "teams/1/repos/org/repo")); }
public async Task EnsuresNonNullArguments() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws <ArgumentNullException>(async() => await client.UpdateTeam(1, null)); }
/// <inheritdoc/> public async Task <Team> UpdateTeamAsync(string teamId, string name) { var teamParams = new TeamParams { Name = name }; return(await TeamsClient.PutResultAsync <Team, TeamParams>($"{WxTeamsConstants.TeamsUrl}/{teamId}", teamParams)); }
/// <inheritdoc/> public async Task <Room> CreateRoomAsync(string title, string teamId = null) { var props = new RoomParams { Title = title, TeamId = teamId }; return(await TeamsClient.PostResultAsync <Room, RoomParams>(WxTeamsConstants.RoomsUrl, props)); }
/// <inheritdoc/> public async Task <Team> CreateTeamAsync(string name) { var teamParams = new TeamParams { Name = name }; return(await TeamsClient.PostResultAsync <Team, TeamParams>(WxTeamsConstants.TeamsUrl, teamParams)); }
/// <inheritdoc/> public async Task <TeamMembership> UpdateTeamMembership(string membershipId, bool isModerator) { var props = new MembershipParams { IsModerator = isModerator }; return(await TeamsClient.PutResultAsync <TeamMembership, MembershipParams>($"{WxTeamsConstants.TeamMembershipsUrl}/{membershipId}", props)); }
public async Task EnsuresNonNullArguments() { var teams = new TeamsClient(Substitute.For <IApiConnection>()); await Assert.ThrowsAsync <ArgumentNullException>(() => teams.GetAll(null)); await Assert.ThrowsAsync <ArgumentNullException>(() => teams.GetAll("orgName", null)); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.GetRepositories(1); connection.Received().GetAll <Repository>(Arg.Is <Uri>(u => u.ToString() == "teams/1/repos/")); }
public async Task EnsuresNonNullOrEmptyArguments() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetMembershipDetails(1, null)); await Assert.ThrowsAsync <ArgumentException>(() => client.GetMembershipDetails(1, "")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.GetMembers(1); connection.Received().GetAll <User>(Arg.Is <Uri>(u => u.ToString() == "teams/1/members")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.GetAll("orgName"); connection.Received().GetAll <Team>(Arg.Is <Uri>(u => u.ToString() == "orgs/orgName/teams")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.AddMember(1, "user"); connection.Received().Put(Arg.Is <Uri>(u => u.ToString() == "teams/1/members/user")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.GetAll("orgName"); connection.Received().GetAll<Team>(Arg.Is<Uri>(u => u.ToString() == "orgs/orgName/teams")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.GetMembers(1); connection.Received().GetAll<User>(Arg.Is<Uri>(u => u.ToString() == "teams/1/members")); }
public void RequestsTheCorrectlUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.Get(1); connection.Received().Get<Team>(Arg.Is<Uri>(u => u.ToString() == "teams/1"), null); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.Delete(1); connection.Received().Delete(Arg.Is <Uri>(u => u.ToString() == "teams/1")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new TeamsClient(connection); client.AddRepository(1, "org", "repo"); connection.Received().Put(Arg.Is <Uri>(u => u.ToString() == "teams/1/repos/org/repo")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); var team = new UpdateTeam("Octokittens"); client.UpdateTeam(1, team); connection.Received().Patch<Team>(Arg.Is<Uri>(u => u.ToString() == "teams/1"), team); }
public async Task EnsuresNonNullArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws<ArgumentNullException>(async () => await client.CreateTeam("", new NewTeam("superstars"))); AssertEx.Throws<ArgumentException>(async () => await client.CreateTeam("name", null)); }
public void EnsuresNonNullArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); var team = new NewTeam("superstars"); Assert.Throws<ArgumentNullException>(() => client.Create(null, team)); Assert.Throws<ArgumentException>(() => client.Create("", team)); Assert.Throws<ArgumentNullException>(() => client.Create("name", null)); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); var team = new NewTeam("Octokittens"); client.Create("orgName", team); connection.Received().Post<Team>(Arg.Is<Uri>(u => u.ToString() == "orgs/orgName/teams"), team); }
public void EnsureNonNullRepo() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws<ArgumentException>(() => client.AddRepository(1, "org name", null)); }
public async Task EnsuresNonNullOrEmptyArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); // Check owner arguments. await Assert.ThrowsAsync<ArgumentNullException>(() => client.RemoveRepository(1, null, "repoName")); await Assert.ThrowsAsync<ArgumentException>(() => client.RemoveRepository(1, "", "repoName")); // Check repo arguments. await Assert.ThrowsAsync<ArgumentNullException>(() => client.RemoveRepository(1, "ownerName", null)); await Assert.ThrowsAsync<ArgumentException>(() => client.RemoveRepository(1, "ownerName", "")); }
public void EnsureNonNullOrg() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); Assert.ThrowsAsync<ArgumentException>(() => client.AddRepository(1, null, "Repo Name")); }
public void EnsuresNonNullArguments() { var teams = new TeamsClient(Substitute.For<IApiConnection>()); Assert.Throws<ArgumentNullException>(() => teams.GetAll(null)); }
public async Task AllowsEmptyBody() { var connection = Substitute.For<IConnection>(); var apiConnection = new ApiConnection(connection); var client = new TeamsClient(apiConnection); await client.AddMembership(1, "user"); connection.Received().Put<Dictionary<string, string>>( Arg.Is<Uri>(u => u.ToString() == "teams/1/memberships/user"), Arg.Is<object>(u => u == RequestBody.Empty)); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.RemoveRepository(1, "org", "repo"); connection.Received().Delete(Arg.Is<Uri>(u => u.ToString() == "teams/1/repos/org/repo")); }
public void EnsuresNonNullOrEmptyArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); Assert.ThrowsAsync<ArgumentException>(() => client.AddRepository(1, "org name", null)); // Check owner arguments. Assert.ThrowsAsync<ArgumentNullException>(() => client.IsRepositoryManagedByTeam(1, null, "repoName")); Assert.ThrowsAsync<ArgumentException>(() => client.IsRepositoryManagedByTeam(1, "", "repoName")); // Check repo arguments. Assert.ThrowsAsync<ArgumentNullException>(() => client.IsRepositoryManagedByTeam(1, "ownerName", null)); Assert.ThrowsAsync<ArgumentException>(() => client.IsRepositoryManagedByTeam(1, "ownerName", "")); }
public async Task EnsuresNonNullArguments() { var teams = new TeamsClient(Substitute.For<IApiConnection>()); AssertEx.Throws<ArgumentNullException>(async () => await teams.GetAllTeams(null)); }
public async Task EnsuresNonNullArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws<ArgumentNullException>(async () => await client.UpdateTeam(1, null)); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.GetAllRepositories(1); connection.Received().GetAll<Repository>( Arg.Is<Uri>(u => u.ToString() == "teams/1/repos"), null, "application/vnd.github.ironman-preview+json", Args.ApiOptions); }
public async Task RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); await client.AddMembership(1, "user"); connection.Received().Put<Dictionary<string, string>>( Arg.Is<Uri>(u => u.ToString() == "teams/1/memberships/user"), Args.Object); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.GetAllForCurrent(); connection.Received().GetAll<Team>( Arg.Is<Uri>(u => u.ToString() == "user/teams"), Args.ApiOptions); }
public void AddOrUpdatePermission() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); var newPermission = new RepositoryPermissionRequest(Permission.Admin); client.AddRepository(1, "org", "repo", newPermission); connection.Connection.Received().Put<HttpStatusCode>(Arg.Is<Uri>(u => u.ToString() == "teams/1/repos/org/repo"), Arg.Any<object>(), "", "application/vnd.github.ironman-preview+json"); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.GetRepositories(1); connection.Received().GetAll<Repository>(Arg.Is<Uri>(u => u.ToString() == "teams/1/repos/")); }
public void EnsuresNonNullArguments() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); Assert.Throws<ArgumentNullException>(() => client.Update(1, null)); }
public void EnsuresNonEmptyLogin() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); AssertEx.Throws<ArgumentException>(() => client.IsMember(1, "")); }
public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); client.RemoveMember(1, "user"); connection.Received().Delete(Arg.Is<Uri>(u => u.ToString() == "teams/1/members/user")); }
public async Task EnsuresNonNullOrEmptyLogin() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); await Assert.ThrowsAsync<ArgumentNullException>(() => client.RemoveMembership(1, null)); await Assert.ThrowsAsync<ArgumentException>(() => client.RemoveMembership(1, "")); }
public void EnsuresNonNullLogin() { var connection = Substitute.For<IApiConnection>(); var client = new TeamsClient(connection); Assert.ThrowsAsync<ArgumentNullException>(() => client.GetMembership(1, null)); }