Skip to content

Commit 5583bcb

Browse files
committed
A little better leveraging of InspectionTestsBase
1 parent 864734c commit 5583bcb

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

RubberduckTests/Inspections/ImplementedInterfaceMemberInspectionTests.cs

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ End Sub
4040
Public Sub IClass1_DoSomethingElse(ByVal a As Integer)
4141
MsgBox ""?""
4242
End Sub";
43-
CheckActualEmptyBlockCountEqualsExpected(interfaceCode, concreteCode, 0);
43+
CheckActualEmptyBlockCountEqualsExpected(("IClass1", interfaceCode), ("Class1", concreteCode), 0);
4444
}
4545

4646
[Test]
@@ -61,7 +61,7 @@ Private Sub IClass1_DoSomething(ByVal a As Integer)
6161
End Sub
6262
Public Sub IClass1_DoSomethingElse(ByVal a As Integer)
6363
End Sub";
64-
CheckActualEmptyBlockCountEqualsExpected(interfaceCode, concreteCode, 1);
64+
CheckActualEmptyBlockCountEqualsExpected(("IClass1", interfaceCode), ("Class1", concreteCode), 1);
6565
}
6666

6767
[Test]
@@ -83,7 +83,7 @@ public void ImplementedInterfaceMember_VariousStatements_DontReturnResult(string
8383
MsgBox ""?""
8484
End Sub";
8585

86-
CheckActualEmptyBlockCountEqualsExpected(interfaceCode, concreteCode, 0);
86+
CheckActualEmptyBlockCountEqualsExpected(("IClass1", interfaceCode), ("Class1", concreteCode), 0);
8787
}
8888

8989
[Test]
@@ -119,7 +119,7 @@ public void ImplementedInterfaceMember_VariousStatements_ReturnResult(string sta
119119
Sub IClass1_Qux()
120120
End Sub";
121121

122-
CheckActualEmptyBlockCountEqualsExpected(interfaceCode, concreteCode, 1);
122+
CheckActualEmptyBlockCountEqualsExpected(("IClass1", interfaceCode), ("Class1", concreteCode), 1);
123123
}
124124

125125
//https://github.com/rubberduck-vba/Rubberduck/issues/5143
@@ -129,7 +129,7 @@ Sub IClass1_Qux()
129129
[Category("Inspections")]
130130
public void ImplementedInterfaceMember_AnnotatedOnly_ReturnsResult(string interfaceBody, string implementsStatement, int expected)
131131
{
132-
string interfaceCode =
132+
var interfaceCode =
133133
$@"
134134
'@Interface
135135
@@ -138,30 +138,28 @@ End Sub
138138
Public Sub DoSomethingElse(ByVal a As Integer)
139139
{interfaceBody}
140140
End Sub";
141-
string concreteCode =
141+
var concreteCode =
142142
$@"
143143
144144
{implementsStatement}
145145
146-
Private Sub IClass_DoSomething(ByVal a As Integer)
146+
Private Sub IClass1_DoSomething(ByVal a As Integer)
147147
MsgBox ""?""
148148
End Sub
149-
Public Sub IClass_DoSomethingElse(ByVal a As Integer)
149+
Public Sub IClass1_DoSomethingElse(ByVal a As Integer)
150150
End Sub";
151-
CheckActualEmptyBlockCountEqualsExpected(interfaceCode, concreteCode, expected);
151+
CheckActualEmptyBlockCountEqualsExpected(("IClass1", interfaceCode), ("Class1", concreteCode), expected);
152152
}
153153

154-
private void CheckActualEmptyBlockCountEqualsExpected(string interfaceCode, string concreteCode, int expectedCount)
154+
private void CheckActualEmptyBlockCountEqualsExpected((string identifier, string code) interfaceDef, (string identifier, string code) implementerDef, int expectedCount)
155155
{
156-
var builder = new MockVbeBuilder();
157-
var project = builder.ProjectBuilder("TestProject1", ProjectProtection.Unprotected)
158-
.AddComponent("IClass1", ComponentType.ClassModule, interfaceCode)
159-
.AddComponent("Class1", ComponentType.ClassModule, concreteCode)
160-
.Build();
161-
var vbe = builder.AddProject(project).Build();
162-
163-
var inspectionResults = InspectionResults(vbe.Object);
164-
Assert.AreEqual(expectedCount, inspectionResults.Count());
156+
var modules = new(string, string, ComponentType)[]
157+
{
158+
(interfaceDef.identifier, interfaceDef.code, ComponentType.ClassModule),
159+
(implementerDef.identifier, implementerDef.code, ComponentType.ClassModule)
160+
};
161+
162+
Assert.AreEqual(expectedCount, InspectionResultsForModules(modules).Count());
165163
}
166164

167165
protected override IInspection InspectionUnderTest(RubberduckParserState state)

0 commit comments

Comments
 (0)