示例#1
0
        public void InspectionName()
        {
            const string expectedName = nameof(EmptyElseBlockInspection);
            var          inspection   = new EmptyElseBlockInspection(null);

            Assert.AreEqual(expectedName, inspection.Name);
        }
        public void EmptyElseBlock_QuickFixRemovesElse()
        {
            const string inputCode =
                @"Sub Foo()
    If True Then
    Else
    End If
End Sub";

            const string expectedCode =
                @"Sub Foo()
    If True Then
    End If
End Sub";

            var vbe   = MockVbeBuilder.BuildFromSingleStandardModule(inputCode, out var component);
            var state = MockParser.CreateAndParse(vbe.Object);

            var inspection    = new EmptyElseBlockInspection(state);
            var inspector     = InspectionsHelper.GetInspector(inspection);
            var actualResults = inspector.FindIssuesAsync(state, CancellationToken.None).Result;

            new RemoveEmptyElseBlockQuickFix(state).Fix(actualResults.First());

            string actualRewrite = state.GetRewriter(component).GetText();

            Assert.AreEqual(expectedCode, actualRewrite);
        }
示例#3
0
        public void InspectionType()
        {
            var inspection         = new EmptyElseBlockInspection(null);
            var expectedInspection = CodeInspectionType.CodeQualityIssues;

            Assert.AreEqual(expectedInspection, inspection.InspectionType);
        }
示例#4
0
        public void EmptyElseBlock_DoesntFireOnEmptyIfBlock()
        {
            const string inputcode =
                @"Sub Foo()
    If True Then
    EndIf
End Sub";
            var vbe   = MockVbeBuilder.BuildFromSingleStandardModule(inputcode, out _);
            var state = MockParser.CreateAndParse(vbe.Object);

            var       inspection    = new EmptyElseBlockInspection(state);
            var       inspector     = InspectionsHelper.GetInspector(inspection);
            var       actualResults = inspector.FindIssuesAsync(state, CancellationToken.None).Result;
            const int expectedCount = 0;

            Assert.AreEqual(expectedCount, actualResults.Count());
        }
示例#5
0
        public void InspectionName()
        {
            var inspection = new EmptyElseBlockInspection(null);

            Assert.AreEqual(nameof(EmptyElseBlockInspection), inspection.Name);
        }