From 1cb1258eb62efc23a68cfe59982c8456b34375e6 Mon Sep 17 00:00:00 2001 From: William Barbosa Date: Sun, 27 Sep 2015 01:19:58 -0300 Subject: [PATCH] Refactors tests up to PullRequestsClientTests --- .../Clients/IssuesLabelsClientTests.cs | 44 +++---- .../Clients/MergingClientTests.cs | 32 +++-- .../Clients/MilestonesClientTests.cs | 61 ++++----- .../PullRequestReviewCommentsClientTests.cs | 89 ++++++------- .../Clients/PullRequestsClientTests.cs | 121 +++++++++--------- 5 files changed, 165 insertions(+), 182 deletions(-) diff --git a/Octokit.Tests.Integration/Clients/IssuesLabelsClientTests.cs b/Octokit.Tests.Integration/Clients/IssuesLabelsClientTests.cs index 45558580..16900b98 100644 --- a/Octokit.Tests.Integration/Clients/IssuesLabelsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/IssuesLabelsClientTests.cs @@ -3,27 +3,23 @@ using System.Threading.Tasks; using Octokit; using Octokit.Tests.Integration; using Xunit; +using Octokit.Tests.Integration.Helpers; public class IssuesLabelsClientTests : IDisposable { - readonly IGitHubClient _gitHubClient; - readonly IIssuesLabelsClient _issuesLabelsClient; - readonly IIssuesClient _issuesClient; - readonly Repository _repository; - readonly string _repositoryOwner; - readonly string _repositoryName; + private readonly IIssuesLabelsClient _issuesLabelsClient; + private readonly IIssuesClient _issuesClient; + private readonly RepositoryContext _context; public IssuesLabelsClientTests() { - _gitHubClient = Helper.GetAuthenticatedClient(); + var github = Helper.GetAuthenticatedClient(); - _issuesLabelsClient= _gitHubClient.Issue.Labels; - _issuesClient = _gitHubClient.Issue; + _issuesLabelsClient= github.Issue.Labels; + _issuesClient = github.Issue; var repoName = Helper.MakeNameWithTimestamp("public-repo"); - _repository = _gitHubClient.Repository.Create(new NewRepository(repoName)).Result; - _repositoryOwner = _repository.Owner.Login; - _repositoryName = _repository.Name; + _context = github.CreateRepositoryContext(new NewRepository(repoName)).Result; } [IntegrationTest] @@ -32,17 +28,17 @@ public class IssuesLabelsClientTests : IDisposable var newIssue = new NewIssue("A test issue") { Body = "A new unassigned issue" }; var newLabel = new NewLabel("test label", "FFFFFF"); - var label = await _issuesLabelsClient.Create(_repositoryOwner, _repository.Name, newLabel); - var issue = await _issuesClient.Create(_repositoryOwner, _repositoryName, newIssue); + var label = await _issuesLabelsClient.Create(_context.RepositoryOwner, _context.RepositoryName, newLabel); + var issue = await _issuesClient.Create(_context.RepositoryOwner, _context.RepositoryName, newIssue); - var issueLabelsInfo = await _issuesLabelsClient.GetAllForIssue(_repositoryOwner, _repositoryName, issue.Number); + var issueLabelsInfo = await _issuesLabelsClient.GetAllForIssue(_context.RepositoryOwner, _context.RepositoryName, issue.Number); Assert.Empty(issueLabelsInfo); var issueUpdate = new IssueUpdate(); issueUpdate.AddLabel(label.Name); - var updated = await _issuesClient.Update(_repositoryOwner, _repository.Name, issue.Number, issueUpdate); + var updated = await _issuesClient.Update(_context.RepositoryOwner, _context.RepositoryName, issue.Number, issueUpdate); Assert.NotNull(updated); - issueLabelsInfo = await _issuesLabelsClient.GetAllForIssue(_repositoryOwner, _repositoryName, issue.Number); + issueLabelsInfo = await _issuesLabelsClient.GetAllForIssue(_context.RepositoryOwner, _context.RepositoryName, issue.Number); Assert.Equal(1, issueLabelsInfo.Count); Assert.Equal(newLabel.Color, issueLabelsInfo[0].Color); @@ -54,12 +50,12 @@ public class IssuesLabelsClientTests : IDisposable var newLabel1 = new NewLabel("test label 1", "FFFFFF"); var newLabel2 = new NewLabel("test label 2", "FFFFFF"); - var originalIssueLabels = await _issuesLabelsClient.GetAllForRepository(_repositoryOwner, _repositoryName); + var originalIssueLabels = await _issuesLabelsClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName); - await _issuesLabelsClient.Create(_repositoryOwner, _repository.Name, newLabel1); - await _issuesLabelsClient.Create(_repositoryOwner, _repository.Name, newLabel2); + await _issuesLabelsClient.Create(_context.RepositoryOwner, _context.RepositoryName, newLabel1); + await _issuesLabelsClient.Create(_context.RepositoryOwner, _context.RepositoryName, newLabel2); - var issueLabels = await _issuesLabelsClient.GetAllForRepository(_repositoryOwner, _repositoryName); + var issueLabels = await _issuesLabelsClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName); Assert.Equal(originalIssueLabels.Count + 2, issueLabels.Count); } @@ -68,10 +64,10 @@ public class IssuesLabelsClientTests : IDisposable public async Task CanRetrieveIssueLabelByName() { var newLabel = new NewLabel("test label 1b", "FFFFFF"); - var label = await _issuesLabelsClient.Create(_repositoryOwner, _repository.Name, newLabel); + var label = await _issuesLabelsClient.Create(_context.RepositoryOwner, _context.RepositoryName, newLabel); Assert.NotNull(label); - var issueLabelLookupByName = await _issuesLabelsClient.Get(_repositoryOwner, _repositoryName, label.Name); + var issueLabelLookupByName = await _issuesLabelsClient.Get(_context.RepositoryOwner, _context.RepositoryName, label.Name); Assert.Equal(label.Name, issueLabelLookupByName.Name); Assert.Equal(label.Color, issueLabelLookupByName.Color); @@ -79,6 +75,6 @@ public class IssuesLabelsClientTests : IDisposable public void Dispose() { - Helper.DeleteRepo(_repository); + _context.Dispose(); } } diff --git a/Octokit.Tests.Integration/Clients/MergingClientTests.cs b/Octokit.Tests.Integration/Clients/MergingClientTests.cs index 4e7cb492..c746afb0 100644 --- a/Octokit.Tests.Integration/Clients/MergingClientTests.cs +++ b/Octokit.Tests.Integration/Clients/MergingClientTests.cs @@ -4,27 +4,25 @@ using System.Threading.Tasks; using Octokit; using Octokit.Tests.Integration; using Xunit; +using Octokit.Tests.Integration.Helpers; public class MergingClientTests : IDisposable { - readonly IGitHubClient _client; - readonly Repository _repository; - readonly string _owner; - readonly IMergingClient _fixture; + private readonly IGitHubClient _github; + private readonly IMergingClient _fixture; + private readonly RepositoryContext _context; const string branchName = "my-branch"; public MergingClientTests() { - _client = new GitHubClient(new ProductHeaderValue("OctokitTests")) + _github = new GitHubClient(new ProductHeaderValue("OctokitTests")) { Credentials = Helper.Credentials }; - var repoName = Helper.MakeNameWithTimestamp("public-repo"); - _fixture = _client.Repository.Merging; - _repository = _client.Repository.Create(new NewRepository(repoName) { AutoInit = true }).Result; - _owner = _repository.Owner.Login; + _fixture = _github.Repository.Merging; + _context = _github.CreateRepositoryContext("public-repo").Result; } [IntegrationTest] @@ -34,7 +32,7 @@ public class MergingClientTests : IDisposable var newMerge = new NewMerge("master", branchName) { CommitMessage = "merge commit to master from integrationtests" }; - var merge = await _fixture.Create(_owner, _repository.Name, newMerge); + var merge = await _fixture.Create(_context.RepositoryOwner, _context.RepositoryName, newMerge); Assert.NotNull(merge); Assert.NotNull(merge.Commit); Assert.Equal("merge commit to master from integrationtests", merge.Commit.Message); @@ -42,21 +40,21 @@ public class MergingClientTests : IDisposable async Task CreateTheWorld() { - var master = await _client.GitDatabase.Reference.Get(Helper.UserName, _repository.Name, "heads/master"); + var master = await _github.GitDatabase.Reference.Get(Helper.UserName, _context.RepositoryName, "heads/master"); // create new commit for master branch var newMasterTree = await CreateTree(new Dictionary { { "README.md", "Hello World! I want to be overwritten by featurebranch!" } }); var newMaster = await CreateCommit("baseline for merge", newMasterTree.Sha, master.Object.Sha); // update master - await _client.GitDatabase.Reference.Update(Helper.UserName, _repository.Name, "heads/master", new ReferenceUpdate(newMaster.Sha)); + await _github.GitDatabase.Reference.Update(Helper.UserName, _context.RepositoryName, "heads/master", new ReferenceUpdate(newMaster.Sha)); // create new commit for feature branch var featureBranchTree = await CreateTree(new Dictionary { { "README.md", "I am overwriting this blob with something new" } }); var featureBranchCommit = await CreateCommit("this is the commit to merge", featureBranchTree.Sha, newMaster.Sha); // create branch - await _client.GitDatabase.Reference.Create(Helper.UserName, _repository.Name, new NewReference("refs/heads/my-branch", featureBranchCommit.Sha)); + await _github.GitDatabase.Reference.Create(Helper.UserName, _context.RepositoryName, new NewReference("refs/heads/my-branch", featureBranchCommit.Sha)); } async Task CreateTree(IEnumerable> treeContents) @@ -70,7 +68,7 @@ public class MergingClientTests : IDisposable Content = c.Value, Encoding = EncodingType.Utf8 }; - var baselineBlobResult = await _client.GitDatabase.Blob.Create(Helper.UserName, _repository.Name, baselineBlob); + var baselineBlobResult = await _github.GitDatabase.Blob.Create(Helper.UserName, _context.RepositoryName, baselineBlob); collection.Add(new NewTreeItem { @@ -87,17 +85,17 @@ public class MergingClientTests : IDisposable newTree.Tree.Add(item); } - return await _client.GitDatabase.Tree.Create(Helper.UserName, _repository.Name, newTree); + return await _github.GitDatabase.Tree.Create(Helper.UserName, _context.RepositoryName, newTree); } async Task CreateCommit(string message, string sha, string parent) { var newCommit = new NewCommit(message, sha, parent); - return await _client.GitDatabase.Commit.Create(Helper.UserName, _repository.Name, newCommit); + return await _github.GitDatabase.Commit.Create(Helper.UserName, _context.RepositoryName, newCommit); } public void Dispose() { - Helper.DeleteRepo(_repository); + _context.Dispose(); } } diff --git a/Octokit.Tests.Integration/Clients/MilestonesClientTests.cs b/Octokit.Tests.Integration/Clients/MilestonesClientTests.cs index 128affd4..b4cc1a1a 100644 --- a/Octokit.Tests.Integration/Clients/MilestonesClientTests.cs +++ b/Octokit.Tests.Integration/Clients/MilestonesClientTests.cs @@ -4,34 +4,31 @@ using System.Threading.Tasks; using Octokit; using Octokit.Tests.Integration; using Xunit; +using Octokit.Tests.Integration.Helpers; public class MilestonesClientTests : IDisposable { - readonly IGitHubClient _gitHubClient; - readonly IMilestonesClient _milestonesClient; - readonly Repository _repository; - readonly string _repositoryOwner; - readonly string _repositoryName; + private readonly IGitHubClient _github; + private readonly IMilestonesClient _milestonesClient; + private readonly RepositoryContext _context; public MilestonesClientTests() { - _gitHubClient = Helper.GetAuthenticatedClient(); + _github = Helper.GetAuthenticatedClient(); - _milestonesClient = _gitHubClient.Issue.Milestone; + _milestonesClient = _github.Issue.Milestone; var repoName = Helper.MakeNameWithTimestamp("public-repo"); - _repository = _gitHubClient.Repository.Create(new NewRepository(repoName)).Result; - _repositoryOwner = _repository.Owner.Login; - _repositoryName = _repository.Name; + _context = _github.CreateRepositoryContext(new NewRepository(repoName)).Result; } [IntegrationTest] public async Task CanRetrieveOneMilestone() { var newMilestone = new NewMilestone("a milestone") { DueOn = DateTime.Now }; - var created = await _milestonesClient.Create(_repositoryOwner, _repositoryName, newMilestone); + var created = await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, newMilestone); - var result = await _milestonesClient.Get(_repositoryOwner, _repositoryName, created.Number); + var result = await _milestonesClient.Get(_context.RepositoryOwner, _context.RepositoryName, created.Number); Assert.Equal("a milestone", result.Title); } @@ -39,7 +36,7 @@ public class MilestonesClientTests : IDisposable [IntegrationTest] public async Task CanListEmptyMilestones() { - var milestones = await _milestonesClient.GetAllForRepository(_repositoryOwner, _repositoryName); + var milestones = await _milestonesClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName); Assert.Empty(milestones); } @@ -50,11 +47,11 @@ public class MilestonesClientTests : IDisposable var milestone1 = new NewMilestone("milestone 1") { DueOn = DateTime.Now }; var milestone2 = new NewMilestone("milestone 2") { DueOn = DateTime.Now.AddDays(1) }; var milestone3 = new NewMilestone("milestone 3") { DueOn = DateTime.Now.AddDays(3), State = ItemState.Closed }; - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone1); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone2); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone3); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone1); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone2); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone3); - var milestones = await _milestonesClient.GetAllForRepository(_repositoryOwner, _repositoryName); + var milestones = await _milestonesClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName); Assert.Equal(2, milestones.Count); Assert.Equal("milestone 1", milestones[0].Title); Assert.Equal("milestone 2", milestones[1].Title); @@ -66,11 +63,11 @@ public class MilestonesClientTests : IDisposable var milestone1 = new NewMilestone("milestone 1") { DueOn = DateTime.Now }; var milestone2 = new NewMilestone("milestone 2") { DueOn = DateTime.Now.AddDays(1) }; var milestone3 = new NewMilestone("milestone 3") { DueOn = DateTime.Now.AddDays(3), State = ItemState.Closed }; - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone1); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone2); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone3); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone1); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone2); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone3); - var milestones = await _milestonesClient.GetAllForRepository(_repositoryOwner, _repositoryName, + var milestones = await _milestonesClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName, new MilestoneRequest { SortDirection = SortDirection.Descending }); Assert.Equal(2, milestones.Count); Assert.Equal("milestone 2", milestones[0].Title); @@ -83,11 +80,11 @@ public class MilestonesClientTests : IDisposable var milestone1 = new NewMilestone("milestone 1") { DueOn = DateTime.Now }; var milestone2 = new NewMilestone("milestone 2") { DueOn = DateTime.Now.AddDays(1) }; var milestone3 = new NewMilestone("milestone 3") { DueOn = DateTime.Now.AddDays(3), State = ItemState.Closed }; - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone1); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone2); - await _milestonesClient.Create(_repositoryOwner, _repositoryName, milestone3); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone1); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone2); + await _milestonesClient.Create(_context.RepositoryOwner, _context.RepositoryName, milestone3); - var milestones = await _milestonesClient.GetAllForRepository(_repositoryOwner, _repositoryName, + var milestones = await _milestonesClient.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName, new MilestoneRequest { State = ItemState.Closed }); Assert.Equal(1, milestones.Count); @@ -97,17 +94,15 @@ public class MilestonesClientTests : IDisposable [IntegrationTest] public async Task CanRetrieveClosedIssues() { - string owner = _repository.Owner.Login; - var newIssue = new NewIssue("A test issue") { Body = "A new unassigned issue" }; - var issue1 = await _gitHubClient.Issue.Create(owner, _repository.Name, newIssue); - var issue2 = await _gitHubClient.Issue.Create(owner, _repository.Name, newIssue); - await _gitHubClient.Issue.Update(owner, _repository.Name, issue1.Number, + var issue1 = await _github.Issue.Create(_context.RepositoryOwner, _context.RepositoryName, newIssue); + var issue2 = await _github.Issue.Create(_context.RepositoryOwner, _context.RepositoryName, newIssue); + await _github.Issue.Update(_context.RepositoryOwner, _context.RepositoryName, issue1.Number, new IssueUpdate { State = ItemState.Closed }); - await _gitHubClient.Issue.Update(owner, _repository.Name, issue2.Number, + await _github.Issue.Update(_context.RepositoryOwner, _context.RepositoryName, issue2.Number, new IssueUpdate { State = ItemState.Closed }); - var retrieved = await _gitHubClient.Issue.GetAllForRepository(owner, _repository.Name, + var retrieved = await _github.Issue.GetAllForRepository(_context.RepositoryOwner, _context.RepositoryName, new RepositoryIssueRequest { State = ItemState.Closed }); Assert.True(retrieved.Count >= 2); @@ -117,6 +112,6 @@ public class MilestonesClientTests : IDisposable public void Dispose() { - Helper.DeleteRepo(_repository); + _context.Dispose(); } } diff --git a/Octokit.Tests.Integration/Clients/PullRequestReviewCommentsClientTests.cs b/Octokit.Tests.Integration/Clients/PullRequestReviewCommentsClientTests.cs index 6aec2462..45011f52 100644 --- a/Octokit.Tests.Integration/Clients/PullRequestReviewCommentsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/PullRequestReviewCommentsClientTests.cs @@ -5,12 +5,13 @@ using System.Threading.Tasks; using Octokit; using Octokit.Tests.Integration; using Xunit; +using Octokit.Tests.Integration.Helpers; public class PullRequestReviewCommentsClientTests : IDisposable { - readonly IGitHubClient _gitHubClient; - readonly IPullRequestReviewCommentsClient _client; - readonly Repository _repository; + private readonly IGitHubClient _github; + private readonly IPullRequestReviewCommentsClient _client; + private readonly RepositoryContext _context; const string branchName = "new-branch"; const string branchHead = "heads/" + branchName; @@ -19,26 +20,25 @@ public class PullRequestReviewCommentsClientTests : IDisposable public PullRequestReviewCommentsClientTests() { - _gitHubClient = Helper.GetAuthenticatedClient(); + _github = Helper.GetAuthenticatedClient(); - _client = _gitHubClient.PullRequest.Comment; + _client = _github.PullRequest.Comment; // We'll create a pull request that can be used by most tests - var repoName = Helper.MakeNameWithTimestamp("test-repo"); - _repository = CreateRepository(repoName).Result; + _context = _github.CreateRepositoryContext("test-repo").Result; } [IntegrationTest] public async Task CanCreateAndRetrieveComment() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const string body = "A review comment message"; const int position = 1; var createdComment = await CreateComment(body, position, pullRequest.Sha, pullRequest.Number); - var commentFromGitHub = await _client.GetComment(Helper.UserName, _repository.Name, createdComment.Id); + var commentFromGitHub = await _client.GetComment(Helper.UserName, _context.RepositoryName, createdComment.Id); AssertComment(commentFromGitHub, body, position); } @@ -46,7 +46,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanEditComment() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const string body = "A new review comment message"; const int position = 1; @@ -55,9 +55,9 @@ public class PullRequestReviewCommentsClientTests : IDisposable var edit = new PullRequestReviewCommentEdit("Edited Comment"); - var editedComment = await _client.Edit(Helper.UserName, _repository.Name, createdComment.Id, edit); + var editedComment = await _client.Edit(Helper.UserName, _context.RepositoryName, createdComment.Id, edit); - var commentFromGitHub = await _client.GetComment(Helper.UserName, _repository.Name, editedComment.Id); + var commentFromGitHub = await _client.GetComment(Helper.UserName, _context.RepositoryName, editedComment.Id); AssertComment(commentFromGitHub, edit.Body, position); } @@ -65,7 +65,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task TimestampsAreUpdated() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const string body = "A new review comment message"; const int position = 1; @@ -78,7 +78,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable var edit = new PullRequestReviewCommentEdit("Edited Comment"); - var editedComment = await _client.Edit(Helper.UserName, _repository.Name, createdComment.Id, edit); + var editedComment = await _client.Edit(Helper.UserName, _context.RepositoryName, createdComment.Id, edit); Assert.NotEqual(editedComment.UpdatedAt, editedComment.CreatedAt); } @@ -86,20 +86,20 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanDeleteComment() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const string body = "A new review comment message"; const int position = 1; var createdComment = await CreateComment(body, position, pullRequest.Sha, pullRequest.Number); - await _client.Delete(Helper.UserName, _repository.Name, createdComment.Id); + await _client.Delete(Helper.UserName, _context.RepositoryName, createdComment.Id); } [IntegrationTest] public async Task CanCreateReply() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const string body = "Reply me!"; const int position = 1; @@ -107,8 +107,8 @@ public class PullRequestReviewCommentsClientTests : IDisposable var createdComment = await CreateComment(body, position, pullRequest.Sha, pullRequest.Number); var reply = new PullRequestReviewCommentReplyCreate("Replied", createdComment.Id); - var createdReply = await _client.CreateReply(Helper.UserName, _repository.Name, pullRequest.Number, reply); - var createdReplyFromGitHub = await _client.GetComment(Helper.UserName, _repository.Name, createdReply.Id); + var createdReply = await _client.CreateReply(Helper.UserName, _context.RepositoryName, pullRequest.Number, reply); + var createdReplyFromGitHub = await _client.GetComment(Helper.UserName, _context.RepositoryName, createdReply.Id); AssertComment(createdReplyFromGitHub, reply.Body, position); } @@ -116,14 +116,14 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanGetForPullRequest() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const int position = 1; var commentsToCreate = new List { "Comment 1", "Comment 2", "Comment 3" }; - await CreateComments(commentsToCreate, position, _repository.Name, pullRequest.Sha, pullRequest.Number); + await CreateComments(commentsToCreate, position, _context.RepositoryName, pullRequest.Sha, pullRequest.Number); - var pullRequestComments = await _client.GetAll(Helper.UserName, _repository.Name, pullRequest.Number); + var pullRequestComments = await _client.GetAll(Helper.UserName, _context.RepositoryName, pullRequest.Number); AssertComments(pullRequestComments, commentsToCreate, position); } @@ -131,14 +131,14 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanGetForRepository() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const int position = 1; var commentsToCreate = new List { "Comment One", "Comment Two" }; - await CreateComments(commentsToCreate, position, _repository.Name, pullRequest.Sha, pullRequest.Number); + await CreateComments(commentsToCreate, position, _context.RepositoryName, pullRequest.Sha, pullRequest.Number); - var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _repository.Name); + var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _context.RepositoryName); AssertComments(pullRequestComments, commentsToCreate, position); } @@ -146,14 +146,14 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanGetForRepositoryAscendingSort() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const int position = 1; var commentsToCreate = new [] { "Comment One", "Comment Two", "Comment Three" }; - await CreateComments(commentsToCreate, position, _repository.Name, pullRequest.Sha, pullRequest.Number); + await CreateComments(commentsToCreate, position, _context.RepositoryName, pullRequest.Sha, pullRequest.Number); - var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _repository.Name, new PullRequestReviewCommentRequest { Direction = SortDirection.Ascending }); + var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _context.RepositoryName, new PullRequestReviewCommentRequest { Direction = SortDirection.Ascending }); Assert.Equal(pullRequestComments.Select(x => x.Body), commentsToCreate); } @@ -161,26 +161,26 @@ public class PullRequestReviewCommentsClientTests : IDisposable [IntegrationTest] public async Task CanGetForRepositoryDescendingSort() { - var pullRequest = await CreatePullRequest(_repository); + var pullRequest = await CreatePullRequest(_context); const int position = 1; var commentsToCreate = new [] { "Comment One", "Comment Two", "Comment Three", "Comment Four" }; - await CreateComments(commentsToCreate, position, _repository.Name, pullRequest.Sha, pullRequest.Number); + await CreateComments(commentsToCreate, position, _context.RepositoryName, pullRequest.Sha, pullRequest.Number); - var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _repository.Name, new PullRequestReviewCommentRequest { Direction = SortDirection.Descending }); + var pullRequestComments = await _client.GetAllForRepository(Helper.UserName, _context.RepositoryName, new PullRequestReviewCommentRequest { Direction = SortDirection.Descending }); Assert.Equal(pullRequestComments.Select(x => x.Body), commentsToCreate.Reverse()); } public void Dispose() { - Helper.DeleteRepo(_repository); + _context.Dispose(); } async Task CreateComment(string body, int position, string commitId, int number) { - return await CreateComment(body, position, _repository.Name, commitId, number); + return await CreateComment(body, position, _context.RepositoryName, commitId, number); } async Task CreateComment(string body, int position, string repoName, string pullRequestCommitId, int pullRequestNumber) @@ -220,18 +220,13 @@ public class PullRequestReviewCommentsClientTests : IDisposable } } - async Task CreateRepository(string repoName) - { - return await _gitHubClient.Repository.Create(new NewRepository(repoName) { AutoInit = true }); - } - /// /// Creates the base state for testing (creates a repo, a commit in master, a branch, a commit in the branch and a pull request) /// /// - async Task CreatePullRequest(Repository repository) + async Task CreatePullRequest(RepositoryContext context) { - var repoName = repository.Name; + var repoName = context.RepositoryName; // Creating a commit in master @@ -240,7 +235,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable // Creating a branch var newBranch = new NewReference(branchRef, createdCommitInMaster.Sha); - await _gitHubClient.GitDatabase.Reference.Create(Helper.UserName, repoName, newBranch); + await _github.GitDatabase.Reference.Create(Helper.UserName, repoName, newBranch); // Creating a commit in the branch @@ -249,7 +244,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable // Creating a pull request var pullRequest = new NewPullRequest("Nice title for the pull request", branchName, "master"); - var createdPullRequest = await _gitHubClient.PullRequest.Create(Helper.UserName, repoName, pullRequest); + var createdPullRequest = await _github.PullRequest.Create(Helper.UserName, repoName, pullRequest); var data = new PullRequestData { @@ -269,7 +264,7 @@ public class PullRequestReviewCommentsClientTests : IDisposable Encoding = EncodingType.Utf8 }; - var createdBlob = await _gitHubClient.GitDatabase.Blob.Create(Helper.UserName, repoName, blob); + var createdBlob = await _github.GitDatabase.Blob.Create(Helper.UserName, repoName, blob); // Creating a tree var newTree = new NewTree(); @@ -281,15 +276,15 @@ public class PullRequestReviewCommentsClientTests : IDisposable Sha = createdBlob.Sha, }); - var createdTree = await _gitHubClient.GitDatabase.Tree.Create(Helper.UserName, repoName, newTree); + var createdTree = await _github.GitDatabase.Tree.Create(Helper.UserName, repoName, newTree); var treeSha = createdTree.Sha; // Creating a commit - var parent = await _gitHubClient.GitDatabase.Reference.Get(Helper.UserName, repoName, reference); + var parent = await _github.GitDatabase.Reference.Get(Helper.UserName, repoName, reference); var commit = new NewCommit(commitMessage, treeSha, parent.Object.Sha); - var createdCommit = await _gitHubClient.GitDatabase.Commit.Create(Helper.UserName, repoName, commit); - await _gitHubClient.GitDatabase.Reference.Update(Helper.UserName, repoName, reference, new ReferenceUpdate(createdCommit.Sha)); + var createdCommit = await _github.GitDatabase.Commit.Create(Helper.UserName, repoName, commit); + await _github.GitDatabase.Reference.Update(Helper.UserName, repoName, reference, new ReferenceUpdate(createdCommit.Sha)); return createdCommit; } diff --git a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs index c373c1ad..e7f1a61f 100644 --- a/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs +++ b/Octokit.Tests.Integration/Clients/PullRequestsClientTests.cs @@ -6,27 +6,26 @@ using Octokit; using Octokit.Tests.Helpers; using Octokit.Tests.Integration; using Xunit; +using Octokit.Tests.Integration.Helpers; public class PullRequestsClientTests : IDisposable { - readonly IGitHubClient _client; - readonly IPullRequestsClient _fixture; - readonly Repository _repository; - readonly IRepositoryCommentsClient _repositoryCommentsClient; + private readonly IGitHubClient _github; + private readonly IPullRequestsClient _fixture; + private readonly RepositoryContext _context; + private readonly IRepositoryCommentsClient _repositoryCommentsClient; const string branchName = "my-branch"; const string otherBranchName = "my-other-branch"; public PullRequestsClientTests() { - _client = Helper.GetAuthenticatedClient(); + _github = Helper.GetAuthenticatedClient(); - _fixture = _client.Repository.PullRequest; - _repositoryCommentsClient = _client.Repository.RepositoryComments; + _fixture = _github.Repository.PullRequest; + _repositoryCommentsClient = _github.Repository.RepositoryComments; - var repoName = Helper.MakeNameWithTimestamp("source-repo"); - - _repository = _client.Repository.Create(new NewRepository(repoName) { AutoInit = true }).Result; + _context = _github.CreateRepositoryContext("source-repo").Result; } [IntegrationTest] @@ -35,7 +34,7 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var result = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var result = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); Assert.Equal("a pull request", result.Title); Assert.False(result.Merged); @@ -47,9 +46,9 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var result = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var result = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName); Assert.Equal(1, pullRequests.Count); Assert.Equal(result.Title, pullRequests[0].Title); @@ -61,10 +60,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var result = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var result = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var openPullRequests = new PullRequestRequest { State = ItemState.Open }; - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, openPullRequests); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, openPullRequests); Assert.Equal(1, pullRequests.Count); Assert.Equal(result.Title, pullRequests[0].Title); @@ -76,10 +75,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var openPullRequests = new PullRequestRequest { State = ItemState.Closed }; - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, openPullRequests); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, openPullRequests); Assert.Empty(pullRequests); } @@ -90,10 +89,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var updatePullRequest = new PullRequestUpdate { Title = "updated title", Body = "Hello New Body" }; - var result = await _fixture.Update(Helper.UserName, _repository.Name, pullRequest.Number, updatePullRequest); + var result = await _fixture.Update(Helper.UserName, _context.RepositoryName, pullRequest.Number, updatePullRequest); Assert.Equal(updatePullRequest.Title, result.Title); Assert.Equal(updatePullRequest.Body, result.Body); @@ -105,10 +104,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var updatePullRequest = new PullRequestUpdate { State = ItemState.Closed }; - var result = await _fixture.Update(Helper.UserName, _repository.Name, pullRequest.Number, updatePullRequest); + var result = await _fixture.Update(Helper.UserName, _context.RepositoryName, pullRequest.Number, updatePullRequest); Assert.Equal(ItemState.Closed, result.State); Assert.Equal(pullRequest.Title, result.Title); @@ -121,13 +120,13 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var updatePullRequest = new PullRequestUpdate { State = ItemState.Closed }; - await _fixture.Update(Helper.UserName, _repository.Name, pullRequest.Number, updatePullRequest); + await _fixture.Update(Helper.UserName, _context.RepositoryName, pullRequest.Number, updatePullRequest); var closedPullRequests = new PullRequestRequest { State = ItemState.Closed }; - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, closedPullRequests); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, closedPullRequests); Assert.Equal(1, pullRequests.Count); } @@ -138,20 +137,20 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var newPullRequest2 = new NewPullRequest("another pull request", otherBranchName, "master"); - var anotherPullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest2); + var anotherPullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest2); var updatePullRequest = new PullRequestUpdate { Body = "This is the body" }; - await _fixture.Update(Helper.UserName, _repository.Name, pullRequest.Number, updatePullRequest); + await _fixture.Update(Helper.UserName, _context.RepositoryName, pullRequest.Number, updatePullRequest); var sortPullRequestsByUpdated = new PullRequestRequest { SortProperty = PullRequestSort.Updated, SortDirection = SortDirection.Ascending }; - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, sortPullRequestsByUpdated); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, sortPullRequestsByUpdated); Assert.Equal(anotherPullRequest.Title, pullRequests[0].Title); var sortPullRequestsByLongRunning = new PullRequestRequest { SortProperty = PullRequestSort.LongRunning }; - var pullRequestsByLongRunning = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, sortPullRequestsByLongRunning); + var pullRequestsByLongRunning = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, sortPullRequestsByLongRunning); Assert.Equal(pullRequest.Title, pullRequestsByLongRunning[0].Title); } @@ -161,15 +160,15 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var newPullRequest2 = new NewPullRequest("another pull request", otherBranchName, "master"); - var anotherPullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest2); + var anotherPullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest2); - var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, new PullRequestRequest { SortDirection = SortDirection.Ascending }); + var pullRequests = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, new PullRequestRequest { SortDirection = SortDirection.Ascending }); Assert.Equal(pullRequest.Title, pullRequests[0].Title); - var pullRequestsDescending = await _fixture.GetAllForRepository(Helper.UserName, _repository.Name, new PullRequestRequest()); + var pullRequestsDescending = await _fixture.GetAllForRepository(Helper.UserName, _context.RepositoryName, new PullRequestRequest()); Assert.Equal(anotherPullRequest.Title, pullRequestsDescending[0].Title); } @@ -179,9 +178,9 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); - var result = await _fixture.Merged(Helper.UserName, _repository.Name, pullRequest.Number); + var result = await _fixture.Merged(Helper.UserName, _context.RepositoryName, pullRequest.Number); Assert.False(result); } @@ -192,10 +191,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var merge = new MergePullRequest { Message = "thing the thing" }; - var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); + var result = await _fixture.Merge(Helper.UserName, _context.RepositoryName, pullRequest.Number, merge); Assert.True(result.Merged); } @@ -206,10 +205,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var merge = new MergePullRequest(); - var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); + var result = await _fixture.Merge(Helper.UserName, _context.RepositoryName, pullRequest.Number, merge); Assert.True(result.Merged); } @@ -219,10 +218,10 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var merge = new MergePullRequest { Message = "thing the thing", Sha = pullRequest.Head.Sha }; - var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); + var result = await _fixture.Merge(Helper.UserName, _context.RepositoryName, pullRequest.Number, merge); Assert.True(result.Merged); } @@ -234,10 +233,10 @@ public class PullRequestsClientTests : IDisposable var fakeSha = new string('f', 40); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var merge = new MergePullRequest { Sha = fakeSha }; - var ex = await Assert.ThrowsAsync(() => _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge)); + var ex = await Assert.ThrowsAsync(() => _fixture.Merge(Helper.UserName, _context.RepositoryName, pullRequest.Number, merge)); Assert.True(ex.ApiError.Message.StartsWith("Head branch was modified")); } @@ -248,12 +247,12 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); var merge = new MergePullRequest { Message = "thing the thing" }; - var result = await _fixture.Merge(Helper.UserName, _repository.Name, pullRequest.Number, merge); + var result = await _fixture.Merge(Helper.UserName, _context.RepositoryName, pullRequest.Number, merge); - var master = await _client.GitDatabase.Reference.Get(Helper.UserName, _repository.Name, "heads/master"); + var master = await _github.GitDatabase.Reference.Get(Helper.UserName, _context.RepositoryName, "heads/master"); Assert.Equal(result.Sha, master.Object.Sha); } @@ -264,9 +263,9 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); - var result = await _fixture.Commits(Helper.UserName, _repository.Name, pullRequest.Number); + var result = await _fixture.Commits(Helper.UserName, _context.RepositoryName, pullRequest.Number); Assert.Equal(1, result.Count); Assert.Equal("this is the commit to merge into the pull request", result[0].Commit.Message); @@ -278,24 +277,24 @@ public class PullRequestsClientTests : IDisposable await CreateTheWorld(); var newPullRequest = new NewPullRequest("a pull request", branchName, "master"); - var pullRequest = await _fixture.Create(Helper.UserName, _repository.Name, newPullRequest); + var pullRequest = await _fixture.Create(Helper.UserName, _context.RepositoryName, newPullRequest); // create new commit for branch const string commitMessage = "Another commit in branch"; - var branch = await _client.GitDatabase.Reference.Get(Helper.UserName, _repository.Name, "heads/" + branchName); + var branch = await _github.GitDatabase.Reference.Get(Helper.UserName, _context.RepositoryName, "heads/" + branchName); var newTree = await CreateTree(new Dictionary { { "README.md", "Hello World!" } }); var newCommit = await CreateCommit(commitMessage, newTree.Sha, branch.Object.Sha); - await _client.GitDatabase.Reference.Update(Helper.UserName, _repository.Name, "heads/" + branchName, new ReferenceUpdate(newCommit.Sha)); + await _github.GitDatabase.Reference.Update(Helper.UserName, _context.RepositoryName, "heads/" + branchName, new ReferenceUpdate(newCommit.Sha)); - await _repositoryCommentsClient.Create(Helper.UserName, _repository.Name, newCommit.Sha, new NewCommitComment("I am a nice comment") { Path = "README.md", Position = 1 }); + await _repositoryCommentsClient.Create(Helper.UserName, _context.RepositoryName, newCommit.Sha, new NewCommitComment("I am a nice comment") { Path = "README.md", Position = 1 }); // don't try this at home await Task.Delay(TimeSpan.FromSeconds(5)); - var result = await _fixture.Commits(Helper.UserName, _repository.Name, pullRequest.Number); + var result = await _fixture.Commits(Helper.UserName, _context.RepositoryName, pullRequest.Number); Assert.Equal(2, result.Count); Assert.Equal("this is the commit to merge into the pull request", result[0].Commit.Message); @@ -330,26 +329,26 @@ public class PullRequestsClientTests : IDisposable async Task CreateTheWorld() { - var master = await _client.GitDatabase.Reference.Get(Helper.UserName, _repository.Name, "heads/master"); + var master = await _github.GitDatabase.Reference.Get(Helper.UserName, _context.RepositoryName, "heads/master"); // create new commit for master branch var newMasterTree = await CreateTree(new Dictionary { { "README.md", "Hello World!" } }); var newMaster = await CreateCommit("baseline for pull request", newMasterTree.Sha, master.Object.Sha); // update master - await _client.GitDatabase.Reference.Update(Helper.UserName, _repository.Name, "heads/master", new ReferenceUpdate(newMaster.Sha)); + await _github.GitDatabase.Reference.Update(Helper.UserName, _context.RepositoryName, "heads/master", new ReferenceUpdate(newMaster.Sha)); // create new commit for feature branch var featureBranchTree = await CreateTree(new Dictionary { { "README.md", "I am overwriting this blob with something new" } }); var featureBranchCommit = await CreateCommit("this is the commit to merge into the pull request", featureBranchTree.Sha, newMaster.Sha); // create branch - await _client.GitDatabase.Reference.Create(Helper.UserName, _repository.Name, new NewReference("refs/heads/my-branch", featureBranchCommit.Sha)); + await _github.GitDatabase.Reference.Create(Helper.UserName, _context.RepositoryName, new NewReference("refs/heads/my-branch", featureBranchCommit.Sha)); var otherFeatureBranchTree = await CreateTree(new Dictionary { { "README.md", "I am overwriting this blob with something else" } }); var otherFeatureBranchCommit = await CreateCommit("this is the other commit to merge into the other pull request", otherFeatureBranchTree.Sha, newMaster.Sha); - await _client.GitDatabase.Reference.Create(Helper.UserName, _repository.Name, new NewReference("refs/heads/my-other-branch", otherFeatureBranchCommit.Sha)); + await _github.GitDatabase.Reference.Create(Helper.UserName, _context.RepositoryName, new NewReference("refs/heads/my-other-branch", otherFeatureBranchCommit.Sha)); } async Task CreateTree(IEnumerable> treeContents) @@ -363,7 +362,7 @@ public class PullRequestsClientTests : IDisposable Content = c.Value, Encoding = EncodingType.Utf8 }; - var baselineBlobResult = await _client.GitDatabase.Blob.Create(Helper.UserName, _repository.Name, baselineBlob); + var baselineBlobResult = await _github.GitDatabase.Blob.Create(Helper.UserName, _context.RepositoryName, baselineBlob); collection.Add(new NewTreeItem { @@ -380,17 +379,17 @@ public class PullRequestsClientTests : IDisposable newTree.Tree.Add(item); } - return await _client.GitDatabase.Tree.Create(Helper.UserName, _repository.Name, newTree); + return await _github.GitDatabase.Tree.Create(Helper.UserName, _context.RepositoryName, newTree); } async Task CreateCommit(string message, string sha, string parent) { var newCommit = new NewCommit(message, sha, parent); - return await _client.GitDatabase.Commit.Create(Helper.UserName, _repository.Name, newCommit); + return await _github.GitDatabase.Commit.Create(Helper.UserName, _context.RepositoryName, newCommit); } public void Dispose() { - Helper.DeleteRepo(_repository); + _context.Dispose(); } }