Removed 14 unnecessary stubbings in ChangesSinceLastBuildMacroTest.java #194
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Testing done
In our analysis of the project, we observed that
4 unnecessary stubbings which stubbed
getResultmethod,getChangeSetmethod,getChangeSetsmethod, andgetNumbermethod inChangesSinceLastBuildMacroTest.createBuildare created but are only executed by some of the method calls in the testChangesSinceLastBuildMacroTest.testShouldGetChangesForLatestBuildEvenWhenPreviousBuildsExist.We duplicated the
createBuildmethod, removed the unnecessary stubbings, named itcreateBuild2, and applied the new method to the method call which does not execute the stubbings in the test.3 unnecessary stubbings which stubbed
getResultmethod,getChangeSetmethod, andgetNumbermethod inChangesSinceLastBuildMacroTest.createBuildWithAffectedFilesare created but are never executed. We removed them from the test.3 unnecessary stubbings which stubbed
getResultmethod,getChangeSetmethod, andgetNumbermethod inChangesSinceLastBuildMacroTest.createBuildWithNoChangesare created but are never executed. We removed them from the test.1 unnecessary stubbing which stubbed
iteratormethod inChangesSinceLastBuildMacroTest.createBuildWithAffectedFiles.createChangeLogis created but is never executed by the test 'ChangesSinceLastBuildMacroTest.testShouldGetChangesForLatestBuildEvenWhenPreviousBuildsExist', We duplicated the method, removed the unnecessary stubbings from the new duplicated method, named itcreateChangeLog2, and applied to the specific method call that doesn't execute the stubbing.1 unnecessary stubbing which stubbed the
iteratormethod inChangesSinceLastBuildMacroTest.createBuildWithAffectedFiles.createEmptyChangeLogis created but is never executed. We removed it.2 unnecessary stubbings in the test
ChangesSinceLastBuildMacroTest.testShouldGetChangesForLatestBuildEvenWhenPreviousBuildsExistare created but never executed. We removed them.Unnecessary stubbings are stubbed method calls that were never realized during test execution. Mockito recommends to remove unnecessary stubbings (https://www.javadoc.io/doc/org.mockito/mockito-core/latest/org/mockito/exceptions/misusing/UnnecessaryStubbingException.html).
We propose below a solution to remove the unnecessary stubbings.