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

afs pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit 47c10829b2c61373665f2cf7b149953f404c4f5d
Author: Andy Seaborne <[email protected]>
AuthorDate: Mon Sep 7 18:20:25 2026 +0100

    GH-3236: Convert jena.assembler to JUnit6
---
 .../apache/jena/assembler/AssemblerTestBase.java   |  9 +--
 .../{TS3_Assembler.java => TS6_Assembler.java}     | 61 +++++++++---------
 .../apache/jena/assembler/TestAssemblerGroup.java  | 23 +++++--
 .../jena/assembler/TestAssemblerGroupTracing.java  |  8 ++-
 .../apache/jena/assembler/TestAssemblerHelp.java   | 21 +++++-
 .../jena/assembler/TestAssemblerVocabulary.java    | 16 +++--
 .../jena/assembler/TestBuiltinAssemblerGroup.java  | 11 +++-
 .../jena/assembler/TestContentAssembler.java       | 34 ++++++++--
 .../jena/assembler/TestDefaultModelAssembler.java  |  9 ++-
 .../assembler/TestDocumentManagerAssembler.java    | 14 +++-
 .../apache/jena/assembler/TestImportManager.java   | 14 +++-
 .../jena/assembler/TestInfModelAssembler.java      | 15 ++++-
 .../jena/assembler/TestMemoryModelAssembler.java   |  9 ++-
 .../java/org/apache/jena/assembler/TestMode.java   |  6 +-
 .../apache/jena/assembler/TestModelAssembler.java  | 10 +--
 .../apache/jena/assembler/TestModelContent.java    | 15 ++++-
 .../apache/jena/assembler/TestModelExpansion.java  | 21 ++++--
 .../jena/assembler/TestOntModelAcceptance.java     |  8 ++-
 .../jena/assembler/TestOntModelAssembler.java      | 74 +++++++++++-----------
 .../jena/assembler/TestOntModelSpecAssembler.java  | 67 ++++++++++----------
 .../jena/assembler/TestPrefixMappingAssembler.java | 12 +++-
 .../assembler/TestReasonerFactoryAssembler.java    | 21 ++++--
 .../org/apache/jena/assembler/TestRuleSet.java     | 13 +++-
 .../jena/assembler/TestRuleSetAssembler.java       | 15 ++++-
 .../jena/assembler/TestUnionModelAssembler.java    | 13 +++-
 25 files changed, 338 insertions(+), 181 deletions(-)

diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/AssemblerTestBase.java 
b/jena-core/src/test/java/org/apache/jena/assembler/AssemblerTestBase.java
index 20e531d19c..a3f72f0468 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/AssemblerTestBase.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/AssemblerTestBase.java
@@ -21,7 +21,8 @@
 
 package org.apache.jena.assembler;
 
-import junit.framework.TestCase;
+import static org.junit.jupiter.api.Assertions.*;
+
 import org.apache.jena.assembler.assemblers.AssemblerBase;
 import org.apache.jena.assembler.exceptions.CannotConstructException;
 import org.apache.jena.rdf.model.Model;
@@ -40,7 +41,7 @@ import org.apache.jena.vocabulary.RDFS;
  * in subclasses to control the parser that is used to construct models and the
  * prefixes added to the model (these features added for Eyeball).
  */
