Call super from JUnit 3 setUp and tearDown overrides

MSAL

Adds the missing super.setUp() or super.tearDown() call to an override in a junit.framework.TestCase subclass, so the shared setup and cleanup an ancestor performs still runs. super.setUp() goes first and super.tearDown() last, the order that lets an ancestor initialize before the test and clean up after it. A class extending TestCase directly is left alone, because TestCase's own implementations are empty, as is an empty override, which turns the ancestor's off on purpose. An override whose throws is missing or narrower than the inherited one gains the inherited clause, so the call compiles, unless code in the repository extends the class, calls the method, or has it implement an interface method, which the wider clause could stop compiling. A tearDown whose last statement may not complete normally is left alone.

org.openrewrite.java.testing.cleanup.AddMissingSuperCallInTestCase
mod run . --recipe=org.openrewrite.java.testing.cleanup.AddMissingSuperCallInTestCase

Install it once from Recipe actions, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.