This is an automated email from the ASF dual-hosted git repository.

emilles pushed a commit to branch GROOVY_5_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit ba7f4eb469cb53fe6cb195081a8b6c6050d7a06d
Author: Eric Milles <[email protected]>
AuthorDate: Sun Jan 18 11:34:40 2026 -0600

    JUnit 5
---
 src/test/groovy/bugs/Groovy10034.groovy            |  3 ++
 src/test/groovy/bugs/Groovy10314.groovy            |  2 +
 src/test/groovy/bugs/Groovy10565.groovy            |  5 ++-
 src/test/groovy/bugs/Groovy10617.groovy            |  2 +
 src/test/groovy/bugs/Groovy11362.groovy            |  2 +
 src/test/groovy/bugs/Groovy6954.groovy             |  5 +++
 .../{Groovy8144Bug.groovy => Groovy8144.groovy}    | 15 ++++---
 .../{Groovy8289Bug.groovy => Groovy8289.groovy}    |  6 ++-
 .../{Groovy8614Bug.groovy => Groovy8614.groovy}    |  9 ++--
 src/test/groovy/bugs/Groovy9530.groovy             |  2 +
 .../classgen/asm/AbstractBytecodeTestCase.groovy   | 16 +++----
 .../classgen/asm/BinaryOperationsTest.groovy       | 28 ++++++++----
 .../asm/CovariantReturnBytecodeTest.groovy         |  8 +++-
 .../classgen/asm/DirectMethodCallTest.groovy       | 52 +++++++++++-----------
 .../groovy/classgen/asm/HotSwapTest.groovy         |  9 +++-
 .../groovy/classgen/asm/MethodPatternsTest.groovy  | 47 ++++++++++++-------
 .../classgen/asm/PrintlnLoadsAConstantTest.groovy  |  8 +++-
 .../groovy/classgen/asm/TypeAnnotationsTest.groovy | 16 +++++++
 .../sc/CombinedIndyAndStaticCompilationTest.groovy |  9 +++-
 .../asm/sc/GetAnnotationStaticCompileTest.groovy   | 11 ++---
 .../classgen/asm/sc/StaticCompilationTest.groovy   | 50 ++++++++++++++++++++-
 .../asm/sc/StaticCompileArrayLengthAndGet.groovy   | 14 +++---
 .../asm/sc/StaticCompileClosureCallTest.groovy     | 11 +++++
 .../asm/sc/StaticCompileComparisonTest.groovy      | 12 +++--
 .../asm/sc/StaticCompileDGMMethodTest.groovy       |  9 +++-
 .../asm/sc/StaticCompileInnerClassTest.groovy      | 11 +++--
 .../classgen/asm/sc/StaticCompileMathTest.groovy   | 24 ++++++++++
 ...StaticCompileNullCompareOptimizationTest.groovy | 19 ++++++++
 .../asm/sc/StaticCompilePostfixPrefixTest.groovy   |  9 +++-
 29 files changed, 313 insertions(+), 101 deletions(-)

