-
-
Notifications
You must be signed in to change notification settings - Fork 358
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
test: migrate VariableReferencesTest to JUnit 5 #4497
test: migrate VariableReferencesTest to JUnit 5 #4497
Conversation
The following has changed in the code: Replaced @before annotation with @beforeeach at method setup Replaced junit 4 test annotation with junit 5 test annotation in testCheckModelConsistency Replaced junit 4 test annotation with junit 5 test annotation in testCatchVariableReferenceFunction Replaced junit 4 test annotation with junit 5 test annotation in testLocalVariableReferenceFunction Replaced junit 4 test annotation with junit 5 test annotation in testParameterReferenceFunction Replaced junit 4 test annotation with junit 5 test annotation in testVariableReferenceFunction Replaced junit 4 test annotation with junit 5 test annotation in testVariableScopeFunction Replaced junit 4 test annotation with junit 5 test annotation in testFieldScopeFunction Replaced junit 4 test annotation with junit 5 test annotation in testLocalVariableReferenceDeclarationFunction Replaced junit 4 test annotation with junit 5 test annotation in testPotentialVariableAccessFromStaticMethod Transformed junit4 assert to junit 5 assertion in testCheckModelConsistency Transformed junit4 assert to junit 5 assertion in testVariableScopeFunction Transformed junit4 assert to junit 5 assertion in testFieldScopeFunction Transformed junit4 assert to junit 5 assertion in testLocalVariableReferenceDeclarationFunction Transformed junit4 assert to junit 5 assertion in checkVariableAccess Transformed junit4 assert to junit 5 assertion in getLiteralValue Transformed junit4 assert to junit 5 assertion in testPotentialVariableAccessFromStaticMethod
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suboptimal sniper printing in a couple of places.
assertEquals("Only these keys were found: "+context.unique.keySet(), context.maxKey, context.unique.size()); | ||
assertEquals("AllLocalVars#maxValue must be equal to maximum value number ", (int)getLiteralValue((CtVariable)modelClass.filterChildren(new NamedElementFilter<>(CtVariable.class,"maxValue")).first()), context.maxKey); | ||
assertEquals(context.maxKey, context.unique.size(), "Only these keys were found: " + context.unique.keySet()); | ||
assertEquals(((int) (getLiteralValue(((CtVariable) (modelClass.filterChildren(new NamedElementFilter<>(CtVariable.class, "maxValue")).first()))))), context.maxKey, "AllLocalVars#maxValue must be equal to maximum value number "); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ugh, sniper printing of casts at work here (see #3809 (comment)). Could you manually remove the redundant parentheses?
assertNotNull("The declaration of variable "+varRef.getSimpleName()+" in "+getParentMethodName(varRef)+" on line "+var.getPosition().getLine()+" with value "+getVariableReferenceValue(varRef)+" was not found", var); | ||
assertEquals("CtLocalVariableReference#getDeclaration returned wrong declaration in "+getParentMethodName(varRef), getVariableReferenceValue(varRef), (int)getLiteralValue(var)); | ||
assertNotNull(var, "The declaration of variable " + varRef.getSimpleName() + " in " + getParentMethodName(varRef) + " on line " + var.getPosition().getLine() + " with value " + getVariableReferenceValue(varRef) + " was not found"); | ||
assertEquals(getVariableReferenceValue(varRef), ((int) (getLiteralValue(var))), "CtLocalVariableReference#getDeclaration returned wrong declaration in " + getParentMethodName(varRef)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
#3919
Change Log
The following bad smells are refactored:
Junit4-@before
The JUnit 4
@Before
annotation should be replaced with JUnit 5@BeforeEach
annotation.JUnit4-@test
The JUnit 4
@Test
annotation should be replaced with JUnit 5@Test
annotation.JUnit4Assertion
The JUnit4 assertion should be replaced with JUnit5 Assertions.
The following has changed in the code:
JUnit4-@test
testCheckModelConsistency
testCatchVariableReferenceFunction
testLocalVariableReferenceFunction
testParameterReferenceFunction
testVariableReferenceFunction
testVariableScopeFunction
testFieldScopeFunction
testLocalVariableReferenceDeclarationFunction
testPotentialVariableAccessFromStaticMethod
Junit4-@before
@Before
annotation with@BeforeEach
at methodsetup
JUnit4Assertion
checkKey
testCheckModelConsistency
testVariableScopeFunction
testFieldScopeFunction
testLocalVariableReferenceDeclarationFunction
checkVariableAccess
getLiteralValue
testPotentialVariableAccessFromStaticMethod