← All recipes
Moderne licensed

Remove MockitoAnnotations.initMocks(this) and openMocks(this) if JUnit runners specified

Recipe IDorg.openrewrite.java.testing.mockito.RemoveInitMocksIfRunnersSpecified
Artifactorg.openrewrite.recipe:rewrite-testing-frameworks

Remove MockitoAnnotations.initMocks(this) and MockitoAnnotations.openMocks(this) if class-level JUnit runners @RunWith(MockitoJUnitRunner.class) or @ExtendWith(MockitoExtension.class) are specified. These manual initialization calls are redundant when using Mockito's JUnit integration. Note that the @Mock fields will then be initialized by the strict mocking session of the extension or runner; tests that relied on the lenient mocks created by an explicit openMocks(this) call inside @BeforeEach may surface UnnecessaryStubbingException. Add @MockitoSettings(strictness = Strictness.LENIENT) to opt out.

Single recipeMSAL

Usage

This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.

mod run . --recipe org.openrewrite.java.testing.mockito.RemoveInitMocksIfRunnersSpecified

If the recipe isn’t available locally, install it with:

mod config recipes jar install org.openrewrite.recipe:rewrite-testing-frameworks:3.43.0

Data tables

Structured output this recipe can produce.

  • Source files that had resultsSource files that were modified by the recipe run.org.openrewrite.table.SourcesFileResults
  • Source files that had search resultsSearch results that were found during the recipe run.org.openrewrite.table.SearchResults
  • Source files that errored on a recipeThe details of all errors produced by a recipe run.org.openrewrite.table.SourcesFileErrors
  • Recipe performanceStatistics used in analyzing the performance of recipes.org.openrewrite.table.RecipeRunStats