diff --git a/Octokit.Reactive/Clients/ObservableStatisticsClient.cs b/Octokit.Reactive/Clients/ObservableStatisticsClient.cs index d285860d..3d09367b 100644 --- a/Octokit.Reactive/Clients/ObservableStatisticsClient.cs +++ b/Octokit.Reactive/Clients/ObservableStatisticsClient.cs @@ -19,7 +19,7 @@ namespace Octokit.Reactive Ensure.ArgumentNotNullOrEmptyString(owner, "owner"); Ensure.ArgumentNotNullOrEmptyString(repositoryName, "repositoryName"); - return _client.Statistics.GetContributors(owner, repositoryName).ToObservable(); + return _client.Repository.Statistics.GetContributors(owner, repositoryName).ToObservable(); } } } \ No newline at end of file diff --git a/Octokit.Tests.Integration/Clients/StatisticsClientTests.cs b/Octokit.Tests.Integration/Clients/StatisticsClientTests.cs index 141adaf4..6044543b 100644 --- a/Octokit.Tests.Integration/Clients/StatisticsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/StatisticsClientTests.cs @@ -24,7 +24,7 @@ namespace Octokit.Tests.Integration.Clients { var repository = await CreateRepository(); await CommitToRepository(repository); - var contributors = await _client.Statistics.GetContributors(repository.Owner, repository.Name); + var contributors = await _client.Repository.Statistics.GetContributors(repository.Owner, repository.Name); Assert.NotNull(contributors); Assert.True(contributors.Count() == 1); @@ -42,7 +42,7 @@ namespace Octokit.Tests.Integration.Clients { var repository = await CreateRepository(); await CommitToRepository(repository); - var commitActivities = await _client.Statistics.GetCommitActivity(repository.Owner, repository.Name); + var commitActivities = await _client.Repository.Statistics.GetCommitActivity(repository.Owner, repository.Name); Assert.NotNull(commitActivities); Assert.True(commitActivities.Activity.Count() == 52); @@ -56,7 +56,7 @@ namespace Octokit.Tests.Integration.Clients { var repository = await CreateRepository(); await CommitToRepository(repository); - var commitActivities = await _client.Statistics.GetCodeFrequency(repository.Owner, repository.Name); + var commitActivities = await _client.Repository.Statistics.GetCodeFrequency(repository.Owner, repository.Name); Assert.NotNull(commitActivities); Assert.True(commitActivities.AdditionsAndDeletionsByWeek.Any()); } @@ -66,7 +66,7 @@ namespace Octokit.Tests.Integration.Clients { var repository = await CreateRepository(); await CommitToRepository(repository); - var weeklyCommitCounts = await _client.Statistics.GetParticipation(repository.Owner, repository.Name); + var weeklyCommitCounts = await _client.Repository.Statistics.GetParticipation(repository.Owner, repository.Name); Assert.NotNull(weeklyCommitCounts); Assert.NotNull(weeklyCommitCounts.All); Assert.NotNull(weeklyCommitCounts.Owner); @@ -77,7 +77,7 @@ namespace Octokit.Tests.Integration.Clients { var repository = await CreateRepository(); await CommitToRepository(repository); - var punchCard = await _client.Statistics.GetPunchCard(repository.Owner, repository.Name); + var punchCard = await _client.Repository.Statistics.GetPunchCard(repository.Owner, repository.Name); Assert.NotNull(punchCard); Assert.NotNull(punchCard.PunchPoints); } diff --git a/Octokit.Tests/Reactive/ObservableStatisticsClientTests.cs b/Octokit.Tests/Reactive/ObservableStatisticsClientTests.cs index 8bd6c2d0..f01f416f 100644 --- a/Octokit.Tests/Reactive/ObservableStatisticsClientTests.cs +++ b/Octokit.Tests/Reactive/ObservableStatisticsClientTests.cs @@ -20,7 +20,7 @@ namespace Octokit.Tests.Reactive statisticsClient.GetContributors("username", "repositoryName"); - gitHubClient.Statistics.Received().GetContributors("username", "repositoryName"); + gitHubClient.Repository.Statistics.Received().GetContributors("username", "repositoryName"); } [Fact] diff --git a/Octokit/Clients/IRepositoriesClient.cs b/Octokit/Clients/IRepositoriesClient.cs index 31124105..80812feb 100644 --- a/Octokit/Clients/IRepositoriesClient.cs +++ b/Octokit/Clients/IRepositoriesClient.cs @@ -152,6 +152,14 @@ namespace Octokit /// IDeploymentsClient Deployment { get; } + /// + /// Client for GitHub's Repository Statistics API + /// + /// + /// See the Statistics API documentation for more details + /// + IStatisticsClient Statistics { get; } + /// /// Gets all the branches for the specified repository. /// diff --git a/Octokit/Clients/RepositoriesClient.cs b/Octokit/Clients/RepositoriesClient.cs index 99c742d1..608f8c76 100644 --- a/Octokit/Clients/RepositoriesClient.cs +++ b/Octokit/Clients/RepositoriesClient.cs @@ -25,6 +25,7 @@ namespace Octokit CommitStatus = new CommitStatusClient(apiConnection); RepoCollaborators = new RepoCollaboratorsClient(apiConnection); Deployment = new DeploymentsClient(apiConnection); + Statistics = new StatisticsClient(apiConnection); } /// @@ -231,6 +232,14 @@ namespace Octokit /// public IDeploymentsClient Deployment { get; private set; } + /// + /// Client for GitHub's Repository Statistics API + /// + /// + /// See the Statistics API documentation for more details + /// + public IStatisticsClient Statistics { get; private set; } + /// /// Gets all the branches for the specified repository. /// diff --git a/Octokit/GitHubClient.cs b/Octokit/GitHubClient.cs index 0e487c85..a46fa7e6 100644 --- a/Octokit/GitHubClient.cs +++ b/Octokit/GitHubClient.cs @@ -93,7 +93,6 @@ namespace Octokit GitDatabase = new GitDatabaseClient(apiConnection); Search = new SearchClient(apiConnection); Deployment = new DeploymentsClient(apiConnection); - Statistics = new StatisticsClient(apiConnection); } /// @@ -144,8 +143,6 @@ namespace Octokit public IGitDatabaseClient GitDatabase { get; private set; } public ISearchClient Search { get; private set; } public IDeploymentsClient Deployment { get; private set; } - public IStatisticsClient Statistics { get; private set; } - static Uri FixUpBaseUri(Uri uri) { Ensure.ArgumentNotNull(uri, "uri"); diff --git a/Octokit/IGitHubClient.cs b/Octokit/IGitHubClient.cs index e12d44ce..d7b0a222 100644 --- a/Octokit/IGitHubClient.cs +++ b/Octokit/IGitHubClient.cs @@ -22,6 +22,6 @@ namespace Octokit INotificationsClient Notification { get; } IGitDatabaseClient GitDatabase { get; } ISearchClient Search { get; } - IStatisticsClient Statistics { get; } + } }