public void Should_Call_InternalFetchDiscussionThreads() { // Given var log = new FakeLog(); var pullRequestSystem = new FakePullRequestSystem(log); var settings = new ReportIssuesToPullRequestSettings(@"c:\repo"); var discussionThreads = new List <IPullRequestDiscussionThread> { new PullRequestDiscussionThread( 1, PullRequestDiscussionStatus.Active, new FilePath(@"src\Cake.Issues.Tests\FakeIssueProvider.cs"), new List <IPullRequestDiscussionComment> { new PullRequestDiscussionComment() { Content = "Message Foo", IsDeleted = false } }) { CommentSource = settings.CommentSource, } }; var capability = new FakeDiscussionThreadsCapability(log, pullRequestSystem, discussionThreads); // When pullRequestSystem.Initialize(settings); var result = capability.FetchDiscussionThreads(settings.CommentSource); // Then result.ShouldBe(discussionThreads); }
/// <inheritdoc/> public virtual bool Initialize(ReportIssuesToPullRequestSettings settings) { settings.NotNull(nameof(settings)); this.PrcaSettings = settings; return(true); }
public void Should_Call_InternalResolveDiscussionThreads() { // Given var log = new FakeLog(); var pullRequestSystem = new FakePullRequestSystem(log); var settings = new ReportIssuesToPullRequestSettings(@"c:\repo"); var discussionThread1 = new PullRequestDiscussionThread( 1, PullRequestDiscussionStatus.Active, new FilePath(@"src\Cake.Issues.Tests\Foo.cs"), new List <IPullRequestDiscussionComment> { new PullRequestDiscussionComment() { Content = "Message Foo", IsDeleted = false } }) { CommentIdentifier = "Message Foo", CommentSource = settings.CommentSource, }; var discussionThread2 = new PullRequestDiscussionThread( 1, PullRequestDiscussionStatus.Active, new FilePath(@"src\Cake.Issues.Tests\Bar.cs"), new List <IPullRequestDiscussionComment> { new PullRequestDiscussionComment() { Content = "Message Bar", IsDeleted = false } }) { CommentIdentifier = "Message Bar", CommentSource = settings.CommentSource, }; var discussionThreads = new List <IPullRequestDiscussionThread> { discussionThread1, discussionThread2 }; var capability = new FakeDiscussionThreadsCapability(log, pullRequestSystem, discussionThreads); // When pullRequestSystem.Initialize(settings); capability.ResolveDiscussionThreads( new List <IPullRequestDiscussionThread> { discussionThread1 }); // Then capability.ResolvedThreads.ShouldContain(discussionThread1); }
public void Should_Set_RepositoryRoot_If_Not_Null() { // Given DirectoryPath repoRoot = @"c:\repo"; // When var settings = new ReportIssuesToPullRequestSettings(repoRoot); // Then settings.RepositoryRoot.ShouldBe(repoRoot); }
public void Should_Return_True() { // Given var provider = new FakeCodeAnalysisProvider(new FakeLog()); var settings = new ReportIssuesToPullRequestSettings(@"c:\foo"); // When var result = provider.Initialize(settings); // Then result.ShouldBe(true); }
public void Should_Set_Settings() { // Given var provider = new FakeCodeAnalysisProvider(new FakeLog()); var settings = new ReportIssuesToPullRequestSettings(@"c:\foo"); // When provider.Initialize(settings); // Then provider.PrcaSettings.ShouldBe(settings); }
public void Should_Return_True() { // Given var prSystem = new FakePullRequestSystem(new FakeLog()); var settings = new ReportIssuesToPullRequestSettings(@"c:\foo"); // When var result = prSystem.Initialize(settings); // Then result.ShouldBe(true); }
public void Should_Set_Settings() { // Given var prSystem = new FakePullRequestSystem(new FakeLog()); var settings = new ReportIssuesToPullRequestSettings(@"c:\foo"); // When prSystem.Initialize(settings); // Then prSystem.PrcaSettings.ShouldBe(settings); }
/// <summary> /// Returns settings for reporting issues to pull requests. /// </summary> /// <param name="context">The Cake context.</param> /// <returns>Settings for reporting issues to pull requests.</returns> protected static IReportIssuesToPullRequestSettings GetReportIssuesToPullRequestSettings(IssuesContext context) { var settings = new ReportIssuesToPullRequestSettings(context.State.ProjectRootDirectory) { MaxIssuesToPost = context.Parameters.PullRequestSystem.MaxIssuesToPost, MaxIssuesToPostAcrossRuns = context.Parameters.PullRequestSystem.MaxIssuesToPostAcrossRuns, MaxIssuesToPostForEachIssueProvider = context.Parameters.PullRequestSystem.MaxIssuesToPostForEachIssueProvider }; foreach (var providerIssueLimit in context.Parameters.PullRequestSystem.ProviderIssueLimits) { settings.ProviderIssueLimits.Add(providerIssueLimit.Key, providerIssueLimit.Value); } return(settings); }
public void Should_Call_InternalGetModifiedFilesInPullRequest() { // Given var log = new FakeLog(); var pullRequestSystem = new FakePullRequestSystem(log); var settings = new ReportIssuesToPullRequestSettings(@"c:\repo"); var modifiedFiles = new List <FilePath> { @"foo.cs" }; var capability = new FakeFilteringByModifiedFilesCapability(log, pullRequestSystem, modifiedFiles); // When pullRequestSystem.Initialize(settings); var result = capability.GetModifiedFilesInPullRequest(); // Then result.ShouldBe(modifiedFiles); }
public override bool Initialize(ReportIssuesToPullRequestSettings settings) { var result = base.Initialize(settings); return(result && !this.ShouldFailOnInitialization); }
/// <inheritdoc/> public override bool Initialize(ReportIssuesToPullRequestSettings settings) { // Fail initialization if no pull request could be found. return(base.Initialize(settings) && this.azureDevOpsPullRequest.HasPullRequestLoaded); }
/// <inheritdoc/> public override bool Initialize(ReportIssuesToPullRequestSettings settings) { // Fail initialization if no pull request could be found. return(base.Initialize(settings) && this.pullRequest != null); }