-public class AssemblerTestBase extends TestCase {
+public class AssemblerTestBase {
 
     protected Class<? extends Assembler> getAssemblerClass() {
         throw new BrokenException("this class must define getAssemblerClass");
@@ -89,10 +90,6 @@ public class AssemblerTestBase extends TestCase {
 
     protected static final Model schema = JA.getSchema();
 
-    public AssemblerTestBase(String name) {
-        super(name);
-    }
-
     protected Model model(String string) {
         Model result = ModelTestLib.createModel();
         setRequiredPrefixes(result);
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TS3_Assembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TS6_Assembler.java
similarity index 50%
rename from jena-core/src/test/java/org/apache/jena/assembler/TS3_Assembler.java
rename to jena-core/src/test/java/org/apache/jena/assembler/TS6_Assembler.java
index 174aba1e4a..d9d270b3e3 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TS3_Assembler.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TS6_Assembler.java
@@ -21,39 +21,42 @@
 
 package org.apache.jena.assembler;
 
-import org.junit.runner.RunWith;
-import org.junit.runners.Suite;
+import org.junit.platform.suite.api.BeforeSuite;
+import org.junit.platform.suite.api.SelectClasses;
+import org.junit.platform.suite.api.Suite;
 
-@RunWith(Suite.class)
[email protected]( {
-    // Convert to JUnit5
-    TestMode.class,
+import org.apache.jena.test.JenaTestLib;
 
-    // JUnit3
+@Suite
+@SelectClasses({
+    TestMode.class,
     TestModelExpansion.class,
     TestImportManager.class,
     TestOntModelAcceptance.class,
-
-//    // Was "TestAssemblers" : 19
-     TestRuleSet.class ,
-     TestAssemblerHelp.class ,
-     TestDefaultModelAssembler.class ,
-     TestMemoryModelAssembler.class ,
-     TestAssemblerVocabulary.class ,
-     TestRuleSetAssembler.class ,
-     TestInfModelAssembler.class ,
-     TestAssemblerGroup.class ,
-     TestAssemblerGroupTracing.class ,
-     TestReasonerFactoryAssembler.class ,
-     TestContentAssembler.class ,
-     TestModelContent.class ,
-     TestUnionModelAssembler.class ,
-     TestPrefixMappingAssembler.class ,
-     TestBuiltinAssemblerGroup.class ,
-     TestModelAssembler.class ,
-     TestDocumentManagerAssembler.class,
-     TestOntModelSpecAssembler.class,
-     TestOntModelAssembler.class
+    TestRuleSet.class,
+    TestAssemblerHelp.class,
+    TestDefaultModelAssembler.class,
+    TestMemoryModelAssembler.class,
+    TestAssemblerVocabulary.class,
+    TestRuleSetAssembler.class,
+    TestInfModelAssembler.class,
+    TestAssemblerGroup.class,
+    TestAssemblerGroupTracing.class,
+    TestReasonerFactoryAssembler.class,
+    TestContentAssembler.class,
+    TestModelContent.class,
+    TestUnionModelAssembler.class,
+    TestPrefixMappingAssembler.class,
+    TestBuiltinAssemblerGroup.class,
+    TestModelAssembler.class,
+    TestDocumentManagerAssembler.class,
+    TestOntModelSpecAssembler.class,
+    TestOntModelAssembler.class
 })
 
-public class TS3_Assembler {}
+public class TS6_Assembler {
+    @BeforeSuite
+    public static void beforeSuite() {
+        JenaTestLib.setup();
+    }
+}
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroup.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroup.java
index 265377cecc..c802fe20a1 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroup.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroup.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.AssemblerBase;
 import org.apache.jena.assembler.assemblers.AssemblerGroup;
 import 
org.apache.jena.assembler.assemblers.AssemblerGroup.ExpandingAssemblerGroup;
@@ -36,15 +40,13 @@ import org.apache.jena.test.JenaTestLib;
 import org.apache.jena.vocabulary.RDFS;
 
 public class TestAssemblerGroup extends AssemblerTestBase {
-    public TestAssemblerGroup(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return AssemblerGroup.class;
     }
 
+    @Test
     public void testEmptyAssemblerGroup() {
         AssemblerGroup a = AssemblerGroup.create();
         JenaTestLib.assertInstanceOf(AssemblerGroup.class, a);
@@ -70,15 +72,16 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testLoadsClasses() {
         AssemblerGroup a = AssemblerGroup.create();
         a.implementWith(ModelTestLib.resource("T"), new MockAssembler());
         Resource root = resourceInModel("x rdf:type T; _c ja:loadClass '" + 
TestAssemblerGroup.class.getName() + "$Trivial'");
         // In case already loaded.
         loaded = false;
-        assertFalse("something has pre-loaded Trivial, so we can't test if it 
gets loaded", loaded);
+        assertFalse(loaded, "something has pre-loaded Trivial, so we can't 
test if it gets loaded");
         assertEquals("mockmockmock", a.open(root));
-        assertTrue("the assembler group did not obey the ja:loadClass 
directive", loaded);
+        assertTrue(loaded, "the assembler group did not obey the ja:loadClass 
directive");
     }
 
     static class MockAssembler extends AssemblerBase {
@@ -88,6 +91,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testSingletonAssemblerGroup() {
         AssemblerGroup a = AssemblerGroup.create();
         assertSame(a, a.implementWith(JA.InfModel, Assembler.infModel));
@@ -95,6 +99,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         checkFailsType(a, "js:DefaultModel");
     }
 
+    @Test
     public void testMultipleAssemblerGroup() {
         AssemblerGroup a = AssemblerGroup.create();
         assertSame(a, a.implementWith(JA.InfModel, Assembler.infModel));
@@ -104,6 +109,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         checkFailsType(a, "js:DefaultModel");
     }
 
+    @Test
     public void testImpliedType() {
         AssemblerGroup a = AssemblerGroup.create();
         Resource root = resourceInModel("x ja:reasoner y");
@@ -112,6 +118,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         assertSame(expected, a.open(root));
     }
 
+    @Test
     public void testBuiltinGroup() {
         AssemblerGroup g = Assembler.general();
         JenaTestLib.assertInstanceOf(Model.class, g.open(resourceInModel("x 
rdf:type ja:DefaultModel")));
@@ -126,6 +133,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         }
     };
 
+    @Test
     public void testAddingImplAddsSubclass() {
         final Model[] fullModel = new Model[1];
         AssemblerGroup g = new AssemblerGroup.ExpandingAssemblerGroup() {
@@ -149,6 +157,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testClassesLoadedBeforeAddingTypes() {
         String className = ImplementsSPOO.class.getName();
         Resource root = resourceInModel("_root rdf:type ja:MemoryModel; _x 
ja:loadClass '" + className + "'");
@@ -166,13 +175,14 @@ public class TestAssemblerGroup extends AssemblerTestBase 
{
             fail("expected a Model, but got a " + object.getClass());
     }
 
+    @Test
     public void testPassesSelfIn() {
         final AssemblerGroup group = AssemblerGroup.create();
         final Object result = new Object();
         Assembler fake = new AssemblerBase() {
             @Override
             public Object open(Assembler a, Resource root, Mode irrelevant) {
-                assertSame("nested call should pass in assembler group:", 
group, a);
+                assertSame(group, a, "nested call should pass in assembler 
group:");
                 return result;
             }
         };
@@ -180,6 +190,7 @@ public class TestAssemblerGroup extends AssemblerTestBase {
         assertSame(result, group.open(resourceInModel("x rdf:type 
ja:Object")));
     }
 
+    @Test
     public void testCopyPreservesMapping() {
         AssemblerGroup initial = 
AssemblerGroup.create().implementWith(JA.InfModel, new InfModelAssembler());
         AssemblerGroup copy = initial.copy();
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroupTracing.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroupTracing.java
index ba2da9f15d..5e1be18965 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroupTracing.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerGroupTracing.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.*;
 import org.apache.jena.assembler.exceptions.AssemblerException;
 import org.apache.jena.rdf.model.ModelTestLib;
@@ -29,10 +33,8 @@ import org.apache.jena.shared.JenaException;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestAssemblerGroupTracing extends AssemblerTestBase {
-    public TestAssemblerGroupTracing(String name) {
-        super(name);
-    }
 
+    @Test
     public void testFail() {
         Resource root = resourceInModel("x rdf:type A");
         AssemblerGroup g = AssemblerGroup.create();
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerHelp.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerHelp.java
index 7641471a0f..04870a4b8b 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerHelp.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerHelp.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.assembler.assemblers.*;
@@ -31,15 +35,13 @@ import org.apache.jena.test.JenaTestLib;
 import org.apache.jena.vocabulary.RDF;
 
 public class TestAssemblerHelp extends AssemblerTestBase {
-    public TestAssemblerHelp(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         throw new BrokenException("TestAssemblers does not need this method");
     }
 
+    @Test
     public void testClosureFootprint() {
         Resource root = resourceInModel("x ja:reasoner y");
         Statement footprint = root.getModel().createStatement(JA.This, 
RDF.type, JA.Expanded);
@@ -48,6 +50,7 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         assertTrue(expanded.getModel().contains(footprint));
     }
 
+    @Test
     public void testFootprintPreventsClosure() {
         Resource root = resourceInModel("x ja:reasoner y; ja:this rdf:type 
ja:Expanded");
         Model original = model("").add(root.getModel());
@@ -56,11 +59,13 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(original, expanded.getModel());
     }
 
+    @Test
     public void testSpecificType() {
         testSpecificType("ja:NamedModel", "x ja:modelName 'name'");
         testSpecificType("ja:NamedModel", "x ja:modelName 'name'; x rdf:type 
irrelevant");
     }
 
+    @Test
     public void testFindSpecificTypes() {
         testFindSpecificTypes("", "x rdf:type A", "Top");
         testFindSpecificTypes("", "x rdf:type A; x rdf:type B", "Top");
@@ -78,30 +83,35 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         assertEquals(expected, answer);
     }
 
+    @Test
     public void testFindRootByExplicitType() {
         Model model = model("x rdf:type ja:Object; y rdf:type Irrelevant");
         Set<Resource> roots = AssemblerHelp.findAssemblerRoots(model);
         assertEquals(ModelTestLib.resourceSet("x"), roots);
     }
 
+    @Test
     public void testFindRootByImplicitType() {
         Model model = model("x ja:reificationMode ja:Standard");
         Set<Resource> roots = AssemblerHelp.findAssemblerRoots(model);
         assertEquals(ModelTestLib.resourceSet("x"), roots);
     }
 
+    @Test
     public void testFindMultipleRoots() {
         Model model = model("x rdf:type ja:Object; y ja:reificationMode 
ja:Minimal");
         Set<Resource> roots = AssemblerHelp.findAssemblerRoots(model);
         assertEquals(ModelTestLib.resourceSet("y x"), roots);
     }
 
+    @Test
     public void testFindRootsWithSpecifiedType() {
         Model model = model("x rdf:type ja:Model; y rdf:type ja:Object");
         Set<Resource> roots = AssemblerHelp.findAssemblerRoots(model, 
JA.Model);
         assertEquals(ModelTestLib.resourceSet("x"), roots);
     }
 
+    @Test
     public void testThrowsIfNoRoots() {
         try {
             AssemblerHelp.singleModelRoot(model(""));
@@ -111,6 +121,7 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testThrowsIfManyRoots() {
         try {
             AssemblerHelp.singleModelRoot(model("a rdf:type ja:Model; b 
rdf:type ja:Model"));
@@ -120,11 +131,13 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testExtractsSingleRoot() {
         Resource it = AssemblerHelp.singleModelRoot(model("a rdf:type 
ja:Model"));
         assertEquals(ModelTestLib.resource("a"), it);
     }
 
+    @Test
     public void testSpecificTypeFails() {
         try {
             testSpecificType("xxx", "x rdf:type ja:Model; x rdf:type 
ja:PrefixMapping");
@@ -191,6 +204,7 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testClassAssociation() {
         String className = "org.apache.jena.assembler.TestAssemblerHelp$Imp";
         AssemblerGroup group = AssemblerGroup.create();
@@ -204,6 +218,7 @@ public class TestAssemblerHelp extends AssemblerTestBase {
         assertEquals(className, 
group.assemblerFor(ModelTestLib.resource("eh:Wossname")).getClass().getName());
     }
 
+    @Test
     public void testClassResourceConstructor() {
         AssemblerGroup group = AssemblerGroup.create();
         Model m = model("eh:Wossname ja:assembler 
'org.apache.jena.assembler.TestAssemblerHelp$Gremlin'");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerVocabulary.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerVocabulary.java
index f42cdc421f..8c53718753 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerVocabulary.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestAssemblerVocabulary.java
@@ -21,18 +21,20 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.rdf.model.*;
 
 public class TestAssemblerVocabulary extends AssemblerTestBase {
-    public TestAssemblerVocabulary(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return null;
     }
 
+    @Test
     public void testVocabulary() {
         assertEquals("http://jena.hpl.hp.com/2005/11/Assembler#";, JA.getURI());
         assertEquals("http://jena.hpl.hp.com/2005/11/Assembler#";, JA.uri);
@@ -88,6 +90,7 @@ public class TestAssemblerVocabulary extends 
AssemblerTestBase {
         assertEquals(JA.uri + local, resource.getURI());
     }
 
+    @Test
     public void testObjectTypes() {
         assertSubclassOf(JA.Model, JA.Object);
         assertSubclassOf(JA.PrefixMapping, JA.Object);
@@ -97,6 +100,7 @@ public class TestAssemblerVocabulary extends 
AssemblerTestBase {
         assertSubclassOf(JA.ReasonerFactory, JA.Object);
     }
 
+    @Test
     public void testModelTypes() {
         assertSubclassOf(JA.MemoryModel, JA.Model);
         assertSubclassOf(JA.DefaultModel, JA.Model);
@@ -104,16 +108,18 @@ public class TestAssemblerVocabulary extends 
AssemblerTestBase {
         assertSubclassOf(JA.OntModel, JA.InfModel);
         assertSubclassOf(JA.NamedModel, JA.Model);
         assertSubclassOf(JA.FileModel, JA.NamedModel);
-        // assertSubclassOf( JA.OntModelSpec, JA.ReasonerFactory );
+        // assertSubclassOf(JA.OntModelSpec, JA.ReasonerFactory );
     }
 
+    @Test
     public void testInfModelProperties() {
         assertDomain(JA.InfModel, JA.baseModel);
         assertDomain(JA.InfModel, JA.reasoner);
     }
 
+    @Test
     public void testOntModelProperties() {
         assertDomain(JA.OntModel, JA.ontModelSpec);
-        // assertRange( JA.ReasonerFactory, JA.reasonerURL );
+        // assertRange(JA.ReasonerFactory, JA.reasonerURL );
     }
 }
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestBuiltinAssemblerGroup.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestBuiltinAssemblerGroup.java
index 80679c36bd..2ad314ca80 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestBuiltinAssemblerGroup.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestBuiltinAssemblerGroup.java
@@ -21,15 +21,16 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.*;
 import org.apache.jena.rdf.model.Resource;
 import org.apache.jena.shared.PrefixMapping;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestBuiltinAssemblerGroup extends AssemblerTestBase {
-    public TestBuiltinAssemblerGroup(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
@@ -37,6 +38,7 @@ public class TestBuiltinAssemblerGroup extends 
AssemblerTestBase {
     }
 
     @SuppressWarnings("removal")
+    @Test
     public void testGeneralRegistration() {
         assertAssemblerClass(JA.DefaultModel, DefaultModelAssembler.class);
         assertAssemblerClass(JA.PrefixMapping, PrefixMappingAssembler.class);
@@ -54,6 +56,7 @@ public class TestBuiltinAssemblerGroup extends 
AssemblerTestBase {
     }
 
     @SuppressWarnings("removal")
+    @Test
     public void testVariables() {
         JenaTestLib.assertInstanceOf(DefaultModelAssembler.class, 
Assembler.defaultModel);
         JenaTestLib.assertInstanceOf(PrefixMappingAssembler.class, 
Assembler.prefixMapping);
@@ -68,12 +71,14 @@ public class TestBuiltinAssemblerGroup extends 
AssemblerTestBase {
         JenaTestLib.assertInstanceOf(UnionModelAssembler.class, 
Assembler.unionModel);
     }
 
+    @Test
     public void testRecognisesAndAssemblesSinglePrefixMapping() {
         PrefixMapping wanted = PrefixMapping.Factory.create().setNsPrefix("P", 
"spoo:/");
         Resource r = resourceInModel("x ja:prefix 'P'; x ja:namespace 
'spoo:/'");
         assertEquals(wanted, Assembler.general().open(r));
     }
 
+    @Test
     public void testRecognisesAndAssemblesMultiplePrefixMappings() {
         PrefixMapping wanted = PrefixMapping.Factory.create().setNsPrefix("P", 
"spoo:/").setNsPrefix("Q", "flarn:/");
         Resource r = resourceInModel("x ja:includes y; x ja:includes z; y 
ja:prefix 'P'; y ja:namespace 'spoo:/'; z ja:prefix 'Q'; z ja:namespace 
'flarn:/'");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestContentAssembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestContentAssembler.java
index 7deb02116a..ee0dbbfe19 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestContentAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestContentAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.ContentAssembler;
 import org.apache.jena.assembler.exceptions.UnknownEncodingException;
 import org.apache.jena.rdf.model.*;
@@ -29,25 +33,24 @@ import org.apache.jena.util.*;
 public class TestContentAssembler extends AssemblerTestBase {
     protected static String Testing = "testing/assemblers";
 
-    public TestContentAssembler(String name) {
-        super(name);
-    }
-
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return ContentAssembler.class;
     }
 
+    @Test
     public void testContentAssemblerType() {
         testDemandsMinimalType(new ContentAssembler(), JA.Content);
     }
 
+    @Test
     public void testContentVocabulary() {
         assertSubclassOf(JA.Content, JA.HasFileManager);
         assertSubclassOf(JA.ContentItem, JA.Content);
-        // assertSubclassOf( JA.LiteralContent, JA.Content );
+        // assertSubclassOf(JA.LiteralContent, JA.Content );
     }
 
+    @Test
     public void testContent() {
         Assembler a = new ContentAssembler();
         Content c = (Content)a.open(resourceInModel("x rdf:type ja:Content"));
@@ -57,6 +60,7 @@ public class TestContentAssembler extends AssemblerTestBase {
         assertEquals(0, m.size());
     }
 
+    @Test
     public void testMultipleLiteralsWorks() {
         Assembler a = new ContentAssembler();
         String A = "<eh:/A> a <eh:/Type>.".replaceAll(" ", "\\\\s");
@@ -67,6 +71,7 @@ public class TestContentAssembler extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("Type rdf:type rdfs:Class; A 
rdf:type Type"), C.fill(model("")));
     }
 
+    @Test
     public void testN3StringContentSingleTriples() {
         testStringContent("_x rdf:value '17'xsd:integer", "_:x rdf:value 17 
.");
         testStringContent("_x rdf:value '42'xsd:integer", "_:x rdf:value 42 
.");
@@ -76,10 +81,12 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         testStringContent("_x dc:title 'A\\sTitle'", "_:x dc:title 'A Title' 
.");
     }
 
+    @Test
     public void testN3StringContentMultipleTriples() {
         testStringContent("x rdf:value 5; y owl:sameAs x", "<eh:/x> rdf:value 
5 . <eh:/y> owl:sameAs <eh:/x> .");
     }
 
+    @Test
     public void testRDFXMLContent() {
         Assembler a = new ContentAssembler();
         String Stuff = "<owl:Class></owl:Class>".replaceAll(" ", "\\\\s");
@@ -89,6 +96,7 @@ public class TestContentAssembler extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("_x rdf:type owl:Class"), 
c.fill(model("")));
     }
 
+    @Test
     public void testSingleExternalContent() {
         Assembler a = new ContentAssembler();
         String source = Testing + "/schema.n3";
@@ -97,6 +105,7 @@ public class TestContentAssembler extends AssemblerTestBase {
         
ModelTestLib.assertIsoModels(FileManager.getInternal().loadModelInternal("file:"
 + source), c.fill(model("")));
     }
 
+    @Test
     public void testMultipleExternalContent() {
         Assembler a = new ContentAssembler();
         String sourceA = Testing + "/schema.n3";
@@ -109,6 +118,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(wanted, c.fill(model("")));
     }
 
+    @Test
     public void testIndirectContent() {
         Assembler a = new ContentAssembler();
         Resource root = resourceInModel("x rdf:type ja:Content; x ja:content 
y" + "; y rdf:type ja:Content; y ja:content z"
@@ -118,6 +128,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(wanted, c.fill(model("")));
     }
 
+    @Test
     public void testTrapsBadEncodings() {
         Assembler a = new ContentAssembler();
         Resource root = resourceInModel("x rdf:type ja:Content; x 
ja:contentEncoding 'bogus'; x ja:literalContent 'sham'");
@@ -130,6 +141,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         }
     }
 
+    @Test
     public void testContentTrapsBadObjects() {
         testContentTrapsBadObjects("ja:content", "17");
         // testContentTrapsBadObjects( "ja:externalContent", "17" );
@@ -152,6 +164,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         }
     }
 
+    @Test
     public void testMixedContent() {
         Assembler a = new ContentAssembler();
         String source = Testing + "/schema.n3";
@@ -163,6 +176,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(wanted, c.fill(model("")));
     }
 
+    @Test
     public void testSingleContentQuotation() {
         Assembler a = new ContentAssembler();
         Resource root = resourceInModel("c rdf:type ja:Content; c rdf:type 
ja:QuotedContent; c ja:quotedContent x; x P A; x Q B");
@@ -170,6 +184,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(model("x P A; x Q B"), c.fill(model("")));
     }
 
+    @Test
     public void testMultipleContentQuotation() {
         Assembler a = new ContentAssembler();
         Resource root = resourceInModel("c rdf:type ja:Content; c rdf:type 
ja:QuotedContent; c ja:quotedContent x"
@@ -178,6 +193,7 @@ public class TestContentAssembler extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(model("x P A; x Q B; y R C"), 
c.fill(model("")));
     }
 
+    @Test
     public void testContentLoadsPrefixMappings() {
         Assembler a = new ContentAssembler();
         String content = "@prefix foo: <eh:/foo#>. <eh:/eggs> rdf:type 
rdf:Property.".replaceAll(" ", "\\\\s");
@@ -200,16 +216,19 @@ public class TestContentAssembler extends 
AssemblerTestBase {
 
     /* -- ContentAssembler FileManager tests 
---------------------------------- */
 
+    @Test
     public void testContentAssemblerHasNoDefaultFileManager() {
-        assertNull("by default, ContentAssemblers have no FileManager", new 
ContentAssembler().getFileManager());
+        assertNull(new ContentAssembler().getFileManager(), "by default, 
ContentAssemblers have no FileManager");
     }
 
+    @Test
     public void testContentAssemblerHasSuppliedFileManager() {
         @SuppressWarnings("deprecation")
         FileManager fm = FileManager.create();
         assertSame(fm, new ContentAssembler(fm).getFileManager());
     }
 
+    @Test
     public void testUsesSuppliedFileManager() {
         final boolean[] used = {false};
         FileManager fm = new FileManagerImpl() {
@@ -224,9 +243,10 @@ public class TestContentAssembler extends 
AssemblerTestBase {
         Resource root = resourceInModel("x rdf:type ja:Content; x rdf:type 
ja:ExternalContent; x ja:externalContent file:" + source);
         Content c = (Content)a.open(root);
         
ModelTestLib.assertIsoModels(FileManager.getInternal().loadModelInternal("file:"
 + source), c.fill(model("")));
-        assertTrue("the supplied file manager must have been used", used[0]);
+        assertTrue(used[0], "the supplied file manager must have been used");
     }
 
+    @Test
     public void testContentAssemblerUsesFileManagerProperty() {
         Model expected = model("a P b");
         String fileName = "file:spoo";
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestDefaultModelAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestDefaultModelAssembler.java
index 31a803878c..944fc30b3a 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestDefaultModelAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestDefaultModelAssembler.java
@@ -21,25 +21,28 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.DefaultModelAssembler;
 import org.apache.jena.rdf.model.Model;
 
 public class TestDefaultModelAssembler extends AssemblerTestBase {
-    public TestDefaultModelAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return DefaultModelAssembler.class;
     }
 
+    @Test
     public void testDefaultModelAssembler() {
         Assembler a = Assembler.defaultModel;
         Model m = a.openModel(resourceInModel("x rdf:type ja:DefaultModel"));
         assertNotNull(m.getGraph());
     }
 
+    @Test
     public void testDefaultModelAssemblerType() {
         testDemandsMinimalType(Assembler.defaultModel, JA.DefaultModel);
     }
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestDocumentManagerAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestDocumentManagerAssembler.java
index 345a387a16..3820f72082 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestDocumentManagerAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestDocumentManagerAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.assembler.assemblers.DocumentManagerAssembler;
@@ -30,19 +34,18 @@ import org.apache.jena.test.JenaTestLib;
 import org.apache.jena.util.FileManager;
 
 public class TestDocumentManagerAssembler extends AssemblerTestBase {
-    public TestDocumentManagerAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return DocumentManagerAssembler.class;
     }
 
+    @Test
     public void testDocumentManagerAssemblerType() {
         testDemandsMinimalType(new DocumentManagerAssembler(), 
JA.DocumentManager);
     }
 
+    @Test
     public void testDocumentManagerVocabulary() {
         assertSubclassOf(JA.DocumentManager, JA.Object);
         assertSubclassOf(JA.DocumentManager, JA.HasFileManager);
@@ -50,6 +53,7 @@ public class TestDocumentManagerAssembler extends 
AssemblerTestBase {
         assertDomain(JA.DocumentManager, JA.policyPath);
     }
 
+    @Test
     public void testCreatesDocumentManager() {
         Resource root = resourceInModel("x rdf:type ja:DocumentManager");
         Assembler a = new DocumentManagerAssembler();
@@ -57,6 +61,7 @@ public class TestDocumentManagerAssembler extends 
AssemblerTestBase {
         JenaTestLib.assertInstanceOf(OntDocumentManager.class, x);
     }
 
+    @Test
     public void testUsesFileManager() {
         Resource root = resourceInModel("x rdf:type ja:DocumentManager; x 
ja:fileManager f");
         Assembler a = new DocumentManagerAssembler();
@@ -68,6 +73,7 @@ public class TestDocumentManagerAssembler extends 
AssemblerTestBase {
         assertSame(fm, ((OntDocumentManager)x).getFileManager());
     }
 
+    @Test
     public void testSetsPolicyPath() {
         Resource root = resourceInModel("x rdf:type ja:DocumentManager; x 
ja:policyPath 'somePath'");
         final List<String> history = new ArrayList<>();
@@ -88,6 +94,7 @@ public class TestDocumentManagerAssembler extends 
AssemblerTestBase {
         assertEquals(JenaTestLib.listOfOne("somePath"), history);
     }
 
+    @Test
     public void testTrapsPolicyPathNotString() {
         testTrapsBadPolicyPath("aResource");
         testTrapsBadPolicyPath("17");
@@ -107,6 +114,7 @@ public class TestDocumentManagerAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testSetsMetadata() { // we set policyPath to avoid Ont default 
models
                                      // being thrown at us
         Resource root = resourceInModel("x rdf:type ja:DocumentManager; x 
ja:policyPath ''; x P a; a Q b; y R z");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestImportManager.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestImportManager.java
index 88cf7b7305..83a4a8468f 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestImportManager.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestImportManager.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.graph.compose.MultiUnion;
@@ -31,9 +35,6 @@ import org.apache.jena.util.FileManager;
 import org.apache.jena.util.FileManagerImpl;
 
 public class TestImportManager extends AssemblerTestBase {
-    public TestImportManager(String name) {
-        super(name);
-    }
 
     static class FixedFileManager extends FileManagerImpl {
         Map<String, Model> map = new HashMap<>();
@@ -52,6 +53,7 @@ public class TestImportManager extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testFollowOwlImports() {
         final Model modelToLoad = model("this hasMarker B5");
         Model m = model("x ja:reasoner y; _x owl:imports eh:/loadMe");
@@ -61,6 +63,7 @@ public class TestImportManager extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(modelToLoad.union(m), m2);
     }
 
+    @Test
     public void testFollowJAImports() {
         final Model modelToLoad = model("this hasMarker B5");
         Model m = model("x ja:reasoner y; _x ja:imports eh:/loadMe");
@@ -70,6 +73,7 @@ public class TestImportManager extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(modelToLoad.union(m), m2);
     }
 
+    @Test
     public void testImportMayBeLiteral() {
         final Model modelToLoad = model("this hasMarker B5");
         Model m = model("x ja:reasoner y; _x ja:imports 'eh:/loadMe'");
@@ -79,6 +83,7 @@ public class TestImportManager extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(modelToLoad.union(m), m2);
     }
 
+    @Test
     public void testBadImportObjectFails() {
         testBadImportObjectFails("_bnode");
         testBadImportObjectFails("17");
@@ -98,6 +103,7 @@ public class TestImportManager extends AssemblerTestBase {
         }
     }
 
+    @Test
     public void testFollowOwlImportsDeeply() {
         final Model m1 = model("this hasMarker M1; _x owl:imports M2"), m2 = 
model("this hasMarker M2");
         Model m = model("x ja:reasoner y; _x owl:imports M1");
@@ -107,6 +113,7 @@ public class TestImportManager extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(m1.union(m2).union(m), result);
     }
 
+    @Test
     public void testCatchesCircularity() {
         final Model m1 = model("this hasMarker Mx; _x owl:imports My"), m2 = 
model("this hasMarker My; _x owl:imports Mx");
         FileManager fm = new FixedFileManager().add("eh:/Mx", 
m1).add("eh:/My", m2);
@@ -114,6 +121,7 @@ public class TestImportManager extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(m1.union(m2), result);
     }
 
+    @Test
     public void testCacheModels() {
         ImportManager im = new ImportManager();
         Model spec = model("_x owl:imports M1");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestInfModelAssembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestInfModelAssembler.java
index 586686b1d9..38278a6e76 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestInfModelAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestInfModelAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.InfModelAssembler;
 import org.apache.jena.assembler.exceptions.NotUniqueException;
 import org.apache.jena.rdf.model.*;
@@ -29,34 +33,36 @@ import 
org.apache.jena.reasoner.rulesys.GenericRuleReasonerFactory;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestInfModelAssembler extends AssemblerTestBase {
-    public TestInfModelAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return InfModelAssembler.class;
     }
 
+    @Test
     public void testLocationMapperAssemblerType() {
         testDemandsMinimalType(new InfModelAssembler(), JA.InfModel);
     }
 
+    @Test
     public void testMockReasonersDifferent() {
         Reasoner R = GenericRuleReasonerFactory.theInstance().create(null);
         assertNotSame(mockReasonerFactory(R), mockReasonerFactory(R));
     }
 
+    @Test
     public void testInfModel() {
         Assembler a = Assembler.infModel;
         Model m = a.openModel(resourceInModel("x rdf:type ja:InfModel"));
         JenaTestLib.assertInstanceOf(InfModel.class, m);
     }
 
+    @Test
     public void testInfModelType() {
         testDemandsMinimalType(Assembler.infModel, JA.InfModel);
     }
 
+    @Test
     public void testGetsReasoner() {
         Reasoner R = GenericRuleReasonerFactory.theInstance().create(null);
         final ReasonerFactory RF = mockReasonerFactory(R);
@@ -85,6 +91,7 @@ public class TestInfModelAssembler extends AssemblerTestBase {
         };
     }
 
+    @Test
     public void testGetsSpecifiedModel() {
         Model base = ModelFactory.createDefaultModel();
         Resource root = resourceInModel("x rdf:type ja:InfModel; x 
ja:baseModel M");
@@ -93,6 +100,7 @@ public class TestInfModelAssembler extends AssemblerTestBase 
{
         assertSame(base.getGraph(), inf.getRawModel().getGraph());
     }
 
+    @Test
     public void testDetectsMultipleBaseModels() {
         Model base = ModelFactory.createDefaultModel();
         Resource root = resourceInModel("x rdf:type ja:InfModel; x 
ja:baseModel M; x ja:baseModel M2");
@@ -106,6 +114,7 @@ public class TestInfModelAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testDetectsMultipleReasoners() {
         Resource root = resourceInModel("x rdf:type ja:InfModel; x ja:reasoner 
R; x ja:reasoner R2");
         Assembler mock = new FixedObjectAssembler(null);
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestMemoryModelAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestMemoryModelAssembler.java
index 518cb765be..727fe9b3d5 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestMemoryModelAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestMemoryModelAssembler.java
@@ -21,23 +21,26 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.MemoryModelAssembler;
 import org.apache.jena.rdf.model.Model;
 
 public class TestMemoryModelAssembler extends AssemblerTestBase {
-    public TestMemoryModelAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return MemoryModelAssembler.class;
     }
 
+    @Test
     public void testMemoryModelAssemblerType() {
         testDemandsMinimalType(new MemoryModelAssembler(), JA.MemoryModel);
     }
 
+    @Test
     public void testMemoryModelAssembler() {
         Assembler a = new MemoryModelAssembler();
         Model m = a.openModel(resourceInModel("x rdf:type ja:MemoryModel"));
diff --git a/jena-core/src/test/java/org/apache/jena/assembler/TestMode.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestMode.java
index 78a18093f4..77c59f0882 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestMode.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestMode.java
@@ -21,13 +21,11 @@
 
 package org.apache.jena.assembler;
 
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.*;
 
 import org.apache.jena.rdf.model.Resource;
 import org.apache.jena.rdf.model.ResourceFactory;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 public class TestMode {
 
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestModelAssembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestModelAssembler.java
index 70c840e842..d7e20c3f32 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestModelAssembler.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestModelAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.ContentAssembler;
 import org.apache.jena.assembler.assemblers.ModelAssembler;
 import org.apache.jena.rdf.model.Model;
@@ -37,21 +41,19 @@ public class TestModelAssembler extends AssemblerTestBase {
         }
     }
 
-    public TestModelAssembler(String name) {
-        super(name);
-    }
-
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return null;
     }
 
+    @Test
     public void testContent() {
         Resource root = resourceInModel("x rdf:type ja:DefaultModel; x 
ja:initialContent c; c ja:quotedContent A; A P B");
         Model m = (Model)new FakeModelAssembler().open(new ContentAssembler(), 
root, Mode.ANY);
         ModelTestLib.assertIsoModels(ModelTestLib.modelWithStatements("A P 
B"), m);
     }
 
+    @Test
     public void testGetsPrefixMappings() {
         Assembler a = new FakeModelAssembler();
         PrefixMapping wanted = 
PrefixMapping.Factory.create().setNsPrefix("my", 
"urn:secret:42/").setNsPrefix("your", "urn:public:17#");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestModelContent.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestModelContent.java
index 86cb8218d3..7ed230eb82 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestModelContent.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestModelContent.java
@@ -21,41 +21,48 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestModelContent extends AssemblerTestBase {
-    public TestModelContent(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return null;
     }
 
+    @Test
     public void testMemoryModelLoadsSingleContent() {
         testModelLoadsSingleContent(Assembler.memoryModel, JA.MemoryModel);
     }
 
+    @Test
     public void testMemoryModelLoadsMultipleContent() {
         testModelLoadsMultipleContent(Assembler.memoryModel, JA.MemoryModel);
     }
 
+    @Test
     public void testDefaultModelLoadsSingleContent() {
         testModelLoadsSingleContent(Assembler.defaultModel, JA.DefaultModel);
     }
 
+    @Test
     public void testDefaultModelLoadsMultipleContent() {
         testModelLoadsMultipleContent(Assembler.defaultModel, JA.DefaultModel);
     }
 
+    @Test
     public void testInfModelLoadsContent() {
         testModelLoadsMultipleContent(Assembler.infModel, JA.InfModel);
     }
 
+    @Test
     public void testContentTransactionsNone() {
         final List<String> history = new ArrayList<>();
         final Model expected = model("_x rdf:value '17'xsd:integer");
@@ -66,6 +73,7 @@ public class TestModelContent extends AssemblerTestBase {
         } catch (RuntimeException e) {}
     }
 
+    @Test
     public void testContentTransactionsCommit() {
         final List<String> history = new ArrayList<>();
         final Model expected = model("_x rdf:value '17'xsd:integer");
@@ -76,6 +84,7 @@ public class TestModelContent extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(expected, m);
     }
 
+    @Test
     public void testContentTransactionsAbort() {
         final List<String> history = new ArrayList<>();
         final Model expected = model("_x rdf:value '17'xsd:integer");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestModelExpansion.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestModelExpansion.java
index de32b13fc3..7f3acbe662 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestModelExpansion.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestModelExpansion.java
@@ -21,16 +21,18 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestModelExpansion extends AssemblerTestBase {
-    public TestModelExpansion(String name) {
-        super(name);
-    }
 
+    @Test
     public void testAddsSubclasses() {
         Model base = model("a R b");
         Model schema = model("x rdfs:subClassOf y; y P z");
@@ -38,6 +40,7 @@ public class TestModelExpansion extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("a R b; x rdfs:subClassOf y"), 
answer);
     }
 
+    @Test
     public void testOmitsAnonynousSubclasses() {
         Model base = model("a R b");
         Model schema = model("x rdfs:subClassOf _y; z rdfs:subClassOf _a");
@@ -45,6 +48,7 @@ public class TestModelExpansion extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("a R b"), answer);
     }
 
+    @Test
     public void testAddsDomainTypes() {
         Model base = model("a R b");
         Model schema = model("R rdfs:domain T");
@@ -52,6 +56,7 @@ public class TestModelExpansion extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("a R b; a rdf:type T"), answer);
     }
 
+    @Test
     public void testAddsRangeTypes() {
         Model base = model("a R b");
         Model schema = model("R rdfs:range T");
@@ -59,12 +64,14 @@ public class TestModelExpansion extends AssemblerTestBase {
         ModelTestLib.assertIsoModels(model("a R b; b rdf:type T"), answer);
     }
 
+    @Test
     public void testLabelsDontCrashExpansion() {
         Model base = ModelFactory.createRDFSModel(model("a R b; a rdfs:label 
'hello'"));
         Model schema = ModelFactory.createRDFSModel(model("R rdfs:range T"));
         Model answer = ModelExpansion.withSchema(base, schema);
     }
 
+    @Test
     public void testIntersection() {
         testIntersection("x rdf:type T; x rdf:type U", true, "T U");
         testIntersection("x rdf:type T; x rdf:type U", true, "T");
@@ -76,7 +83,7 @@ public class TestModelExpansion extends AssemblerTestBase {
         Model base = model(xTyped);
         Model schema = intersectionModel("I", intersectionTypes);
         Model answer = ModelExpansion.withSchema(base, schema);
-        assertEquals("should [not] infer (x rdf:type I)", infers, 
answer.contains(ModelTestLib.statement("x rdf:type I")));
+        assertEquals(infers, answer.contains(ModelTestLib.statement("x 
rdf:type I")), "should [not] infer (x rdf:type I)");
     }
 
     private Model intersectionModel(String inter, String types) {
@@ -96,6 +103,7 @@ public class TestModelExpansion extends AssemblerTestBase {
         return result.toString();
     }
 
+    @Test
     public void testAddsSupertypes() {
         Model base = model("a rdf:type T; T rdfs:subClassOf U");
         Model schema = model("T rdfs:subClassOf V");
@@ -103,18 +111,21 @@ public class TestModelExpansion extends AssemblerTestBase 
{
         ModelTestLib.assertIsoModels(model("a rdf:type T; a rdf:type U; a 
rdf:type V; T rdfs:subClassOf U; T rdfs:subClassOf V"), answer);
     }
 
+    @Test
     public void testSubclassClosureA() {
         Model m = model("A rdfs:subClassOf B; B rdfs:subClassOf C");
         subClassClosure(m);
         ModelTestLib.assertIsoModels(model("A rdfs:subClassOf B; B 
rdfs:subClassOf C; A rdfs:subClassOf C"), m);
     }
 
+    @Test
     public void testSubclassClosureB() {
         Model m = model("A rdfs:subClassOf B; B rdfs:subClassOf C; X 
rdfs:subClassOf C");
         subClassClosure(m);
         ModelTestLib.assertIsoModels(model("A rdfs:subClassOf B; B 
rdfs:subClassOf C; A rdfs:subClassOf C; X rdfs:subClassOf C"), m);
     }
 
+    @Test
     public void testSubclassClosureC() {
         Model m = model("A rdfs:subClassOf B; B rdfs:subClassOf C; X 
rdfs:subClassOf C; Y rdfs:subClassOf X");
         subClassClosure(m);
@@ -122,6 +133,7 @@ public class TestModelExpansion extends AssemblerTestBase {
                         m);
     }
 
+    @Test
     public void testSubclassClosureD() {
         Model m = model("A rdfs:subClassOf B; B rdfs:subClassOf C; X 
rdfs:subClassOf C; Y rdfs:subClassOf X; U rdfs:subClassOf A; U rdfs:subClassOf 
Y");
         subClassClosure(m);
@@ -129,6 +141,7 @@ public class TestModelExpansion extends AssemblerTestBase {
                         m);
     }
 
+    @Test
     public void testSubclassClosureE() {
         Model m = model("A rdfs:subClassOf B; B rdfs:subClassOf C");
         subClassClosure(m);
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAcceptance.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAcceptance.java
index 75dc384bdb..52394f11dd 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAcceptance.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAcceptance.java
@@ -21,14 +21,15 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.ontology.*;
 import org.apache.jena.rdf.model.*;
 
 @SuppressWarnings("removal")
 public class TestOntModelAcceptance extends AssemblerTestBase {
-    public TestOntModelAcceptance(String name) {
-        super(name);
-    }
 
     /**
      * Acceptance test inherited from ontology ModelSpec tests when ModelSpec 
went
@@ -36,6 +37,7 @@ public class TestOntModelAcceptance extends AssemblerTestBase 
{
      * some) reasoning. Probably unnecessary given the way the assembler unit 
test
      * suite works but belt-and-braces for now at least.
      */
+    @Test
     public void test_ijd_01() {
         Model m = ModelTestLib.modelWithStatements("x ja:ontModelSpec _o"
                                       + "; _o ja:reasonerFactory _f; _o 
ja:ontLanguage http://www.w3.org/2002/07/owl#";
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAssembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAssembler.java
index 658219a986..afd9a84d83 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelAssembler.java
@@ -21,10 +21,20 @@
 
 package org.apache.jena.assembler;
 
-import java.lang.reflect.Field;
+import static org.junit.jupiter.api.Assertions.*;
+
+import java.util.Arrays;
+import java.util.stream.Stream;
+
+import org.junit.jupiter.api.Named;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.List;
 
-import junit.framework.*;
 import org.apache.jena.assembler.assemblers.*;
 import org.apache.jena.ontology.*;
 import org.apache.jena.rdf.model.*;
@@ -32,54 +42,42 @@ import org.apache.jena.test.JenaTestLib;
 
 @SuppressWarnings("removal")
 public class TestOntModelAssembler extends AssemblerTestBase {
-    public TestOntModelAssembler(String name) {
-        super(name);
-    }
-
-    public static TestSuite suite() {
-        TestSuite result = new TestSuite();
-        result.addTestSuite(TestOntModelAssembler.class);
-        addParameterisedTests(result);
-        return result;
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return OntModelAssembler.class;
     }
 
+    @Test
     public void testOntModelAssemblerType() {
         testDemandsMinimalType(new OntModelAssembler(), JA.OntModel);
     }
 
-    protected static void addParameterisedTests(TestSuite result) {
-        Field[] fields = OntModelSpec.class.getFields();
-        for ( Field f : fields ) {
-            String name = f.getName();
-            if ( f.getType() == OntModelSpec.class ) {
-                try {
-                    result.addTest(createTest((OntModelSpec)f.get(null), 
name));
-                } catch (Exception e) {
-                    System.err.println("WARNING: failed to create test for 
OntModelSpec " + name);
-                }
-            }
-        }
+    /** One case per public {@code OntModelSpec} constant - was 
addParameterisedTests(). */
+    static Stream<Arguments> builtinSpecs() {
+        return Arrays.stream(OntModelSpec.class.getFields())
+                     .filter(f->f.getType() == OntModelSpec.class)
+                     .map(f->{
+                         try {
+                             return Arguments.of(Named.of(f.getName(), 
(OntModelSpec)f.get(null)), f.getName());
+                         } catch (IllegalAccessException e) {
+                             throw new RuntimeException(e);
+                         }
+                     });
     }
 
-    protected static Test createTest(final OntModelSpec spec, final String 
name) {
-        return new TestOntModelAssembler(name) {
-            @Override
-            public void runBare() {
-                Assembler a = new OntModelAssembler();
-                Model m = (Model)a.open(new FixedObjectAssembler(spec),
-                                        resourceInModel("x rdf:type 
ja:OntModel; x ja:ontModelSpec ja:" + name));
-                JenaTestLib.assertInstanceOf(OntModel.class, m);
-                OntModel om = (OntModel)m;
-                assertSame(spec, om.getSpecification());
-            }
-        };
+    @ParameterizedTest(name = "{0}")
+    @MethodSource("builtinSpecs")
+    public void testBuiltinSpec(OntModelSpec spec, String name) {
+        Assembler a = new OntModelAssembler();
+        Model m = (Model)a.open(new FixedObjectAssembler(spec),
+                                resourceInModel("x rdf:type ja:OntModel; x 
ja:ontModelSpec ja:" + name));
+        JenaTestLib.assertInstanceOf(OntModel.class, m);
+        OntModel om = (OntModel)m;
+        assertSame(spec, om.getSpecification());
     }
 
+    @Test
     public void testAllDefaults() {
         Assembler a = new OntModelAssembler();
         Model m = a.openModel(resourceInModel("x rdf:type ja:OntModel"));
@@ -88,6 +86,7 @@ public class TestOntModelAssembler extends AssemblerTestBase {
         assertSame(OntModelSpec.OWL_MEM_RDFS_INF, om.getSpecification());
     }
 
+    @Test
     public void testBaseModel() {
         final Model baseModel = model("a P b");
         Assembler a = new OntModelAssembler();
@@ -104,6 +103,7 @@ public class TestOntModelAssembler extends 
AssemblerTestBase {
         assertSame(baseModel.getGraph(), om.getBaseModel().getGraph());
     }
 
+    @Test
     public void testSubModels() {
         final Model baseModel = model("a P b");
         Assembler a = new OntModelAssembler();
@@ -122,6 +122,7 @@ public class TestOntModelAssembler extends 
AssemblerTestBase {
         assertSame(baseModel.getGraph(), 
subModels.get(0).getBaseModel().getGraph());
     }
 
+    @Test
     public void testDefaultDocumentManager() {
         Assembler a = new OntModelAssembler();
         Resource root = resourceInModel("x rdf:type ja:OntModel");
@@ -129,6 +130,7 @@ public class TestOntModelAssembler extends 
AssemblerTestBase {
         assertSame(OntDocumentManager.getInstance(), om.getDocumentManager());
     }
 
+    @Test
     public void testUsesOntModelSpec() {
         Assembler a = new OntModelAssembler();
         Resource root = resourceInModel("x rdf:type ja:OntModel; x 
ja:ontModelSpec y");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelSpecAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelSpecAssembler.java
index 8dde8d41c0..3ea95c7ef8 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelSpecAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestOntModelSpecAssembler.java
@@ -21,9 +21,18 @@
 
 package org.apache.jena.assembler;
 
-import java.lang.reflect.Field;
+import static org.junit.jupiter.api.Assertions.*;
+
+import java.util.Arrays;
+import java.util.stream.Stream;
+
+import org.junit.jupiter.api.Named;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+
+import org.junit.jupiter.api.Test;
 
-import junit.framework.*;
 import org.apache.jena.assembler.assemblers.*;
 import org.apache.jena.assembler.exceptions.ReasonerClashException;
 import org.apache.jena.ontology.*;
@@ -36,41 +45,33 @@ import org.apache.jena.test.JenaTestLib;
 
 @SuppressWarnings("removal")
 public class TestOntModelSpecAssembler extends AssemblerTestBase {
-    public TestOntModelSpecAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return OntModelSpecAssembler.class;
     }
 
+    @Test
     public void testOntModelSpecAssemblerType() {
         testDemandsMinimalType(new OntModelSpecAssembler(), JA.OntModelSpec);
     }
 
-    public static TestSuite suite() {
-        TestSuite result = new TestSuite();
-        result.addTestSuite(TestOntModelSpecAssembler.class);
-        addParameterisedTests(result);
-        return result;
+    /** One case per public {@code OntModelSpec} constant - was 
addParameterisedTests(). */
+    static Stream<Arguments> builtinSpecs() {
+        return Arrays.stream(OntModelSpec.class.getFields())
+                     .filter(f->f.getType() == OntModelSpec.class)
+                     .map(f->{
+                         try {
+                             return Arguments.of(Named.of(f.getName(), 
(OntModelSpec)f.get(null)), f.getName());
+                         } catch (IllegalAccessException e) {
+                             throw new RuntimeException(e);
+                         }
+                     });
     }
 
-    protected static void addParameterisedTests(TestSuite result) {
-        Field[] fields = OntModelSpec.class.getFields();
-        for ( Field f : fields ) {
-            String name = f.getName();
-            if ( f.getType() == OntModelSpec.class ) {
-                try {
-                    result.addTest(createTest((OntModelSpec)f.get(null), 
name));
-                } catch (Exception e) {
-                    System.err.println("WARNING: failed to create test for 
OntModelSpec " + name);
-                }
-            }
-        }
-    }
-
-    protected void testBuiltinSpec(OntModelSpec ontModelSpec, String specName) 
{
+    @ParameterizedTest(name = "{0}")
+    @MethodSource("builtinSpecs")
+    public void testBuiltinSpec(OntModelSpec ontModelSpec, String specName) {
         testBuiltinSpecAsRootName(ontModelSpec, specName);
         testBuiltinSpecAsLikeTarget(ontModelSpec, specName);
     }
@@ -85,21 +86,14 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         assertEquals(ontModelSpec, new OntModelSpecAssembler().open(root));
     }
 
-    protected static Test createTest(final OntModelSpec spec, final String 
name) {
-        return new TestOntModelSpecAssembler(name) {
-            @Override
-            public void runBare() {
-                testBuiltinSpec(spec, name);
-            }
-        };
-    }
-
+    @Test
     public void testOntModelSpecVocabulary() {
         assertDomain(JA.OntModelSpec, JA.ontLanguage);
         assertDomain(JA.OntModelSpec, JA.documentManager);
         assertDomain(JA.OntModelSpec, JA.likeBuiltinSpec);
     }
 
+    @Test
     public void testCreateFreshDocumentManager() {
         Assembler a = new OntModelSpecAssembler();
         Resource root = resourceInModel("x rdf:type ja:OntModelSpec; x 
ja:documentManager y");
@@ -109,6 +103,7 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         assertSame(dm, om.getDocumentManager());
     }
 
+    @Test
     public void testUseSpecifiedReasoner() {
         Assembler a = new OntModelSpecAssembler();
         Resource root = resourceInModel("x rdf:type ja:OntModelSpec; x 
ja:reasonerFactory R");
@@ -118,6 +113,7 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         assertSame(rf, om.getReasonerFactory());
     }
 
+    @Test
     public void testUseSpecifiedImpliedReasoner() {
         testUsedSpecifiedImpliedReasoner(OWLFBRuleReasonerFactory.URI);
         testUsedSpecifiedImpliedReasoner(RDFSRuleReasonerFactory.URI);
@@ -132,6 +128,7 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         assertSame(rf, om.getReasonerFactory());
     }
 
+    @Test
     public void testDetectsClashingImpliedAndExplicitReasoners() {
         Assembler a = new OntModelSpecAssembler();
         Resource root = resourceInModel("x rdf:type ja:OntModelSpec; x 
ja:reasonerURL R; x ja:reasonerFactory F");
@@ -144,6 +141,7 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testUseSpecifiedLanguage() {
         testSpecifiedLanguage(ProfileRegistry.OWL_DL_LANG);
         testSpecifiedLanguage(ProfileRegistry.OWL_LANG);
@@ -158,6 +156,7 @@ public class TestOntModelSpecAssembler extends 
AssemblerTestBase {
         assertEquals(lang, om.getLanguage());
     }
 
+    @Test
     public void testSpecifiedModelGetter() {
         Assembler a = new OntModelSpecAssembler();
         ModelGetter getter = new ModelGetter() {
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestPrefixMappingAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestPrefixMappingAssembler.java
index 8e3be099bc..70e4717564 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestPrefixMappingAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestPrefixMappingAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import org.apache.jena.assembler.assemblers.PrefixMappingAssembler;
 import org.apache.jena.rdf.model.Resource;
 import org.apache.jena.shared.PrefixMapping;
@@ -42,19 +46,18 @@ import org.apache.jena.test.JenaTestLib;
  */
 
 public class TestPrefixMappingAssembler extends AssemblerTestBase {
-    public TestPrefixMappingAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return PrefixMappingAssembler.class;
     }
 
+    @Test
     public void testPrefixMappingAssemblerType() {
         testDemandsMinimalType(new PrefixMappingAssembler(), JA.PrefixMapping);
     }
 
+    @Test
     public void testConstructEmptyPrefixMapping() {
         Assembler a = new PrefixMappingAssembler();
         Resource root = resourceInModel("pm rdf:type ja:PrefixMapping");
@@ -62,6 +65,7 @@ public class TestPrefixMappingAssembler extends 
AssemblerTestBase {
         JenaTestLib.assertInstanceOf(PrefixMapping.class, pm);
     }
 
+    @Test
     public void testSimplePrefixMapping() {
         PrefixMapping wanted = 
PrefixMapping.Factory.create().setNsPrefix("pre", "some:prefix/");
         Assembler a = new PrefixMappingAssembler();
@@ -70,6 +74,7 @@ public class TestPrefixMappingAssembler extends 
AssemblerTestBase {
         assertSamePrefixMapping(wanted, pm);
     }
 
+    @Test
     public void testIncludesSingleMapping() {
         PrefixMapping wanted = 
PrefixMapping.Factory.create().setNsPrefix("pre", "some:prefix/");
         Assembler a = new PrefixMappingAssembler();
@@ -79,6 +84,7 @@ public class TestPrefixMappingAssembler extends 
AssemblerTestBase {
         assertSamePrefixMapping(wanted, pm);
     }
 
+    @Test
     public void testIncludesMultipleMappings() {
         PrefixMapping wanted = 
PrefixMapping.Factory.create().setNsPrefix("p1", 
"some:prefix/").setNsPrefix("p2", "other:prefix/")
                                                     .setNsPrefix("p3", 
"simple:prefix#");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestReasonerFactoryAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestReasonerFactoryAssembler.java
index 025aa88341..c3d0925de6 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestReasonerFactoryAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestReasonerFactoryAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.ArrayList;
 import java.util.HashSet;
 
@@ -39,24 +43,23 @@ import org.apache.jena.test.JenaTestLib;
 public class TestReasonerFactoryAssembler extends AssemblerTestBase {
     private final Assembler ASSEMBLER = new ReasonerFactoryAssembler();
 
-    public TestReasonerFactoryAssembler(String name) {
-        super(name);
-    }
-
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return ReasonerFactoryAssembler.class;
     }
 
+    @Test
     public void testReasonerFactoryAssemblerType() {
         testDemandsMinimalType(new ReasonerFactoryAssembler(), 
JA.ReasonerFactory);
     }
 
+    @Test
     public void testCreateReasonerFactory() {
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory");
         JenaTestLib.assertInstanceOf(GenericRuleReasonerFactory.class, 
ASSEMBLER.open(root));
     }
 
+    @Test
     public void testStandardReasonerURLs() {
         testReasonerURL(GenericRuleReasonerFactory.class, 
GenericRuleReasonerFactory.URI);
         testReasonerURL(TransitiveReasonerFactory.class, 
TransitiveReasonerFactory.URI);
@@ -66,6 +69,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         testReasonerURL(OWLMiniReasonerFactory.class, 
OWLMiniReasonerFactory.URI);
     }
 
+    @Test
     public void testBadReasonerURLFails() {
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:reasonerURL bad:URL");
         try {
@@ -101,6 +105,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testReasonerClassThrowsIfClassNotFound() {
         String description = "x rdf:type ja:ReasonerFactory; x 
ja:reasonerClass java:noSuchClass";
         Resource root = resourceInModel(description);
@@ -112,6 +117,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testReasonerClassThrowsIfClassNotFactory() {
         String description = "x rdf:type ja:ReasonerFactory; x 
ja:reasonerClass java:java.util.ArrayList";
         Resource root = resourceInModel(description);
@@ -125,6 +131,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testReasonerClassUsesTheInstance() {
         String description = "x rdf:type ja:ReasonerFactory; x 
ja:reasonerClass java:";
         String MockName = MockFactory.class.getName();
@@ -132,6 +139,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         assertEquals(MockFactory.instance, ASSEMBLER.open(root));
     }
 
+    @Test
     public void testReasonerClassInstantiatesIfNoInstance() {
         String description = "x rdf:type ja:ReasonerFactory; x 
ja:reasonerClass java:";
         String MockName = MockBase.class.getName();
@@ -140,6 +148,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         assertNotSame(MockFactory.instance, ASSEMBLER.open(root));
     }
 
+    @Test
     public void testMultipleURLsFails() {
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:reasonerURL bad:URL; x ja:reasonerURL another:bad/URL");
         try {
@@ -151,6 +160,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testOnlyGenericReasonerCanHaveRules() {
         String url = TransitiveReasonerFactory.URI;
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:rule '[->(a\\sP\\sb)]'; x ja:reasonerURL " + url);
@@ -162,6 +172,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         } catch (CannotHaveRulesException e) {}
     }
 
+    @Test
     public void testSchema() {
         Model schema = model("P rdf:type owl:ObjectProperty");
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:schema S");
@@ -171,6 +182,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         GraphTestLib.assertIsomorphic(schema.getGraph(), 
((FBRuleReasoner)r).getBoundSchema());
     }
 
+    @Test
     public void testSingleRules() {
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:rules S");
         String ruleStringA = "[rdfs2:  (?x ?p ?y), (?p rdfs:domain ?c) -> (?x 
rdf:type ?c)]";
@@ -187,6 +199,7 @@ public class TestReasonerFactoryAssembler extends 
AssemblerTestBase {
         assertEquals(new HashSet<>(rules.getRules()), new 
HashSet<>(grr.getRules()));
     }
 
+    @Test
     public void testMultipleRules() {
         Resource root = resourceInModel("x rdf:type ja:ReasonerFactory; x 
ja:rules S; x ja:rules T");
         String ruleStringA = "[rdfs2:  (?x ?p ?y), (?p rdfs:domain ?c) -> (?x 
rdf:type ?c)]";
diff --git a/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSet.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSet.java
index 5ddea64a8c..be291a71e8 100644
--- a/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSet.java
+++ b/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSet.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.reasoner.rulesys.Rule;
@@ -28,26 +32,26 @@ import org.apache.jena.shared.BrokenException;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestRuleSet extends AssemblerTestBase {
-    public TestRuleSet(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         throw new BrokenException("TestAssemblers does not need this method");
     }
 
+    @Test
     public void testEmpty() {
         assertEquals(Collections.emptyList(), RuleSet.empty.getRules());
         assertEquals(RuleSet.empty, RuleSet.create(Collections.<Rule> 
emptyList()));
     }
 
+    @Test
     public void testEmptyRuleSet() {
         RuleSet s = RuleSet.create(Collections.<Rule> emptyList());
         assertEquals(Collections.emptyList(), s.getRules());
         assertNotSame(Collections.emptyList(), s.getRules());
     }
 
+    @Test
     public void testSingleRuleSet() {
         Rule rule = Rule.parseRule("[(?a P b) -> (?a rdf:type T)]");
         List<Rule> list = JenaTestLib.listOfOne(rule);
@@ -56,6 +60,7 @@ public class TestRuleSet extends AssemblerTestBase {
         assertNotSame(list, s.getRules());
     }
 
+    @Test
     public void testMultipleRuleSet() {
         Rule A = Rule.parseRule("[(?a P b) -> (?a rdf:type T)]");
         Rule B = Rule.parseRule("[(?a Q b) -> (?a rdf:type U)]");
@@ -65,12 +70,14 @@ public class TestRuleSet extends AssemblerTestBase {
         assertNotSame(rules, s.getRules());
     }
 
+    @Test
     public void testFactoryForString() {
         String ruleString = "[(?a P b) -> (?a rdf:type T)]";
         RuleSet s = RuleSet.create(ruleString);
         assertEquals(Rule.parseRules(ruleString), s.getRules());
     }
 
+    @Test
     public void testHashAndEquality() {
         String A = "[(?x breaks ?y) -> (?y brokenBy ?x)]";
         String B = "[(?a Q b) -> (?a rdf:type U)]";
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSetAssembler.java 
b/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSetAssembler.java
index 0f08877c6e..f11608c188 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSetAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestRuleSetAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.assembler.assemblers.RuleSetAssembler;
@@ -28,15 +32,13 @@ import org.apache.jena.rdf.model.*;
 import org.apache.jena.reasoner.rulesys.Rule;
 
 public class TestRuleSetAssembler extends AssemblerTestBase {
-    public TestRuleSetAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return RuleSetAssembler.class;
     }
 
+    @Test
     public void testRuleSetVocabulary() {
         assertSubclassOf(JA.RuleSet, JA.HasRules);
         assertDomain(JA.HasRules, JA.rule);
@@ -45,16 +47,19 @@ public class TestRuleSetAssembler extends AssemblerTestBase 
{
         assertRange(JA.RuleSet, JA.rules);
     }
 
+    @Test
     public void testRuleSetAssemblerType() {
         testDemandsMinimalType(new RuleSetAssembler(), JA.RuleSet);
     }
 
+    @Test
     public void testEmptyRuleSet() {
         Assembler a = new RuleSetAssembler();
         Resource root = resourceInModel("x rdf:type ja:RuleSet");
         assertEquals(RuleSet.empty, a.open(root));
     }
 
+    @Test
     public void testSingleRuleString() {
         Assembler a = new RuleSetAssembler();
         String ruleString = "[(?a P ?b) -> (?a Q ?b)]";
@@ -64,6 +69,7 @@ public class TestRuleSetAssembler extends AssemblerTestBase {
         assertEquals(expected, new HashSet<>(rules.getRules()));
     }
 
+    @Test
     public void testMultipleRuleStrings() {
         Assembler a = new RuleSetAssembler();
         String ruleStringA = "[(?a P ?b) -> (?a Q ?b)]";
@@ -76,6 +82,7 @@ public class TestRuleSetAssembler extends AssemblerTestBase {
         assertEquals(expected, new HashSet<>(rules.getRules()));
     }
 
+    @Test
     public void testRulesFrom() {
         Assembler a = new RuleSetAssembler();
         String rulesA = file("example.rules");
@@ -85,6 +92,7 @@ public class TestRuleSetAssembler extends AssemblerTestBase {
         assertEquals(expected, new HashSet<>(rules.getRules()));
     }
 
+    @Test
     public void testSubRules() {
         Assembler a = new RuleSetAssembler();
         String ruleStringA = "[(?a P ?b) -> (?a Q ?b)]";
@@ -95,6 +103,7 @@ public class TestRuleSetAssembler extends AssemblerTestBase {
         assertEquals(expected, new HashSet<>(rules.getRules()));
     }
 
+    @Test
     public void testTrapsBadRulesObject() {
         testTrapsBadRuleObject("ja:rules", "'y'");
         testTrapsBadRuleObject("ja:rulesFrom", "17");
diff --git 
a/jena-core/src/test/java/org/apache/jena/assembler/TestUnionModelAssembler.java
 
b/jena-core/src/test/java/org/apache/jena/assembler/TestUnionModelAssembler.java
index e86431f95c..b7a0b544e5 100644
--- 
a/jena-core/src/test/java/org/apache/jena/assembler/TestUnionModelAssembler.java
+++ 
b/jena-core/src/test/java/org/apache/jena/assembler/TestUnionModelAssembler.java
@@ -21,6 +21,10 @@
 
 package org.apache.jena.assembler;
 
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.Test;
+
 import java.util.*;
 
 import org.apache.jena.assembler.assemblers.*;
@@ -31,19 +35,18 @@ import org.apache.jena.shared.AddDeniedException;
 import org.apache.jena.test.JenaTestLib;
 
 public class TestUnionModelAssembler extends AssemblerTestBase {
-    public TestUnionModelAssembler(String name) {
-        super(name);
-    }
 
     @Override
     protected Class<? extends Assembler> getAssemblerClass() {
         return UnionModelAssembler.class;
     }
 
+    @Test
     public void testUnionModelAssemblerType() {
         testDemandsMinimalType(new UnionModelAssembler(), JA.UnionModel);
     }
 
+    @Test
     public void testUnionVocabulary() {
         assertSubclassOf(JA.UnionModel, JA.Model);
         assertDomain(JA.UnionModel, JA.subModel);
@@ -52,6 +55,7 @@ public class TestUnionModelAssembler extends 
AssemblerTestBase {
         assertRange(JA.Model, JA.rootModel);
     }
 
+    @Test
     public void testCreatesMultiUnion() {
         Resource root = resourceInModel("x rdf:type ja:UnionModel");
         Assembler a = new UnionModelAssembler();
@@ -88,6 +92,7 @@ public class TestUnionModelAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testCreatesUnionWithSubModels() {
         Resource root = resourceInModel("x rdf:type ja:UnionModel; x 
ja:subModel A; x ja:subModel B");
         Assembler a = new UnionModelAssembler();
@@ -104,6 +109,7 @@ public class TestUnionModelAssembler extends 
AssemblerTestBase {
         checkImmutable(m);
     }
 
+    @Test
     public void testSubModelsCheckObject() {
         Resource root = resourceInModel("x rdf:type ja:UnionModel; x 
ja:subModel 'A'");
         Assembler a = new UnionModelAssembler();
@@ -116,6 +122,7 @@ public class TestUnionModelAssembler extends 
AssemblerTestBase {
         }
     }
 
+    @Test
     public void testCreatesUnionWithBaseModel() {
         Resource root = resourceInModel("x rdf:type ja:UnionModel; x 
ja:subModel A; x ja:rootModel B");
         Assembler a = new UnionModelAssembler();

Reply via email to