public void Convert_MultipleItemsIncludingOutOfRangeIssues_InRangeIssuesReturned() { // Arrange const int maxLineNumber = 5; var fileIssue = new Issue { StartLine = 0 }; var validIssue1 = new Issue { StartLine = 2 }; var outOfRangeIssue = new Issue { StartLine = maxLineNumber + 1 }; var validIssue2 = new Issue { StartLine = maxLineNumber }; var input = new[] { fileIssue, validIssue1, outOfRangeIssue, null, validIssue2 }; var mockSnapshot = CreateMockTextSnapshot(maxLineNumber, "anything"); // Act var actual = IssueToFilterableIssueConverter.Convert(input, mockSnapshot.Object); // Assert actual.Count().Should().Be(3); var adapterIssues = actual.OfType <DaemonIssueAdapter>().ToArray(); adapterIssues[0].SonarLintIssue.Should().BeSameAs(fileIssue); adapterIssues[1].SonarLintIssue.Should().BeSameAs(validIssue1); adapterIssues[2].SonarLintIssue.Should().BeSameAs(validIssue2); }
public void Convert_NullTextSnapshot_Throws() { // Arrange Action act = () => IssueToFilterableIssueConverter.Convert(Enumerable.Empty <Issue>(), null); // Act and assert act.Should().ThrowExactly <ArgumentNullException>().And.ParamName.Should().Be("textSnapshot"); }
public void Convert_NullIssues_Throws() { // Arrange var mockSnapshot = new Mock <ITextSnapshot>(); Action act = () => IssueToFilterableIssueConverter.Convert(null, mockSnapshot.Object); // Act and assert act.Should().ThrowExactly <ArgumentNullException>().And.ParamName.Should().Be("issues"); }
public void Convert_EmptyList_ReturnsEmptyList() { // Arrange var mockSnapshot = new Mock <ITextSnapshot>(); // Act and assert IssueToFilterableIssueConverter.Convert(Enumerable.Empty <Issue>(), mockSnapshot.Object) .Should().BeEmpty(); }