From d8cef691b713fe1eae4de9940db25d1347935dfd Mon Sep 17 00:00:00 2001 From: Henrik Andersson Date: Tue, 19 May 2015 07:53:01 +1000 Subject: [PATCH] Add SHA and make message optional --- .../Clients/PullRequestsClientTests.cs | 4 ++-- Octokit.Tests/Clients/PullRequestsClientTests.cs | 8 ++++---- .../ObservablePullRequestsClientTests.cs | 6 +++--- Octokit/Models/Request/MergePullRequest.cs | 16 +++++++--------- 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs index 590a05a5..c35caa37 100644 --- a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs @@ -193,7 +193,7 @@ public class PullRequestsClientTests : IDisposable var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); - var merge = new MergePullRequest("thing the thing"); + var merge = new MergePullRequest { Message = "thing the thing" }; var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); Assert.True(result.Merged); @@ -207,7 +207,7 @@ public class PullRequestsClientTests : IDisposable var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); - var merge = new MergePullRequest("thing the thing"); + var merge = new MergePullRequest { Message = "thing the thing" }; var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); var master = await _client.GitDatabase.Reference.Get(Helper.UserName, _repository.Name, "heads/master"); diff --git a/Octokit.Tests/Clients/PullRequestsClientTests.cs b/Octokit.Tests/Clients/PullRequestsClientTests.cs index b8ff769f..34fc70c8 100644 --- a/Octokit.Tests/Clients/PullRequestsClientTests.cs +++ b/Octokit.Tests/Clients/PullRequestsClientTests.cs @@ -138,9 +138,9 @@ namespace Octokit.Tests.Clients public class TheMergeMethod { [Fact] - public void PutsToCorrectUrl() + public void PutsToCorrectUrl() { - var mergePullRequest = new MergePullRequest("fake commit message"); + var mergePullRequest = new MergePullRequest { Message = "fake commit message" }; var connection = Substitute.For(); var client = new PullRequestsClient(connection); @@ -157,9 +157,9 @@ namespace Octokit.Tests.Clients var client = new PullRequestsClient(connection); await AssertEx.Throws(() => - client.Merge(null, "name", 42, new MergePullRequest("message"))); + client.Merge(null, "name", 42, new MergePullRequest { Message = "message" })); await AssertEx.Throws(() => - client.Merge("owner", null, 42, new MergePullRequest("message"))); + client.Merge("owner", null, 42, new MergePullRequest { Message = "message" })); await AssertEx.Throws(() => client.Merge("owner", "name", 42, null)); } diff --git a/Octokit.Tests/Reactive/ObservablePullRequestsClientTests.cs b/Octokit.Tests/Reactive/ObservablePullRequestsClientTests.cs index 8dac68aa..e4a2c010 100644 --- a/Octokit.Tests/Reactive/ObservablePullRequestsClientTests.cs +++ b/Octokit.Tests/Reactive/ObservablePullRequestsClientTests.cs @@ -224,7 +224,7 @@ namespace Octokit.Tests.Reactive [Fact] public void MergesPullRequest() { - var mergePullRequest = new MergePullRequest("fake commit message"); + var mergePullRequest = new MergePullRequest { Message = "fake commit message" }; var gitHubClient = Substitute.For(); var client = new ObservablePullRequestsClient(gitHubClient); @@ -240,9 +240,9 @@ namespace Octokit.Tests.Reactive var client = new PullRequestsClient(connection); await AssertEx.Throws(async () => await - client.Merge(null, "name", 42, new MergePullRequest("message"))); + client.Merge(null, "name", 42, new MergePullRequest { Message = "message" })); await AssertEx.Throws(async () => await - client.Merge("owner", null, 42, new MergePullRequest("message"))); + client.Merge("owner", null, 42, new MergePullRequest { Message = "message" })); await AssertEx.Throws(async () => await client.Merge("owner", "name", 42, null)); } diff --git a/Octokit/Models/Request/MergePullRequest.cs b/Octokit/Models/Request/MergePullRequest.cs index 307422ce..368331ae 100644 --- a/Octokit/Models/Request/MergePullRequest.cs +++ b/Octokit/Models/Request/MergePullRequest.cs @@ -11,23 +11,21 @@ namespace Octokit [DebuggerDisplay("{DebuggerDisplay,nq}")] public class MergePullRequest { - public MergePullRequest(string message) - { - Ensure.ArgumentNotNull(message, "message"); - - Message = message; - } - /// /// The message that will be used for the merge commit (optional) /// - public string Message { get; private set; } + public string Message { get; set; } + + /// + /// The SHA that pull request head must match to allow merge (optional) + /// + public string Sha { get; set; } internal string DebuggerDisplay { get { - return String.Format(CultureInfo.InvariantCulture, "Message: {0}", Message); + return String.Format(CultureInfo.InvariantCulture, "Message: '{0}', Sha: '{1}'", Message, Sha); } } }