diff --git a/Octokit.Tests.Integration/Clients/TeamsClientTests.cs b/Octokit.Tests.Integration/Clients/TeamsClientTests.cs index 1e653c79..a80a6da0 100644 --- a/Octokit.Tests.Integration/Clients/TeamsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/TeamsClientTests.cs @@ -48,7 +48,7 @@ public class TeamsClientTests public class TheGetAllForCurrentMethod { [IntegrationTest] - public async Task GetsIsMemberWhenAuthenticated() + public async Task GetsAllForCurrentWhenAuthenticated() { var github = Helper.GetAuthenticatedClient(); var teams = await github.Organization.Team.GetAllForCurrent(); diff --git a/Octokit.Tests.Integration/Reactive/ObservableTeamsClientTests.cs b/Octokit.Tests.Integration/Reactive/ObservableTeamsClientTests.cs index 68b7dc9d..d6743e8c 100644 --- a/Octokit.Tests.Integration/Reactive/ObservableTeamsClientTests.cs +++ b/Octokit.Tests.Integration/Reactive/ObservableTeamsClientTests.cs @@ -10,13 +10,13 @@ public class ObservableTeamsClientTests { public class TheGetMembersMethod { - readonly Team team; + readonly Team _team; public TheGetMembersMethod() { var github = Helper.GetAuthenticatedClient(); - team = github.Organization.Team.GetAll(Helper.Organization).Result.First(); + _team = github.Organization.Team.GetAll(Helper.Organization).Result.First(); } [OrganizationTest] @@ -26,7 +26,7 @@ public class ObservableTeamsClientTests var client = new ObservableTeamsClient(github); - var member = await client.GetAllMembers(team.Id, ApiOptions.None); + var member = await client.GetAllMembers(_team.Id, ApiOptions.None); Assert.Equal(Helper.UserName, member.Login); } diff --git a/Octokit.Tests/Octokit.Tests.csproj b/Octokit.Tests/Octokit.Tests.csproj index 8fd268a0..4bb75c60 100644 --- a/Octokit.Tests/Octokit.Tests.csproj +++ b/Octokit.Tests/Octokit.Tests.csproj @@ -218,6 +218,7 @@ + diff --git a/Octokit.Tests/Reactive/ObservableTeamsClientTests.cs b/Octokit.Tests/Reactive/ObservableTeamsClientTests.cs new file mode 100644 index 00000000..eebd3491 --- /dev/null +++ b/Octokit.Tests/Reactive/ObservableTeamsClientTests.cs @@ -0,0 +1,47 @@ +using System; +using System.Reactive.Threading.Tasks; +using System.Threading.Tasks; +using NSubstitute; +using Octokit.Reactive; +using Xunit; + +namespace Octokit.Tests.Reactive +{ + public class ObservableTeamsClientTests + { + public class TheCreateMethod + { + [Fact] + public void PostsToCorrectUrl() + { + var team = new NewTeam("avengers"); + var github = Substitute.For(); + var client = new ObservableTeamsClient(github); + + client.Create("shield", team); + + github.Organization.Team.Received().Create("shield", team); + } + + [Fact] + public void EnsuresNotNullAndNonEmptyArguments() + { + var github = Substitute.For(); + var client = new ObservableTeamsClient(github); + + Assert.ThrowsAsync(() => client.Create("shield", null).ToTask()); + Assert.ThrowsAsync(() => client.Create(null, new NewTeam("avengers")).ToTask()); + Assert.ThrowsAsync(() => client.Create("", new NewTeam("avengers")).ToTask()); + } + } + + public class TheCtor + { + [Fact] + public void EnsuresNotNullGitHubClient() + { + Assert.Throws(() => new ObservableTeamsClient(null)); + } + } + } +} \ No newline at end of file