Skip to content

Commit c0f63ef

Browse files
committed
Add unit tests
Add @ignore annotation test. @ignore annotation is working test.
1 parent fbbb867 commit c0f63ef

File tree

3 files changed

+40
-1
lines changed

3 files changed

+40
-1
lines changed

Rubberduck.CodeAnalysis/Inspections/Concrete/ImplicitlyTypedConstInspection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ protected override IEnumerable<IInspectionResult> DoGetInspectionResults()
2020

2121
var implicitlyTypedConsts = declarationFinder.AllDeclarations
2222
.Where(declaration => declaration.DeclarationType == DeclarationType.Constant
23-
&& declaration.AsTypeContext == null);
23+
&& !declaration.IsTypeSpecified);
2424

2525
return implicitlyTypedConsts.Select(Result);
2626
}

RubberduckTests/Inspections/ImplicitlyTypedConstInspectionTests.cs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,24 @@ public void ImplicitlyTypedConst_DoesNotReturnResult()
5353
Assert.AreEqual(expected, actual);
5454
}
5555

56+
[Test]
57+
[Category("Inspections")]
58+
public void ImplicitlyTypedConst_Ignored_DoesNotReturnResult()
59+
{
60+
const string inputCode =
61+
@"Sub Foo()
62+
'@Ignore ImplicitlyTypedConst
63+
Const bar = 0
64+
End Sub";
65+
66+
const int expected = 0;
67+
68+
var results = InspectionResultsForModules(("FooClass", inputCode, ComponentType.ClassModule));
69+
var actual = results.Count();
70+
71+
Assert.AreEqual(expected, actual);
72+
}
73+
5674
protected override IInspection InspectionUnderTest(RubberduckParserState state)
5775
{
5876
return new ImplicitlyTypedConstInspection(state);

RubberduckTests/QuickFixes/IgnoreOnceQuickFixTests.cs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
using Rubberduck.Parsing.Inspections.Abstract;
1313
using Rubberduck.VBEditor;
1414
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
15+
using Rubberduck.CodeAnalysis.Inspections.Concrete;
1516

1617
namespace RubberduckTests.QuickFixes
1718
{
@@ -1050,6 +1051,26 @@ line _
10501051
Assert.AreEqual(expectedCode, actualCode);
10511052
}
10521053

1054+
[Test]
1055+
[Category("QuickFixes")]
1056+
public void ImplicitlyTypedConst_IgnoreOnceQuickFixWorks()
1057+
{
1058+
const string inputCode =
1059+
@"Public Sub Foo()
1060+
Const bar = 0
1061+
End Sub";
1062+
1063+
const string expected =
1064+
@"Public Sub Foo()
1065+
'@Ignore ImplicitlyTypedConst
1066+
Const bar = 0
1067+
End Sub";
1068+
1069+
var actual = ApplyIgnoreOnceToFirstResult(inputCode, state => new ImplicitlyTypedConstInspection(state), TestStandardModuleVbeSetup);
1070+
1071+
Assert.AreEqual(expected, actual);
1072+
}
1073+
10531074
private string ApplyIgnoreOnceToFirstResult(
10541075
string inputCode,
10551076
Func<RubberduckParserState, IInspection> inspectionFactory,

0 commit comments

Comments
 (0)