diff --git a/src/test/groovy/bugs/Groovy10034.groovy 
b/src/test/groovy/bugs/Groovy10034.groovy
index 4bce760101..bed617b7a7 100644
--- a/src/test/groovy/bugs/Groovy10034.groovy
+++ b/src/test/groovy/bugs/Groovy10034.groovy
@@ -19,8 +19,11 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy10034 extends AbstractBytecodeTestCase {
+
+    @Test
     void testObjectArrayParam() {
         def result = compile method:'test', '''
             @groovy.transform.CompileStatic
diff --git a/src/test/groovy/bugs/Groovy10314.groovy 
b/src/test/groovy/bugs/Groovy10314.groovy
index a8b8588691..b5fd8c20a0 100644
--- a/src/test/groovy/bugs/Groovy10314.groovy
+++ b/src/test/groovy/bugs/Groovy10314.groovy
@@ -19,9 +19,11 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy10314 extends AbstractBytecodeTestCase {
 
+    @Test
     void testTryFinallyWhereAllPathsReturn() {
         def result = compile method:'test', '''
             def test() {
diff --git a/src/test/groovy/bugs/Groovy10565.groovy 
b/src/test/groovy/bugs/Groovy10565.groovy
index c5979bbab7..18a7db122b 100644
--- a/src/test/groovy/bugs/Groovy10565.groovy
+++ b/src/test/groovy/bugs/Groovy10565.groovy
@@ -19,13 +19,16 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 import static groovy.test.GroovyAssert.isAtLeastJdk
+import static org.junit.jupiter.api.Assumptions.assumeTrue
 
 final class Groovy10565 extends AbstractBytecodeTestCase {
 
+    @Test
     void testPermittedSubclassName() {
-        if (!isAtLeastJdk('17.0')) return
+        assumeTrue(isAtLeastJdk('17.0'))
 
         def bytecode = compile '''
             package example
diff --git a/src/test/groovy/bugs/Groovy10617.groovy 
b/src/test/groovy/bugs/Groovy10617.groovy
index d2a3f358a8..f51a12081a 100644
--- a/src/test/groovy/bugs/Groovy10617.groovy
+++ b/src/test/groovy/bugs/Groovy10617.groovy
@@ -19,9 +19,11 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy10617 extends AbstractBytecodeTestCase {
 
+    @Test
     void testReturnInsertion() {
         def bytecode = compile '''
             String m() {
diff --git a/src/test/groovy/bugs/Groovy11362.groovy 
b/src/test/groovy/bugs/Groovy11362.groovy
index 500acfb460..55b7a375c1 100644
--- a/src/test/groovy/bugs/Groovy11362.groovy
+++ b/src/test/groovy/bugs/Groovy11362.groovy
@@ -19,9 +19,11 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy11362 extends AbstractBytecodeTestCase {
 
+    @Test
     void testCatchException() {
         def bytecode = compile method:'test', '''
             void test() {
diff --git a/src/test/groovy/bugs/Groovy6954.groovy 
b/src/test/groovy/bugs/Groovy6954.groovy
index de2116c900..92b07df738 100644
--- a/src/test/groovy/bugs/Groovy6954.groovy
+++ b/src/test/groovy/bugs/Groovy6954.groovy
@@ -19,10 +19,12 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy6954 extends AbstractBytecodeTestCase {
 
     // GROOVY-11376
+    @Test
     void testSetMapDotField() {
         assertScript '''import groovy.transform.*
             @CompileStatic
@@ -60,6 +62,7 @@ final class Groovy6954 extends AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testSetMapDotProperty() {
         extractionOptions.method = 'put'
 
@@ -81,6 +84,7 @@ final class Groovy6954 extends AbstractBytecodeTestCase {
         ], sequence.indexOf('--BEGIN--'))
     }
 
+    @Test
     void testSafeSetMapDotProperty() {
         extractionOptions.method = 'put'
 
@@ -101,6 +105,7 @@ final class Groovy6954 extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testChainSetMapDotProperty() {
         assertScript '''
             @groovy.transform.CompileStatic
diff --git a/src/test/groovy/bugs/Groovy8144Bug.groovy 
b/src/test/groovy/bugs/Groovy8144.groovy
similarity index 89%
rename from src/test/groovy/bugs/Groovy8144Bug.groovy
rename to src/test/groovy/bugs/Groovy8144.groovy
index 610c880ec3..7d87ec5863 100644
--- a/src/test/groovy/bugs/Groovy8144Bug.groovy
+++ b/src/test/groovy/bugs/Groovy8144.groovy
@@ -21,12 +21,14 @@ package bugs
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
 import org.codehaus.groovy.control.CompilerConfiguration
 import org.codehaus.groovy.control.SourceUnit
+import org.junit.jupiter.api.BeforeEach
+import org.junit.jupiter.api.Test
 
 /**
  * This test requires the test classes executed are compiled and on the
  * classpath and not in the same compilation unit.
  */
-class Groovy8144Bug extends AbstractBytecodeTestCase {
+class Groovy8144 extends AbstractBytecodeTestCase {
 
     GroovyShell shell
 
@@ -34,26 +36,29 @@ class Groovy8144Bug extends AbstractBytecodeTestCase {
         ['asmResolving': Boolean.TRUE]
     }
 
-    @Override
-    void setUp() {
+    @BeforeEach
+    void moreSetUp() {
         CompilerConfiguration config = new CompilerConfiguration()
         config.optimizationOptions.putAll(getOptions())
         shell = new GroovyShell(config)
     }
 
+    @Test
     void testMethodInheritedFromNonPublicAbstractBaseClass() {
         checkAnswer('Groovy8144A')
     }
 
+    @Test
     void testMethodInheritedFromPublicAbstractBaseClass() {
         checkAnswer('Groovy8144B')
     }
 
+    @Test
     void testMethodInheritedFromPublicBaseClass() {
         checkAnswer('Groovy8144C')
     }
 
-    void checkAnswer(String testClassName) {
+    private void checkAnswer(String testClassName) {
         String code = """
             import org.codehaus.groovy.dummy.${testClassName}
 
@@ -81,7 +86,7 @@ class Groovy8144Bug extends AbstractBytecodeTestCase {
     }
 }
 
-class Groovy8144BugAsmResolveOff extends Groovy8144Bug {
+final class Groovy8144_AsmResolveOff extends Groovy8144 {
     @Override
     protected Map<String, Boolean> getOptions() {
         ['asmResolving': Boolean.FALSE]
diff --git a/src/test/groovy/bugs/Groovy8289Bug.groovy 
b/src/test/groovy/bugs/Groovy8289.groovy
similarity index 94%
rename from src/test/groovy/bugs/Groovy8289Bug.groovy
rename to src/test/groovy/bugs/Groovy8289.groovy
index c5b993ec21..8dfa5f7edd 100644
--- a/src/test/groovy/bugs/Groovy8289Bug.groovy
+++ b/src/test/groovy/bugs/Groovy8289.groovy
@@ -19,8 +19,11 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
-class Groovy8289Bug extends AbstractBytecodeTestCase {
+final class Groovy8289 extends AbstractBytecodeTestCase {
+
+    @Test
     void testNoArgCtorLines() {
         def bytecode = compile '''\
             @groovy.transform.CompileStatic
@@ -43,6 +46,7 @@ class Groovy8289Bug extends AbstractBytecodeTestCase {
     }
 
     // GROOVY-9199
+    @Test
     void testTryFinallyLines() {
         def bytecode = compile '''\
             def m(p) {
diff --git a/src/test/groovy/bugs/Groovy8614Bug.groovy 
b/src/test/groovy/bugs/Groovy8614.groovy
similarity index 90%
rename from src/test/groovy/bugs/Groovy8614Bug.groovy
rename to src/test/groovy/bugs/Groovy8614.groovy
index 020cfb1870..f563592761 100644
--- a/src/test/groovy/bugs/Groovy8614Bug.groovy
+++ b/src/test/groovy/bugs/Groovy8614.groovy
@@ -19,12 +19,14 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 /**
- * see Groovy3830Bug for tests when call sites are present
+ * See {@link Groovy3830Bug} for tests when call sites are present.
  */
-class Groovy8614Bug extends AbstractBytecodeTestCase {
+final class Groovy8614 extends AbstractBytecodeTestCase {
 
+    @Test
     void testNestedInterfaceHelperClassNotGeneratedIfNoCallsites() {
         def bytecode = compile('classNamePattern': 'X', '''
             class X {
@@ -34,6 +36,7 @@ class Groovy8614Bug extends AbstractBytecodeTestCase {
         assert !bytecode.hasSequence(['static synthetic INNERCLASS X$Y$1 X 1'])
     }
 
+    @Test
     void testDoubleNestedInterfaceHelperClassNotGeneratedIfNoCallsites() {
         def bytecode = compile('classNamePattern': 'X\\$Y', '''
             class X {
@@ -46,6 +49,7 @@ class Groovy8614Bug extends AbstractBytecodeTestCase {
     }
 
     //GROOVY-5082
+    @Test
     void testInterfaceHelperClassNotGeneratedIfNoCallsites() {
         def bytecode = compile('classNamePattern': 'X', '''
             interface X {
@@ -54,5 +58,4 @@ class Groovy8614Bug extends AbstractBytecodeTestCase {
         ''')
         assert !bytecode.hasSequence(['static synthetic INNERCLASS X$1 X 1'])
     }
-
 }
diff --git a/src/test/groovy/bugs/Groovy9530.groovy 
b/src/test/groovy/bugs/Groovy9530.groovy
index 66ae9328f4..8aeffb1b59 100644
--- a/src/test/groovy/bugs/Groovy9530.groovy
+++ b/src/test/groovy/bugs/Groovy9530.groovy
@@ -19,6 +19,7 @@
 package bugs
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 final class Groovy9530 extends AbstractBytecodeTestCase {
 
@@ -30,6 +31,7 @@ final class Groovy9530 extends AbstractBytecodeTestCase {
         }
     }
 
+    @Test
     void testConstantInlining() {
         def bytecode = compile '''import bugs.Groovy9530.StaticClass
             class C {
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/AbstractBytecodeTestCase.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/AbstractBytecodeTestCase.groovy
index c21245bbad..482b59db87 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/AbstractBytecodeTestCase.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/AbstractBytecodeTestCase.groovy
@@ -18,11 +18,11 @@
  */
 package org.codehaus.groovy.classgen.asm
 
-import groovy.test.GroovyTestCase
 import org.apache.groovy.io.StringBuilderWriter
 import org.codehaus.groovy.control.CompilationUnit
 import org.codehaus.groovy.control.CompilerConfiguration
 import org.codehaus.groovy.control.Phases
+import org.junit.jupiter.api.BeforeEach
 import org.objectweb.asm.ClassReader
 import org.objectweb.asm.ClassVisitor
 import org.objectweb.asm.FieldVisitor
@@ -34,19 +34,17 @@ import java.security.CodeSource
 /**
  * Abstract test case to extend to check the instructions we generate in the 
bytecode of groovy programs.
  */
-abstract class AbstractBytecodeTestCase extends GroovyTestCase {
+abstract class AbstractBytecodeTestCase {
 
     Class clazz
     Map extractionOptions
     InstructionSequence sequence
 
-    @Override
-    protected void setUp() {
-        super.setUp()
+    @BeforeEach
+    void setUp() {
         extractionOptions = [method: 'run']
     }
 
-    @Override
     protected void assertScript(final String script) throws Exception {
         CompilationUnit unit = null
         GroovyShell shell = new GroovyShell(new GroovyClassLoader() {
@@ -56,7 +54,7 @@ abstract class AbstractBytecodeTestCase extends 
GroovyTestCase {
             }
         })
         try {
-            shell.evaluate(script, testClassName)
+            shell.evaluate(script, this.class.simpleName)
         } finally {
             if (unit != null) {
                 try {
@@ -76,7 +74,7 @@ abstract class AbstractBytecodeTestCase extends 
GroovyTestCase {
      * @param scriptText the script to compile
      * @return the decompiled <code>InstructionSequence</code>
      */
-    InstructionSequence compile(Map options = [:], final String scriptText) {
+    protected InstructionSequence compile(Map options = [:], final String 
scriptText) {
         options = [method: 'run', classNamePattern: '.*script', *: options]
         sequence = null
         clazz = null
@@ -112,7 +110,7 @@ abstract class AbstractBytecodeTestCase extends 
GroovyTestCase {
         sequence
     }
 
-    InstructionSequence extractSequence(final byte[] bytes, final Map options 
= [method: 'run']) {
+    protected InstructionSequence extractSequence(final byte[] bytes, final 
Map options = [method: 'run']) {
         def out = new StringBuilderWriter()
         def tcv
         tcv = new TraceClassVisitor(new 
ClassVisitor(CompilerConfiguration.ASM_API_VERSION) {
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/BinaryOperationsTest.groovy 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/BinaryOperationsTest.groovy
index 6255532e6f..2e8f751783 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/BinaryOperationsTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/BinaryOperationsTest.groovy
@@ -18,12 +18,16 @@
  */
 package org.codehaus.groovy.classgen.asm
 
+import org.junit.jupiter.api.Test
+
 import static org.codehaus.groovy.control.CompilerConfiguration.DEFAULT as 
config
+import static org.junit.jupiter.api.Assumptions.assumeFalse
 
-class BinaryOperationsTest extends AbstractBytecodeTestCase {
+final class BinaryOperationsTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testIntPlus() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile("""\
             int i = 1
             int j = 2
@@ -35,8 +39,9 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testIntCompareLessThan() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile("""\
             int i = 0
             if (i < 100) println "true"
@@ -47,9 +52,10 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    // GROOVY-4741
+    @Test
     void testCompareLessThanInClosure() {
-        if (config.indyEnabled) return;
-        // GROOVY-4741
+        assumeFalse(config.indyEnabled)
         assert """
             int a = 0
             [].each {
@@ -59,8 +65,9 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase {
         """
     }
 
+    @Test
     void testLongLeftShift() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile("""\
             long a = 1
             long b = a << 32
@@ -70,8 +77,9 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testIntConstants() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         (0..5).each {
             assert compile("""\
                 int a = $it
@@ -102,8 +110,9 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase 
{
         }
     }
 
+    @Test
     void testCharXor() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile('''
             int i = ('a' as char) ^ ('b' as char)
         ''').hasStrictSequence ([
@@ -112,6 +121,7 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase 
{
     }
 
     // GROOVY-10657
+    @Test
     void testPutAtValue() {
         def sequence = compile '''
             class C {
@@ -124,6 +134,7 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase 
{
         '''
     }
 
+    @Test
     void testPrimitiveOrAssign() {
         ['byte','int','short','long'].each { type ->
             assertScript """
@@ -135,6 +146,7 @@ class BinaryOperationsTest extends AbstractBytecodeTestCase 
{
         }
     }
 
+    @Test
     void testPrimitiveAndAssign() {
         ['byte','int','short','long'].each { type ->
             assertScript """
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/CovariantReturnBytecodeTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/CovariantReturnBytecodeTest.groovy
index eded14d93a..bebf677eb0 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/CovariantReturnBytecodeTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/CovariantReturnBytecodeTest.groovy
@@ -18,8 +18,12 @@
  */
 package org.codehaus.groovy.classgen.asm
 
-class CovariantReturnBytecodeTest extends AbstractBytecodeTestCase {
-    void testCovariance(){
+import org.junit.jupiter.api.Test
+
+final class CovariantReturnBytecodeTest extends AbstractBytecodeTestCase {
+
+    @Test
+    void testCovariance() {
         def code = compile (method:'super$3$attach', classNamePattern:'C', '''
             abstract class A {
                 A attach(){return this}
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/DirectMethodCallTest.groovy 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/DirectMethodCallTest.groovy
index a8e414bc70..c04e10e7f5 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/DirectMethodCallTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/DirectMethodCallTest.groovy
@@ -20,33 +20,35 @@ package org.codehaus.groovy.classgen.asm
 
 import org.codehaus.groovy.ast.ClassHelper
 import org.codehaus.groovy.ast.Parameter
+import org.junit.jupiter.api.Test
+import org.junit.jupiter.params.ParameterizedTest
+import org.junit.jupiter.params.provider.ValueSource
 
-class DirectMethodCallTest extends AbstractBytecodeTestCase {
+final class DirectMethodCallTest extends AbstractBytecodeTestCase {
 
-  void testVirtual() {
-      def target = ClassHelper.Integer_TYPE.getMethod("toString", new 
Parameter[0])
-      def makeDirectCall = {su ->
-          su. getAST().classes[0].
-              getMethod("run", new Parameter[0]).code.
-              statements.last().expression.methodTarget = target;
-      }
+    @Test
+    void testVirtual() {
+        def target = ClassHelper.Integer_TYPE.getMethod('toString', new 
Parameter[0])
+        def makeDirectCall = { su ->
+            su.getAST().classes[0].getMethod('run', new 
Parameter[0]).code.statements.last().expression.methodTarget = target
+        }
 
-      assert compile (method:"run", conversionAction: makeDirectCall, """
-          def a = 1; 
-          a.toString()
-      """).hasSequence([
-              "INVOKEVIRTUAL java/lang/Integer.toString ()Ljava/lang/String;"
-      ])
-  }
+        assert compile (method:'run', conversionAction: makeDirectCall, '''
+            def a = 1
+            a.toString()
+        ''').hasSequence([
+            'INVOKEVIRTUAL java/lang/Integer.toString ()Ljava/lang/String;'
+        ])
+    }
 
-  //GROOVY-6384
-  void testClassForNameAutomaticDirectCall() {
-      ['"Foo"',1,null,"println(x)"].each { arg ->
-          assert compile (method:"run", """
-              Class.forName($arg)
-          """).hasSequence([
-              "INVOKESTATIC java/lang/Class.forName 
(Ljava/lang/String;)Ljava/lang/Class;"
-          ])
-      }
-  }
+    // GROOVY-6384
+    @ParameterizedTest
+    @ValueSource(strings=['"Foo"','1','null','println(x)'])
+    void testClassForNameAutomaticDirectCall(String argument) {
+        assert compile (method:'run', """
+            Class.forName($argument)
+        """).hasSequence([
+            'INVOKESTATIC java/lang/Class.forName 
(Ljava/lang/String;)Ljava/lang/Class;'
+        ])
+    }
 }
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/HotSwapTest.groovy 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/HotSwapTest.groovy
index 0779048d00..52b670d091 100644
--- a/src/test/groovy/org/codehaus/groovy/classgen/asm/HotSwapTest.groovy
+++ b/src/test/groovy/org/codehaus/groovy/classgen/asm/HotSwapTest.groovy
@@ -18,12 +18,16 @@
  */
 package org.codehaus.groovy.classgen.asm
 
+import org.junit.jupiter.api.Test
+
 import static org.codehaus.groovy.control.CompilerConfiguration.DEFAULT as 
config
+import static org.junit.jupiter.api.Assumptions.assumeFalse
 
-class HotSwapTest extends AbstractBytecodeTestCase {
+final class HotSwapTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testHotSwapMethodExistsAndCallsGetCallSiteArray() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: '__$swapInit', '''
             Long d = 123456L
         ''').hasSequence([
@@ -32,6 +36,7 @@ class HotSwapTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testClinitCallingHotSwapMethod() {
         assert compile(method: '<clinit>', '''
              Long d = 123456L
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/MethodPatternsTest.groovy 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/MethodPatternsTest.groovy
index bfdab11b33..e8c7163f62 100644
--- a/src/test/groovy/org/codehaus/groovy/classgen/asm/MethodPatternsTest.groovy
+++ b/src/test/groovy/org/codehaus/groovy/classgen/asm/MethodPatternsTest.groovy
@@ -18,12 +18,16 @@
  */
 package org.codehaus.groovy.classgen.asm
 
+import org.junit.jupiter.api.Test
+
 import static org.codehaus.groovy.control.CompilerConfiguration.DEFAULT as 
config
+import static org.junit.jupiter.api.Assumptions.assumeFalse
 
-class MethodPatternsTest extends AbstractBytecodeTestCase {
+final class MethodPatternsTest extends AbstractBytecodeTestCase {
 
-    void testUnoptimizedIfWithNestedOptimizedLoop(){
-        if (config.indyEnabled) return;
+    @Test
+    void testUnoptimizedIfWithNestedOptimizedLoop() {
+        assumeFalse(config.indyEnabled)
         // in this example the if block contains statements that will not be 
optimized
         // but we still want to optimize the for loops, which can.
         // The test will check there is an optimized bytecode sequence for the 
loops.
@@ -88,8 +92,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
 
     // make a test for native compilation of the ackerman function
     // and ensure the nested call is optimized
+    @Test
     void testAckerman() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: 'A', '''
             int A(int x, int y) {
                 if (x == 0) return y+1
@@ -138,8 +143,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testForLoopSettingArray() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile('''
             int n = 10
             int[] x = new int[n]
@@ -176,8 +182,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testArrayIncrement() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile('''
             int n = 10
             int[] x = new int[n]
@@ -226,8 +233,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testForLoopSettingArrayWithOperatorUsedInAssignmentAndArrayRHS() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile('''
             int n = 10
             int[] x = new int[n]
@@ -266,8 +274,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testRightShiftUnsignedWithLongArgument() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: "hashCode", '''
             class X{
                 long _tagReservationDate
@@ -296,8 +305,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testObjectArraySet() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: "foo", '''
             class X {
                 void foo() {
@@ -311,8 +321,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testBooleanArraySet() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: "foo", '''
             class X{
                 void foo() {
@@ -326,8 +337,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testArray() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         def methods = [
             "short"     :   [1, "sArraySet ([SIS)V", "sArrayGet ([SI)S"],
             "int"       :   [1, "intArraySet ([III)V", "intArrayGet ([II)I"],
@@ -379,12 +391,13 @@ class MethodPatternsTest extends AbstractBytecodeTestCase 
{
             }
             clos.call(b)
             assert b.v == 3
-            assert a[3] == 8        
+            assert a[3] == 8
         """
     }
 
+    @Test
     void testFib() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: "fib", """
             int fib(int i) {
                 i < 2 ? 1 : fib(i - 2) + fib(i - 1)
@@ -423,8 +436,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         assert !seq.contains("isOrig")
     }
 
+    @Test
     void testNoBoxUnbox() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         assert compile(method: "someCode", """
             public boolean someCall() {
                 return true;
@@ -432,7 +446,7 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
 
             public boolean someCode() {
                 boolean val = someCall()
-            }        
+            }
         """).hasSequence([
             'ALOAD',
             'INVOKEVIRTUAL script.someCall ()Z',
@@ -442,8 +456,9 @@ class MethodPatternsTest extends AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testDiv() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         def types = [
             "byte", "short", "int", "long", "double", "float"]
         types.each {type ->
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/PrintlnLoadsAConstantTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/PrintlnLoadsAConstantTest.groovy
index ad6c95b363..23d2783f23 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/PrintlnLoadsAConstantTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/PrintlnLoadsAConstantTest.groovy
@@ -18,8 +18,12 @@
  */
 package org.codehaus.groovy.classgen.asm
 
-class PrintlnLoadsAConstantTest extends AbstractBytecodeTestCase {
+import org.junit.jupiter.api.Test
+
+final class PrintlnLoadsAConstantTest extends AbstractBytecodeTestCase {
+
+    @Test
     void testPrintln() {
         assert compile(''' println "true" ''').hasSequence(['LDC "true"'])
     }
-}
\ No newline at end of file
+}
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/TypeAnnotationsTest.groovy 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/TypeAnnotationsTest.groovy
index 03b5570c2c..c5270ddec5 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/TypeAnnotationsTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/TypeAnnotationsTest.groovy
@@ -18,6 +18,8 @@
  */
 package org.codehaus.groovy.classgen.asm
 
+import org.junit.jupiter.api.Test
+
 final class TypeAnnotationsTest extends AbstractBytecodeTestCase {
 
     private final String imports = '''\
@@ -26,6 +28,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         |import static java.lang.annotation.RetentionPolicy.*
         |'''.stripMargin()
 
+    @Test
     void testTypeAnnotationsForConstructor1() {
         def bytecode = compile(classNamePattern: 'HasConstructor', method: 
'<init>', imports + '''
             @Retention(RUNTIME) @Target(CONSTRUCTOR) @interface CtorAnno  { }
@@ -44,6 +47,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForConstructor2() {
         def bytecode = compile(classNamePattern: 'Foo.Bar', method: '<init>', 
imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { 
String value() }
@@ -66,6 +70,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11184
+    @Test
     void testTypeAnnotationsForConstructor3() {
         def bytecode = compile(classNamePattern: 'Foo.Bar', method: '<init>', 
imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { 
String value() }
@@ -92,6 +97,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForMethod1() {
         def bytecode = compile(method: 'foo', imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { }
@@ -125,6 +131,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForMethod2() {
         def bytecode = compile(method: 'foo', imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeParameterAnno 
{ }
@@ -159,6 +166,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForMethod3() {
         def bytecode = compile(classNamePattern: 'Foo', method: 'get', imports 
+ '''
             @Retention(RUNTIME) @Target(PARAMETER) @interface ParameterAnno { }
@@ -208,6 +216,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-9154
+    @Test
     void testTypeAnnotationsForMethod4() {
         def bytecode = compile(classNamePattern: 'Foo', method: 
'sizeZeroOrPositive', '''\
             @Grab("net.jqwik:jqwik:1.9.3")
@@ -233,6 +242,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11184
+    @Test
     void testTypeAnnotationsForMethod5() {
         def bytecode = compile(classNamePattern: 'Foo', method: 'bar', imports 
+ '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { 
String value() }
@@ -258,6 +268,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11479
+    @Test
     void testTypeAnnotationsForClosure() {
         def bytecode = compile(classNamePattern: 'Foo\\$_closure1', method: 
'doCall', imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { }
@@ -276,6 +287,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11479
+    @Test
     void testTypeAnnotationsForLambda() {
         def bytecode = compile(classNamePattern: 'Foo\\$_lambda1', method: 
'doCall', imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { }
@@ -293,6 +305,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForField1() {
         def bytecode = compile(classNamePattern: 'Foo', field: 'foo', imports 
+ '''
             @Retention(RUNTIME) @Target(FIELD) @interface FieldAnno { String 
value() }
@@ -319,6 +332,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testTypeAnnotationsForField2() {
         def bytecode = compile(classNamePattern: 'Bar', field: 'numbers', 
imports + '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno4 { }
@@ -340,6 +354,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11179
+    @Test
     void testTypeAnnotationsForClass() {
         def bytecode = compile(classNamePattern: 'Baz', imports + '''
             @Retention(RUNTIME) @Target(TYPE) @interface TypeAnno { String 
value() }
@@ -382,6 +397,7 @@ final class TypeAnnotationsTest extends 
AbstractBytecodeTestCase {
     /**
      * @see 
https://docs.oracle.com/javase/specs/jls/se11/html/jls-9.html#jls-9.7.4
      */
+    @Test
     void testTypeAnnotationsForArray() {
         def bytecode = compile(classNamePattern: 'Foo', method: 'bar', imports 
+ '''
             @Retention(RUNTIME) @Target(TYPE_USE) @interface TypeAnno0 { }
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/CombinedIndyAndStaticCompilationTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/CombinedIndyAndStaticCompilationTest.groovy
index 87a9233e38..def803299d 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/CombinedIndyAndStaticCompilationTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/CombinedIndyAndStaticCompilationTest.groovy
@@ -19,15 +19,19 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 import static org.codehaus.groovy.control.CompilerConfiguration.DEFAULT as 
config
+import static org.junit.jupiter.api.Assumptions.assumeTrue
 
 /**
  * Tests for combined static compilation and indy code
  */
-class CombinedIndyAndStaticCompilationTest extends AbstractBytecodeTestCase {
+final class CombinedIndyAndStaticCompilationTest extends 
AbstractBytecodeTestCase {
+
+    @Test
     void testArrayAccess() {
-        if (!config.indyEnabled) return;
+        assumeTrue(config.indyEnabled)
         ["byte", "short", "int", "long", "float", "double", "boolean", 
"char"].each { type->
             //array get
             compile ("""
@@ -48,6 +52,7 @@ class CombinedIndyAndStaticCompilationTest extends 
AbstractBytecodeTestCase {
         }
     }
 
+    @Test
     void testNegativeAccess() {
         ["byte", "short", "int", "long", "float", "double", "char"].each { 
type ->
             assertScript """
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/GetAnnotationStaticCompileTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/GetAnnotationStaticCompileTest.groovy
index 998520b602..8064385bd8 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/GetAnnotationStaticCompileTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/GetAnnotationStaticCompileTest.groovy
@@ -19,17 +19,16 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 /**
  * Unit tests for static type checking : miscellaneous tests.
  */
-class GetAnnotationStaticCompileTest extends AbstractBytecodeTestCase {
+final class GetAnnotationStaticCompileTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testGetAnnotationShouldNotProduceProxy() {
-        def bytecode = compile([method:'m'],'''import 
java.lang.annotation.Retention
-            import java.lang.annotation.RetentionPolicy
-            import java.lang.annotation.Target
-            import java.lang.annotation.ElementType
+        def bytecode = compile([method:'m'],'''import java.lang.annotation.*
             @Retention(RetentionPolicy.RUNTIME)
             @Target([ElementType.TYPE])
             public @interface MyAnnotation {
@@ -49,6 +48,4 @@ class GetAnnotationStaticCompileTest extends 
AbstractBytecodeTestCase {
         println bytecode
         clazz.newInstance().main()
     }
-
 }
-
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilationTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilationTest.groovy
index 9ce34e2c50..f04e292cb7 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilationTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilationTest.groovy
@@ -20,9 +20,14 @@ package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
 import org.codehaus.groovy.runtime.MethodClosure
+import org.junit.jupiter.api.Disabled
+import org.junit.jupiter.api.Test
+
+import static groovy.test.GroovyAssert.shouldFail
 
 final class StaticCompilationTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testEmptyMethod() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() { }
@@ -33,6 +38,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPrimitiveReturn1() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             int m() { 1 }
@@ -44,6 +50,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPrimitiveReturn2() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             long m() { 1L }
@@ -55,6 +62,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPrimitiveReturn3() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             short m() { 1 }
@@ -67,6 +75,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPrimitiveReturn4() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             byte m() { 1 }
@@ -79,6 +88,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testParameterReturns() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             int m(int i) { i }
@@ -106,6 +116,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testEmptyDeclaration0() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -122,6 +133,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testEmptyDeclaration1() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             int m() {
@@ -139,6 +151,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testSingleAssignment0() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -155,6 +168,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testSingleAssignment1() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             int m() {
@@ -172,6 +186,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testSingleAssignment2() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             class C {
@@ -194,6 +209,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testSingleAssignment3() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             class C {
@@ -236,6 +252,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testSubscriptAssignment1() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(int[] i) {
@@ -261,6 +278,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11288
+    @Test
     void testSubscriptAssignment2() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(int[] i) {
@@ -279,6 +297,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11286
+    @Test
     void testVoidMethod1() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -298,6 +317,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11286
+    @Test
     void testVoidMethod2() {
         assert compile(method: 'm', '''import static java.lang.System.gc
             @groovy.transform.CompileStatic
@@ -316,6 +336,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11286
+    @Test
     void testVoidMethod3() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -349,6 +370,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11286, GROOVY-11453
+    @Test
     void testVoidMethod4() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(List<C> list) {
@@ -431,6 +453,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-11630
+    @Test
     void testVoidMethod5() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -449,6 +472,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testIntLeftShift() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -462,6 +486,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testLongLeftShift() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -475,7 +500,8 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
-    void _testPlusPlus() {
+    @Disabled @Test
+    void testPlusPlus() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(int i) {
                 i++
@@ -485,7 +511,8 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
-    void _testMinusMinus() {
+    @Disabled @Test
+    void testMinusMinus() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(int i) {
                 i--
@@ -495,6 +522,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPlusEquals() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             int m() {
@@ -522,6 +550,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testPlusEqualsFromArgs() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(int i, int j) {
@@ -542,6 +571,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testFlow() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             String m(String str) {
@@ -569,6 +599,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testInstanceOf() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m(Object str) {
@@ -584,6 +615,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldGenerateDirectConstructorCall() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             class Foo {
@@ -600,6 +632,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldGenerateDirectArrayConstruct() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -615,6 +648,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldGenerateDirectBooleanArrayConstruct() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -632,6 +666,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldTriggerDirectCallToOuterClassGetter() {
         assert compile(method: 'fromInner', classNamePattern: '.*Inner.*', '''
             class Holder {
@@ -667,6 +702,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldOptimizeBytecodeByAvoidingCreationOfMopMethods() {
         def clazz = new GroovyShell().evaluate '''import groovy.transform.*
             @CompileStatic
@@ -685,6 +721,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         assert mopMethods.isEmpty()
     }
 
+    @Test
     void testShouldNotOptimizeBytecodeForMopMethodsBecauseOfSkip() {
         def clazz = new GroovyShell().evaluate '''import groovy.transform.*
             @CompileStatic
@@ -705,6 +742,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-7124
+    @Test
     void testUseInvokeVirtualPreferredOverInvokeInterface() {
         assert compile(method: 'foo', classNamePattern: 'B', '''
             interface A {
@@ -720,6 +758,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         ''').hasStrictSequence(['INVOKEVIRTUAL B.m'])
     }
 
+    @Test
     void testShouldNotTryToCastToSupposedDelegateType() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -736,6 +775,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testShouldOptimizeCharInit() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -748,6 +788,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testShouldOptimizeCharComparison() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -782,6 +823,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testForEachLoopOptimization() {
         def loop_init = [
                 'ALOAD', // load array (might be more complex than just ALOAD 
in general case)
@@ -910,6 +952,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         }
     }
 
+    @Test
     void testCompareWithCharOptimization() {
         String code = '''
             @groovy.transform.CompileStatic
@@ -934,6 +977,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
         assertScript(code)
     }
 
+    @Test
     void testShouldRemoveUnnecessaryCast() {
         assert compile(method: 'm', '''@groovy.transform.CompileStatic
             void m() {
@@ -948,6 +992,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
             ])
     }
 
+    @Test
     void testInstanceMethodReference() {
         // dynamic case should be a method closure
         assert String::toUpperCase instanceof MethodClosure
@@ -974,6 +1019,7 @@ final class StaticCompilationTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-6925
+    @Test
     void testOuterSCInnerSTC() {
         assert compile(classNamePattern: 'C', method: 'test', '''
             import groovy.transform.*
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileArrayLengthAndGet.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileArrayLengthAndGet.groovy
index 6bcf4bdaca..ffc252a798 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileArrayLengthAndGet.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileArrayLengthAndGet.groovy
@@ -19,10 +19,14 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 import static org.codehaus.groovy.control.CompilerConfiguration.DEFAULT as 
config
+import static org.junit.jupiter.api.Assumptions.assumeFalse
 
-class StaticCompileArrayLengthAndGet extends AbstractBytecodeTestCase {
+final class StaticCompileArrayLengthAndGet extends AbstractBytecodeTestCase {
+
+    @Test
     void testShouldCompileArrayLengthStatically() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -37,8 +41,9 @@ class StaticCompileArrayLengthAndGet extends 
AbstractBytecodeTestCase {
         assert obj.m([4,5,6] as Object[]) == 3
     }
 
+    @Test
     void testArrayGet1() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         // this test is done with indy in another tests case
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -51,11 +56,11 @@ class StaticCompileArrayLengthAndGet extends 
AbstractBytecodeTestCase {
         )
         def obj = clazz.newInstance()
         assert obj.m([4,5,6] as int[]) == 4
-
     }
 
+    @Test
     void testArraySet1() {
-        if (config.indyEnabled) return;
+        assumeFalse(config.indyEnabled)
         // this test is done with indy in another tests case
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -70,6 +75,5 @@ class StaticCompileArrayLengthAndGet extends 
AbstractBytecodeTestCase {
         int[] arr = [1,2,3]
         obj.m(arr)
         assert arr[0] == 666
-
     }
 }
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileClosureCallTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileClosureCallTest.groovy
index c680d91b3c..627dbccc98 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileClosureCallTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileClosureCallTest.groovy
@@ -19,12 +19,14 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 /**
  * Tests for static compilation: checks that closures are called properly.
  */
 final class StaticCompileClosureCallTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testShouldCallClosure() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -38,6 +40,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testShouldCallClosureWithOneArg() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -51,6 +54,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testShouldCallClosureWithTwoArgs() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -64,6 +68,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testShouldCallClosureWithThreeArgs() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -77,6 +82,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testStaticCompilationOfClosures() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -116,6 +122,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testWriteSharedVariableInClosure() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -129,6 +136,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().main()
     }
 
+    @Test
     void testCallPrivateMethodFromClosure() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -145,6 +153,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testCallStaticPrivateMethodFromClosure() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -161,6 +170,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testCallMethodWithinClosure() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -174,6 +184,7 @@ final class StaticCompileClosureCallTest extends 
AbstractBytecodeTestCase {
     }
 
     // GROOVY-6199
+    @Test
     void testCallClassMethodFromNestedClosure() {
         assertScript '''
             class MyClass {
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileComparisonTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileComparisonTest.groovy
index 7802bd5785..324977392f 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileComparisonTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileComparisonTest.groovy
@@ -19,8 +19,11 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
-class StaticCompileComparisonTest extends AbstractBytecodeTestCase {
+final class StaticCompileComparisonTest extends AbstractBytecodeTestCase {
+
+    @Test
     void testCompareInts() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -33,6 +36,7 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
     }
 
+    @Test
     void testCompareDoubles() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -45,6 +49,7 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
     }
 
+    @Test
     void testCompareDoubleWithInt() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -57,6 +62,7 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
     }
 
+    @Test
     void testCompareArrayLen() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -69,6 +75,7 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
     }
 
+    @Test
     void testCompareArrayLenUsingIf() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -85,6 +92,7 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
     }
 
+    @Test
     void testIdentityCompare() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -98,6 +106,4 @@ class StaticCompileComparisonTest extends 
AbstractBytecodeTestCase {
         )
         clazz.newInstance().main()
     }
-
-
 }
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileDGMMethodTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileDGMMethodTest.groovy
index 48114b73c6..252cf0ce09 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileDGMMethodTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileDGMMethodTest.groovy
@@ -19,8 +19,11 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
-class StaticCompileDGMMethodTest extends AbstractBytecodeTestCase {
+final class StaticCompileDGMMethodTest extends AbstractBytecodeTestCase {
+
+    @Test
     void testShouldCallToIntegerOnString() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -35,6 +38,7 @@ class StaticCompileDGMMethodTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testShouldCallToIntegerOnGString() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -50,6 +54,7 @@ class StaticCompileDGMMethodTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testEach() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -63,6 +68,7 @@ class StaticCompileDGMMethodTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().run()
     }
 
+    @Test
     void testCollect() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -75,5 +81,4 @@ class StaticCompileDGMMethodTest extends 
AbstractBytecodeTestCase {
         ''')
         clazz.newInstance().run()
     }
-
 }
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileInnerClassTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileInnerClassTest.groovy
index 3e5b8448b6..144952f4dd 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileInnerClassTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileInnerClassTest.groovy
@@ -19,8 +19,11 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
-class StaticCompileInnerClassTest extends AbstractBytecodeTestCase {
+final class StaticCompileInnerClassTest extends AbstractBytecodeTestCase {
+
+    @Test
     void testStaticCompileCallToOwnerField() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -35,9 +38,9 @@ class StaticCompileInnerClassTest extends 
AbstractBytecodeTestCase {
             assert c.foo() == '/tmp'
         ''')
         clazz.newInstance().main()
-
     }
 
+    @Test
     void testStaticCompileCallToOwnerMethod() {
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
@@ -53,11 +56,10 @@ class StaticCompileInnerClassTest extends 
AbstractBytecodeTestCase {
             assert c.foo() == '/tmp'
         ''')
         clazz.newInstance().main()
-
     }
 
+    @Test
     void testStaticCompileCallToOwnerPrivateMethod() {
-
         def bytecode = compile([method:'m'],'''
             @groovy.transform.CompileStatic
             class Config {
@@ -78,6 +80,7 @@ class StaticCompileInnerClassTest extends 
AbstractBytecodeTestCase {
         )*/
     }
 
+    @Test
     void testAccessPrivateMemberFromAnotherInnerClass() {
         assertScript '''
             @groovy.transform.CompileStatic
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileMathTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileMathTest.groovy
index 95ec62776e..333db1a9e8 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileMathTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileMathTest.groovy
@@ -19,6 +19,7 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 import static groovy.test.GroovyAssert.shouldFail
 
@@ -27,6 +28,7 @@ import static groovy.test.GroovyAssert.shouldFail
  */
 final class StaticCompileMathTest extends AbstractBytecodeTestCase {
 
+    @Test
     void testIntSum() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -39,6 +41,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testLongSum() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -51,6 +54,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testShortSum() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -63,6 +67,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testFloatSum() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -75,6 +80,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testDoubleSum() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -87,6 +93,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testDoublePlusInt() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -99,6 +106,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testIntMinusDouble() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -111,6 +119,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testIntMinusBigDec() {
         extractionOptions = [method: 'm', print:true]
         assertScript '''
@@ -122,6 +131,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testIntPlusBigDec() {
         extractionOptions = [method: 'm', print:true]
         assertScript '''
@@ -133,6 +143,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testIntMultiplyBigDec() {
         extractionOptions = [method: 'm', print:true]
         assertScript '''
@@ -144,6 +155,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testIntDivBigDec() {
         extractionOptions = [method: 'm', print:true]
         assertScript '''
@@ -155,6 +167,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompilePiComputationWithPrimitives() {
 //        extractionOptions = [method: 'doIt', print:true]
         assertScript '''@groovy.transform.CompileStatic
@@ -175,6 +188,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompilePiComputationWithPrimitivesAndRangeLoop() {
 //        extractionOptions = [method: 'doIt', print:true]
         assertScript '''@groovy.transform.CompileStatic
@@ -195,6 +209,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompileLeftShiftEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -207,6 +222,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompileRightShiftEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -219,6 +235,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompilePlusEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -231,6 +248,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompileMinusEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -243,6 +261,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompileDivideEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -264,6 +283,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         assert err =~ /Cannot assign value of type java.math.BigDecimal to 
variable of type int/
     }
 
+    @Test
     void testStaticCompileMultiplyEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -276,6 +296,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompilePowerEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -288,6 +309,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testStaticCompileModEquals() {
         assertScript '''
             @groovy.transform.CompileStatic
@@ -300,6 +322,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         '''
     }
 
+    @Test
     void testPrimitiveIntCompareNotEqualShouldUseFastPath() {
         def source = '''
         @groovy.transform.CompileStatic
@@ -319,6 +342,7 @@ final class StaticCompileMathTest extends 
AbstractBytecodeTestCase {
         ])
     }
 
+    @Test
     void testPrimitiveLongCompareNotEqualShouldUseFastPath() {
         def source = '''
         @groovy.transform.CompileStatic
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileNullCompareOptimizationTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileNullCompareOptimizationTest.groovy
index d43e44c925..e87c3d04c2 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileNullCompareOptimizationTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompileNullCompareOptimizationTest.groovy
@@ -19,12 +19,14 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
 /**
  * Unit tests for static compilation: null test optimizations.
  */
 final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTestCase {
 
+    @Test
     void testShouldUseIfNull1() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -35,6 +37,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['IFNULL'])
     }
 
+    @Test
     void testShouldUseIfNull2() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -45,6 +48,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['IFNULL'])
     }
 
+    @Test
     void testShouldUseIfNonNull1() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -55,6 +59,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['IFNONNULL'])
     }
 
+    @Test
     void testShouldUseIfNonNull2() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -65,6 +70,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['IFNONNULL'])
     }
 
+    @Test
     void testPrimitiveWithNullShouldBeOptimized1() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -75,6 +81,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['ICONST_0', 'POP'])
     }
 
+    @Test
     void testPrimitiveWithNullShouldBeOptimized2() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -85,6 +92,7 @@ final class StaticCompileNullCompareOptimizationTest extends 
AbstractBytecodeTes
         assert bytecode.hasStrictSequence(['ICONST_0', 'POP'])
     }
 
+    @Test
     void testOptimizeGroovyTruthForPrimitiveBoolean1() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -101,6 +109,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testOptimizeGroovyTruthForPrimitiveBoolean2() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -123,6 +132,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testOptimizeGroovyTruthForPrimitiveBoolean3() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -139,6 +149,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testOptimizeGroovyTruthForNonPrimitiveBoolean() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -161,6 +172,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testOptimizeGroovyTruthForPrimitiveNumberType() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -183,6 +195,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testNoGroovyTruthOptimizationForObject() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -203,6 +216,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testNoGroovyTruthOptimizationForString() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -223,6 +237,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testGroovyTruthOptimizationForFinalClass() {
         def bytecode = compile(method:'m', '''
             final class A {
@@ -246,6 +261,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         assert !bytecode.hasSequence(['INVOKEDYNAMIC cast(LA;)Z'])
     }
 
+    @Test
     void testGroovyTruthOptimizationForPrivateInnerClass() {
         def bytecode = compile(method:'m', '''
             class A {
@@ -271,6 +287,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         assert !bytecode.hasSequence(['INVOKEDYNAMIC cast(LA$B;)Z'])
     }
 
+    @Test
     void testNoGroovyTruthOptimizationForPublicInnerClass() {
         def bytecode = compile(method:'m', '''
             class A {
@@ -296,6 +313,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
     }
 
     // GROOVY-10711
+    @Test
     void testNoGroovyTruthOptimizationIfProvidesAsBoolean() {
         def bytecode = compile(method:'m', '''
             @groovy.transform.CompileStatic
@@ -323,6 +341,7 @@ final class StaticCompileNullCompareOptimizationTest 
extends AbstractBytecodeTes
         ])
     }
 
+    @Test
     void testCompare() {
         assertScript '''
             class Pogo {
diff --git 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilePostfixPrefixTest.groovy
 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilePostfixPrefixTest.groovy
index d19651603d..b1c20662e2 100644
--- 
a/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilePostfixPrefixTest.groovy
+++ 
b/src/test/groovy/org/codehaus/groovy/classgen/asm/sc/StaticCompilePostfixPrefixTest.groovy
@@ -19,8 +19,11 @@
 package org.codehaus.groovy.classgen.asm.sc
 
 import org.codehaus.groovy.classgen.asm.AbstractBytecodeTestCase
+import org.junit.jupiter.api.Test
 
-class StaticCompilePostfixPrefixTest extends AbstractBytecodeTestCase {
+final class StaticCompilePostfixPrefixTest extends AbstractBytecodeTestCase {
+
+    @Test
     void testPostfixOnInt() {
         def bytecode = compile([method:'m'], '''@groovy.transform.CompileStatic
             void m() {
@@ -44,6 +47,7 @@ class StaticCompilePostfixPrefixTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().m()
     }
 
+    @Test
     void testPostfixOnDate() {
         def bytecode = compile([method:'m'],'''@groovy.transform.CompileStatic
             void m() {
@@ -71,6 +75,7 @@ class StaticCompilePostfixPrefixTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().m()
     }
 
+    @Test
     void testPrefixOnInt() {
         def bytecode = compile([method:'m'],'''@groovy.transform.CompileStatic
          void m() {
@@ -93,6 +98,7 @@ class StaticCompilePostfixPrefixTest extends 
AbstractBytecodeTestCase {
         clazz.newInstance().m()
     }
 
+    @Test
     void testPrefixOnDate() {
         def bytecode = compile([method:'m'],'''@groovy.transform.CompileStatic
             void m() {
@@ -115,5 +121,4 @@ class StaticCompilePostfixPrefixTest extends 
AbstractBytecodeTestCase {
             }
         ''')
     }
-
 }

Reply via email to