From e8892b796942800d969448b1db5493b01a351770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mitja=20Bezen=C5=A1ek?= Date: Mon, 4 Aug 2014 00:18:22 +0200 Subject: [PATCH 1/2] Add All value to the ItemState enum of the IssueRequest class --- Octokit/Models/Request/IssueRequest.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Octokit/Models/Request/IssueRequest.cs b/Octokit/Models/Request/IssueRequest.cs index 7f67f38c..dce55524 100644 --- a/Octokit/Models/Request/IssueRequest.cs +++ b/Octokit/Models/Request/IssueRequest.cs @@ -78,7 +78,12 @@ namespace Octokit /// /// Isuses that are closed. /// - Closed + Closed, + + /// + /// All the issues. + /// + All } public enum IssueSort From bc5990a9eb3e3c34ccd17dd123c3994c8477f2c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mitja=20Bezen=C5=A1ek?= Date: Mon, 4 Aug 2014 00:40:01 +0200 Subject: [PATCH 2/2] Add integration test for retrieving all issues. --- .../Clients/IssuesClientTests.cs | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Octokit.Tests.Integration/Clients/IssuesClientTests.cs b/Octokit.Tests.Integration/Clients/IssuesClientTests.cs index bfb78a53..ce0d40ec 100644 --- a/Octokit.Tests.Integration/Clients/IssuesClientTests.cs +++ b/Octokit.Tests.Integration/Clients/IssuesClientTests.cs @@ -160,6 +160,31 @@ public class IssuesClientTests : IDisposable Assert.True(retrieved.Any(i => i.Number == issue2.Number)); } + [IntegrationTest] + public async Task CanRetrieveAllIssues() + { + string owner = _repository.Owner.Login; + var newIssue1 = new NewIssue("A test issue1") { Body = "A new unassigned issue" }; + var newIssue2 = new NewIssue("A test issue2") { Body = "A new unassigned issue" }; + var newIssue3 = new NewIssue("A test issue3") { Body = "A new unassigned issue" }; + var newIssue4 = new NewIssue("A test issue4") { Body = "A new unassigned issue" }; + var issue1 = await _issuesClient.Create(owner, _repository.Name, newIssue1); + var issue2 = await _issuesClient.Create(owner, _repository.Name, newIssue2); + var issue3 = await _issuesClient.Create(owner, _repository.Name, newIssue3); + var issue4 = await _issuesClient.Create(owner, _repository.Name, newIssue4); + await _issuesClient.Update(owner, _repository.Name, issue4.Number, + new IssueUpdate { State = ItemState.Closed }); + + var retrieved = await _issuesClient.GetForRepository(owner, _repository.Name, + new RepositoryIssueRequest { State = ItemState.All }); + + Assert.True(retrieved.Count >= 4); + Assert.True(retrieved.Any(i => i.Number == issue1.Number)); + Assert.True(retrieved.Any(i => i.Number == issue2.Number)); + Assert.True(retrieved.Any(i => i.Number == issue3.Number)); + Assert.True(retrieved.Any(i => i.Number == issue4.Number)); + } + [IntegrationTest] public async Task CanFilterByAssigned() {