From d43bf502b3d2ddae5dc6b1f0eb3e35f94a39a8c6 Mon Sep 17 00:00:00 2001 From: Brendan Forster Date: Tue, 18 Feb 2014 19:27:26 +1100 Subject: [PATCH] added tests for edge case scenarios --- .../Clients/PullRequestsClientTests.cs | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs index bd4368ca..6ef50b74 100644 --- a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs @@ -57,6 +57,49 @@ public class PullRequestsClientTests : IDisposable Assert.False(result.Merged); } + [IntegrationTest] + public async Task CanGetForRepository() + { + await CreateTheWorld(); + + var newPullRequest = new NewPullRequest("a pull request", "my-branch", "master"); + var pullRequest = await _pullRequestsClient.Create(Helper.UserName, _repository.Name, newPullRequest); + + var requests = await _pullRequestsClient.GetForRepository(Helper.UserName, _repository.Name); + + Assert.Equal(1, requests.Count); + Assert.Equal(pullRequest.Title, requests[0].Title); + } + + [IntegrationTest] + public async Task CanGetOpenPullRequest() + { + await CreateTheWorld(); + + var newPullRequest = new NewPullRequest("a pull request", "my-branch", "master"); + var pullRequest = await _pullRequestsClient.Create(Helper.UserName, _repository.Name, newPullRequest); + + var openPullRequests = new PullRequestRequest() { State = ItemState.Open }; + var requests = await _pullRequestsClient.GetForRepository(Helper.UserName, _repository.Name, openPullRequests); + + Assert.Equal(1, requests.Count); + Assert.Equal(pullRequest.Title, requests[0].Title); + } + + [IntegrationTest] + public async Task IgnoresOpenPullRequest() + { + await CreateTheWorld(); + + var newPullRequest = new NewPullRequest("a pull request", "my-branch", "master"); + var pullRequest = await _pullRequestsClient.Create(Helper.UserName, _repository.Name, newPullRequest); + + var openPullRequests = new PullRequestRequest { State = ItemState.Closed }; + var requests = await _pullRequestsClient.GetForRepository(Helper.UserName, _repository.Name, openPullRequests); + + Assert.Empty(requests); + } + [IntegrationTest] public async Task CanUpdate() { @@ -88,6 +131,23 @@ public class PullRequestsClientTests : IDisposable Assert.Equal(pullRequest.Body, result.Body); } + [IntegrationTest] + public async Task CanFindClosedPullRequest() + { + await CreateTheWorld(); + + var newPullRequest = new NewPullRequest("a pull request", "my-branch", "master"); + var pullRequest = await _pullRequestsClient.Create(Helper.UserName, _repository.Name, newPullRequest); + + var updatePullRequest = new PullRequestUpdate { State = ItemState.Closed }; + await _pullRequestsClient.Update(Helper.UserName, _repository.Name, pullRequest.Number, updatePullRequest); + + var closedPullRequests = new PullRequestRequest() { State = ItemState.Closed }; + var requests = await _pullRequestsClient.GetForRepository(Helper.UserName, _repository.Name, closedPullRequests); + + Assert.Equal(1, requests.Count); + } + [IntegrationTest] public async Task IsNotMergedInitially() {