You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2020/05/30 10:06:38 UTC

[maven-jxr] branch master updated: [JXR-154] xref-test package summary lists also classes from main source directories

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

rfscholte pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-jxr.git


The following commit(s) were added to refs/heads/master by this push:
     new 473e1b9  [JXR-154] xref-test package summary lists also classes from main source directories
473e1b9 is described below

commit 473e1b9bd9d38c703e48e69bcd17d126d1d9863d
Author: rfscholte <rf...@apache.org>
AuthorDate: Sat May 30 11:58:34 2020 +0200

    [JXR-154] xref-test package summary lists also classes from main source directories
---
 .../src/it/simple-project/verify.groovy            | 12 ++++++-
 .../apache/maven/plugin/jxr/AbstractJxrReport.java | 11 ++++--
 .../src/main/java/org/apache/maven/jxr/JXR.java    | 42 ++++++++--------------
 .../org/apache/maven/jxr/JavaCodeTransform.java    | 18 +++++-----
 .../org/apache/maven/jxr/pacman/FileManager.java   |  5 ---
 .../apache/maven/jxr/pacman/PackageManager.java    | 31 ++++++++--------
 .../org/apache/maven/jxr/DirectoryIndexerTest.java | 27 ++++++++------
 .../org/apache/maven/jxr/IncludeExcludeTest.java   | 27 +++++++-------
 .../test/java/org/apache/maven/jxr/JXR141Test.java | 28 ++++++++++-----
 .../apache/maven/jxr/JavaCodeTransformTest.java    | 23 ++++++------
 .../java/org/apache/maven/jxr/JxrBeanTest.java     | 26 +++++++-------
 11 files changed, 133 insertions(+), 117 deletions(-)

diff --git a/maven-jxr-plugin/src/it/simple-project/verify.groovy b/maven-jxr-plugin/src/it/simple-project/verify.groovy
index 4ad612d..0ef06fb 100644
--- a/maven-jxr-plugin/src/it/simple-project/verify.groovy
+++ b/maven-jxr-plugin/src/it/simple-project/verify.groovy
@@ -35,4 +35,14 @@ assert new File( basedir, 'target/site/xref-test/org/apache/maven/jxr/it/AppTest
 content = new File( basedir, 'target/site/xref/org/apache/maven/jxr/it/App.html' ).text;
 assert content.contains( 'App2.html' );
 
-return true;
\ No newline at end of file
+xrefPackageSummary = new File( basedir, 'target/site/xref/org/apache/maven/jxr/it/package-summary.html' ).text
+assert xrefPackageSummary.contains( 'App.html' )
+assert xrefPackageSummary.contains( 'App2.html' )
+assert !xrefPackageSummary.contains( 'AppTest.html' )
+
+testXrefPackageSummary = new File( basedir, 'target/site/xref-test/org/apache/maven/jxr/it/package-summary.html' ).text
+assert !testXrefPackageSummary.contains( 'App.html' )
+assert !testXrefPackageSummary.contains( 'App2.html' )
+assert testXrefPackageSummary.contains( 'AppTest.html' )
+
+return true;
diff --git a/maven-jxr-plugin/src/main/java/org/apache/maven/plugin/jxr/AbstractJxrReport.java b/maven-jxr-plugin/src/main/java/org/apache/maven/plugin/jxr/AbstractJxrReport.java
index 2f6586a..c0520cc 100644
--- a/maven-jxr-plugin/src/main/java/org/apache/maven/plugin/jxr/AbstractJxrReport.java
+++ b/maven-jxr-plugin/src/main/java/org/apache/maven/plugin/jxr/AbstractJxrReport.java
@@ -33,7 +33,10 @@ import java.util.ResourceBundle;
 
 import org.apache.maven.doxia.siterenderer.Renderer;
 import org.apache.maven.jxr.JXR;
+import org.apache.maven.jxr.JavaCodeTransform;
 import org.apache.maven.jxr.JxrException;
+import org.apache.maven.jxr.pacman.FileManager;
+import org.apache.maven.jxr.pacman.PackageManager;
 import org.apache.maven.model.ReportPlugin;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.Component;
@@ -163,9 +166,6 @@ public abstract class AbstractJxrReport
     @Parameter( property = "javadocVersion" )
     private String javadocVersion;
 
-    @Component
-    private JXR jxr;
-    
     /**
      * Version of the Javadoc templates to use.
      */
@@ -267,6 +267,11 @@ public abstract class AbstractJxrReport
     private void createXref( Locale locale, String destinationDirectory, List<String> sourceDirs )
         throws IOException, JxrException, MavenReportException
     {
+        FileManager fileManager = new FileManager();
+        PackageManager packageManager = new PackageManager( fileManager );
+        JavaCodeTransform codeTransform = new JavaCodeTransform( packageManager, fileManager );
+        
+        JXR jxr = new JXR( packageManager, codeTransform );
         jxr.setDest( Paths.get( destinationDirectory ) );
         if ( StringUtils.isEmpty( inputEncoding ) )
         {
diff --git a/maven-jxr/src/main/java/org/apache/maven/jxr/JXR.java b/maven-jxr/src/main/java/org/apache/maven/jxr/JXR.java
index a719ff0..5aeec74 100644
--- a/maven-jxr/src/main/java/org/apache/maven/jxr/JXR.java
+++ b/maven-jxr/src/main/java/org/apache/maven/jxr/JXR.java
@@ -20,9 +20,9 @@ package org.apache.maven.jxr;
  */
 
 import org.apache.maven.jxr.ant.DirectoryScanner;
-import org.apache.maven.jxr.pacman.FileManager;
 import org.apache.maven.jxr.pacman.PackageManager;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.nio.file.Path;
@@ -30,29 +30,22 @@ import java.nio.file.Paths;
 import java.util.List;
 import java.util.Locale;
 
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
 /**
  * Main entry point into Maven used to kick off the XReference code building.
  *
  * @author <a href="mailto:burton@apache.org">Kevin A. Burton</a>
- * @version $Id$
  */
-@Named
-@Singleton
-public class JXR extends AbstractLogEnabled
+public class JXR
 {
-    @Inject
-    private PackageManager pkgmgr;
+    private static final Logger LOGGER = LoggerFactory.getLogger( JXR.class );
+    
+    private final PackageManager pkgmgr;
 
     /**
      * Handles taking .java files and changing them into html. "More than meets
      * the eye!" :)
      */
-    @Inject
-    private JavaCodeTransform transformer;
+    private final JavaCodeTransform transformer;
     
     /**
      * The default list of include patterns to use.
@@ -90,6 +83,12 @@ public class JXR extends AbstractLogEnabled
      * The list of include patterns to use.
      */
     private String[] includes = DEFAULT_INCLUDES;
+    
+    public JXR( PackageManager pkgmgr, JavaCodeTransform transformer )
+    {
+        this.pkgmgr = pkgmgr;
+        this.transformer = transformer;
+    }
 
     /**
      * Now that we have instantiated everything. Process this JXR task.
@@ -193,14 +192,6 @@ public class JXR extends AbstractLogEnabled
     }
 
     /**
-     * @param transformer
-     */
-    public void setTransformer( JavaCodeTransform transformer )
-    {
-        this.transformer = transformer;
-    }
-
-    /**
      * @param revision
      */
     public void setRevision( String revision )
@@ -220,11 +211,6 @@ public class JXR extends AbstractLogEnabled
     public void xref( List<String> sourceDirs, String templateDir, String windowTitle, String docTitle, String bottom )
         throws IOException, JxrException
     {
-        // first collect package and class info
-        FileManager fileManager = new FileManager();
-        fileManager.setEncoding( inputEncoding );
-
-        
         pkgmgr.setExcludes( excludes );
         pkgmgr.setIncludes( includes );
 
@@ -263,7 +249,7 @@ public class JXR extends AbstractLogEnabled
     private void transform( Path sourceFile, Path destFile, String bottom )
         throws IOException
     {
-        getLogger().debug( sourceFile + " -> " + destFile );
+        LOGGER.debug( sourceFile + " -> " + destFile );
 
         // get a relative link to the javadocs
         Path javadoc = javadocLinkDir != null ? getRelativeLink( destFile.getParent(), javadocLinkDir ) : null;
diff --git a/maven-jxr/src/main/java/org/apache/maven/jxr/JavaCodeTransform.java b/maven-jxr/src/main/java/org/apache/maven/jxr/JavaCodeTransform.java
index 6f35d20..07e7fed 100644
--- a/maven-jxr/src/main/java/org/apache/maven/jxr/JavaCodeTransform.java
+++ b/maven-jxr/src/main/java/org/apache/maven/jxr/JavaCodeTransform.java
@@ -64,10 +64,6 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.Set;
 
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
 /**
  * Syntax highlights java by turning it into html. A codeviewer object is created and then keeps state as lines are
  * passed in. Each line passed in as java test, is returned as syntax highlighted html text. Users of the class can set
@@ -95,8 +91,6 @@ import javax.inject.Singleton;
  *                                  importFilter
  * </pre>
  */
-@Named
-@Singleton
 public class JavaCodeTransform
     implements Serializable
 {
@@ -213,14 +207,12 @@ public class JavaCodeTransform
     /**
      * Package Manager for this project.
      */
-    @Inject
-    private PackageManager packageManager;
+    private final PackageManager packageManager;
 
     /**
      * current file manager
      */
-    @Inject
-    private FileManager fileManager;
+    private final FileManager fileManager;
 
     {
         reservedWords.put( "abstract", "abstract" );
@@ -280,6 +272,12 @@ public class JavaCodeTransform
         reservedWords.put( "implements", "implements" );
     }
 
+    public JavaCodeTransform( PackageManager packageManager, FileManager fileManager )
+    {
+        this.packageManager = packageManager;
+        this.fileManager = fileManager;
+    }
+
     // ----------------------------------------------------------------------
     // public methods
     // ----------------------------------------------------------------------
diff --git a/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/FileManager.java b/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/FileManager.java
index 9f140b4..6f73616 100644
--- a/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/FileManager.java
+++ b/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/FileManager.java
@@ -24,9 +24,6 @@ import java.nio.file.Path;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.inject.Named;
-import javax.inject.Singleton;
-
 /**
  * <p>
  *
@@ -38,8 +35,6 @@ import javax.inject.Singleton;
  * Note. This assumes that the file will not be modified on disk while
  * Alexandria is running. </p>
  */
-@Named
-@Singleton
 public class FileManager
 {
     private Map<Path, JavaFile> files = new HashMap<>();
diff --git a/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/PackageManager.java b/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/PackageManager.java
index 3288dc2..c48dd5f 100644
--- a/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/PackageManager.java
+++ b/maven-jxr/src/main/java/org/apache/maven/jxr/pacman/PackageManager.java
@@ -19,8 +19,9 @@ package org.apache.maven.jxr.pacman;
  * under the License.
  */
 
-import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.util.DirectoryScanner;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.nio.file.Path;
@@ -30,20 +31,15 @@ import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
 /**
  * Given a list of directories, parse them out and store them as rendered
  * packages, classes, imports, etc.
  */
-@Named
-@Singleton
-public class PackageManager extends AbstractLogEnabled
+public class PackageManager
 {
-    @Inject
-    private FileManager fileManager;
+    private static final Logger LOGGER = LoggerFactory.getLogger( PackageManager.class );
+    
+    private final FileManager fileManager;
 
     private Set<Path> directories = new HashSet<>();
 
@@ -68,6 +64,11 @@ public class PackageManager extends AbstractLogEnabled
      */
     private String[] includes = { "**/*.java" };
 
+    public PackageManager( FileManager fileManager )
+    {
+        this.fileManager = fileManager;
+    }
+
     /**
      * Given the name of a package (Ex: org.apache.maven.util) obtain it from
      * the PackageManager
@@ -107,7 +108,7 @@ public class PackageManager extends AbstractLogEnabled
     {
         // Go through each directory and get the java source 
         // files for this dir.
-        getLogger().debug( "Scanning " + baseDir );
+        LOGGER.debug( "Scanning " + baseDir );
         DirectoryScanner directoryScanner = new DirectoryScanner();
         directoryScanner.setBasedir( baseDir.toFile() );
         directoryScanner.setExcludes( excludes );
@@ -116,7 +117,7 @@ public class PackageManager extends AbstractLogEnabled
 
         for ( String file : directoryScanner.getIncludedFiles() )
         {
-            getLogger().debug( "parsing... " + file );
+            LOGGER.debug( "parsing... " + file );
 
             //now parse out this file to get the packages/classname/etc
             try
@@ -170,16 +171,16 @@ public class PackageManager extends AbstractLogEnabled
     public void dump()
     {
 
-        getLogger().debug( "Dumping out PackageManager structure" );
+        LOGGER.debug( "Dumping out PackageManager structure" );
 
         for ( PackageType current  : getPackageTypes() )
         {
-            getLogger().debug( current.getName() );
+            LOGGER.debug( current.getName() );
 
             //get the classes under the package and print those too.
             for ( ClassType currentClass  : current.getClassTypes() )
             {
-                getLogger().debug( '\t' + currentClass.getName() );
+                LOGGER.debug( '\t' + currentClass.getName() );
             }
         }
     }
diff --git a/maven-jxr/src/test/java/org/apache/maven/jxr/DirectoryIndexerTest.java b/maven-jxr/src/test/java/org/apache/maven/jxr/DirectoryIndexerTest.java
index 605655c..e67acba 100644
--- a/maven-jxr/src/test/java/org/apache/maven/jxr/DirectoryIndexerTest.java
+++ b/maven-jxr/src/test/java/org/apache/maven/jxr/DirectoryIndexerTest.java
@@ -1,6 +1,5 @@
 package org.apache.maven.jxr;
 
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -20,6 +19,9 @@ package org.apache.maven.jxr;
  * under the License.
  */
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
 import java.nio.file.Paths;
 import java.util.Iterator;
 import java.util.Map;
@@ -27,27 +29,32 @@ import java.util.Map;
 import org.apache.maven.jxr.DirectoryIndexer.ClassInfo;
 import org.apache.maven.jxr.DirectoryIndexer.PackageInfo;
 import org.apache.maven.jxr.DirectoryIndexer.ProjectInfo;
+import org.apache.maven.jxr.pacman.FileManager;
 import org.apache.maven.jxr.pacman.PackageManager;
-import org.codehaus.plexus.ContainerConfiguration;
-import org.codehaus.plexus.PlexusTestCase;
+import org.junit.Before;
+import org.junit.Test;
 
-public class DirectoryIndexerTest extends PlexusTestCase 
+public class DirectoryIndexerTest
 {
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
+    private DirectoryIndexer directoryIndexer;
+    
+    @Before
+    public void setUp() 
     {
-        configuration.setClassPathScanning( "INDEX" );
+        FileManager fileManager = new FileManager();
+        PackageManager packageManager = new PackageManager( fileManager );
+        packageManager.process( Paths.get( "src/test/resources/jxr68" ) );
+
+        directoryIndexer = new DirectoryIndexer( packageManager, "" );
     }
     
     /**
      * Parse the files in test/resources/jxr68 packages, ensure all are present in the allClasses Map,
      * in the correct order.
      */
+    @Test
     public void testJXR_68() throws Exception
     {
-        PackageManager packageManager = lookup( PackageManager.class );
-        packageManager.process( Paths.get( "src/test/resources/jxr68" ) );
-        DirectoryIndexer directoryIndexer = new DirectoryIndexer( packageManager, "" );
 
         ProjectInfo packageInfo = directoryIndexer.getProjectInfo();
         final Map<String, PackageInfo> allPackages = packageInfo.getAllPackages();
diff --git a/maven-jxr/src/test/java/org/apache/maven/jxr/IncludeExcludeTest.java b/maven-jxr/src/test/java/org/apache/maven/jxr/IncludeExcludeTest.java
index d203baa..02e07f1 100644
--- a/maven-jxr/src/test/java/org/apache/maven/jxr/IncludeExcludeTest.java
+++ b/maven-jxr/src/test/java/org/apache/maven/jxr/IncludeExcludeTest.java
@@ -19,13 +19,18 @@ package org.apache.maven.jxr;
  * under the License.
  */
 
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Collections;
 
-import org.codehaus.plexus.ContainerConfiguration;
-import org.codehaus.plexus.PlexusTestCase;
+import org.apache.maven.jxr.pacman.FileManager;
+import org.apache.maven.jxr.pacman.PackageManager;
+import org.junit.Before;
+import org.junit.Test;
 
 /**
  * Test include/exclude patterns.
@@ -33,27 +38,25 @@ import org.codehaus.plexus.PlexusTestCase;
  * @author <a href="mailto:dennisl@apache.org">Dennis Lundberg</a>
  * @version $Id$
  */
-public class IncludeExcludeTest extends PlexusTestCase  
+public class IncludeExcludeTest  
 {
     private JXR jxr;
  
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
-    {
-        configuration.setClassPathScanning( "INDEX" );
-    }
-    
-    @Override
+    @Before
     public void setUp() throws Exception
     {
-        super.setUp();
-        jxr = lookup( JXR.class );
+        FileManager fileManager = new FileManager();
+        PackageManager packageManager = new PackageManager( fileManager );
+        JavaCodeTransform codeTransform = new JavaCodeTransform( packageManager, fileManager );
+        
+        jxr = new JXR( packageManager, codeTransform );
         jxr.setDest( Paths.get( "target" ) );
         jxr.setInputEncoding( "ISO-8859-1" );
         jxr.setOutputEncoding( "ISO-8859-1" );
         jxr.setJavadocLinkDir( Paths.get( "." ) );
     }
 
+    @Test
     public void testIncludeExclude()
         throws Exception
     {
diff --git a/maven-jxr/src/test/java/org/apache/maven/jxr/JXR141Test.java b/maven-jxr/src/test/java/org/apache/maven/jxr/JXR141Test.java
index 5937a50..6b04be3 100644
--- a/maven-jxr/src/test/java/org/apache/maven/jxr/JXR141Test.java
+++ b/maven-jxr/src/test/java/org/apache/maven/jxr/JXR141Test.java
@@ -19,6 +19,8 @@ package org.apache.maven.jxr;
  * under the License.
  */
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
 
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
@@ -26,24 +28,32 @@ import java.nio.file.Paths;
 import java.util.Collections;
 import java.util.List;
 
-import org.codehaus.plexus.ContainerConfiguration;
-import org.codehaus.plexus.PlexusTestCase;
+import org.apache.maven.jxr.pacman.FileManager;
+import org.apache.maven.jxr.pacman.PackageManager;
+import org.junit.Before;
+import org.junit.Test;
 
 /**
  * Simple unit-testtest that illustrates a line with more
  * than one "token" to replace
  */
-public class JXR141Test extends PlexusTestCase 
+public class JXR141Test 
 {
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
+    private JXR jxr;
+
+    @Before
+    public void setUp()
     {
-        configuration.setClassPathScanning( "INDEX" );
+        FileManager fileManager = new FileManager();
+        PackageManager packageManager = new PackageManager( fileManager );
+        JavaCodeTransform codeTransform = new JavaCodeTransform( packageManager, fileManager );
+        
+        jxr = new JXR( packageManager, codeTransform );    
     }
     
+    @Test
     public void testProcessPath() throws Exception
     {
-        JXR jxr = lookup( JXR.class );
         jxr.setDest( Paths.get("target/jxr-141" ) );
         jxr.setOutputEncoding( "UTF-8" );
         jxr.xref( Collections.singletonList( "src/test/resources/jxr141" ),"templates/jdk4",
@@ -66,8 +76,8 @@ public class JXR141Test extends PlexusTestCase
         assertNotNull( "Line #27 not found - has source of Test141.java changed?", line27 );
         assertEquals( "<a class=\"jxr_linenumber\" name=\"L27\" href=\"#L27\">27</a>      " +
                 "<strong class=\"jxr_keyword\">public</strong> <strong class=\"jxr_keyword\">static</strong> " +
-                "<strong class=\"jxr_keyword\">final</strong> <a name=\"Test141\" href=\"..//Test141.html#Test141\">" +
-                "Test141</a> instance = <strong class=\"jxr_keyword\">new</strong> " +
+                "<strong class=\"jxr_keyword\">final</strong> " +
+                "<a name=\"Test141\" href=\"..//Test141.html#Test141\">Test141</a> instance = <strong class=\"jxr_keyword\">new</strong> " +
                 "<a name=\"Test141\" href=\"..//Test141.html#Test141\">Test141</a>();" , line27 );
     }
 }
\ No newline at end of file
diff --git a/maven-jxr/src/test/java/org/apache/maven/jxr/JavaCodeTransformTest.java b/maven-jxr/src/test/java/org/apache/maven/jxr/JavaCodeTransformTest.java
index 1b1f37c..53017c3 100644
--- a/maven-jxr/src/test/java/org/apache/maven/jxr/JavaCodeTransformTest.java
+++ b/maven-jxr/src/test/java/org/apache/maven/jxr/JavaCodeTransformTest.java
@@ -1,5 +1,7 @@
 package org.apache.maven.jxr;
 
+import static org.junit.Assert.assertTrue;
+
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -25,36 +27,35 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Locale;
 
+import org.apache.maven.jxr.pacman.FileManager;
+import org.apache.maven.jxr.pacman.PackageManager;
 import org.codehaus.plexus.ContainerConfiguration;
 import org.codehaus.plexus.PlexusTestCase;
+import org.junit.Before;
+import org.junit.Test;
 
 /**
  * JUnit test for {@link JavaCodeTransform}.
  */
-public class JavaCodeTransformTest extends PlexusTestCase
+public class JavaCodeTransformTest
 {
     /** JavaCodeTransform object under test */
     private JavaCodeTransform codeTransform;
 
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
-    {
-        configuration.setClassPathScanning( "INDEX" );
-    }
-    
     /**
      * Set up this test.
      */
-    @Override
+    @Before
     public void setUp() throws Exception
     {
-        super.setUp();
-        codeTransform = lookup( JavaCodeTransform.class );
+        FileManager fileManager = new FileManager();
+        codeTransform = new JavaCodeTransform( new PackageManager( fileManager ), fileManager);
     }
 
     /**
      * Test basic transformation of a java source file.
      */
+    @Test
     public void testTransform()
         //test transforms its own sourcefile, so add some comments
         throws Exception // single line despite /*
@@ -72,6 +73,7 @@ public class JavaCodeTransformTest extends PlexusTestCase
     /**
      * Test what happens with an empty sourcefile.
      */
+    @Test
     public void testTransformWithEmptyClassFile()
         throws Exception
     {
@@ -86,6 +88,7 @@ public class JavaCodeTransformTest extends PlexusTestCase
     /**
      * Test proper handling of link
      */
+    @Test
     public void testLinkHandling()
         throws Exception
     {
diff --git a/maven-jxr/src/test/java/org/apache/maven/jxr/JxrBeanTest.java b/maven-jxr/src/test/java/org/apache/maven/jxr/JxrBeanTest.java
index 7ecefdf..10c7549 100644
--- a/maven-jxr/src/test/java/org/apache/maven/jxr/JxrBeanTest.java
+++ b/maven-jxr/src/test/java/org/apache/maven/jxr/JxrBeanTest.java
@@ -22,30 +22,28 @@ package org.apache.maven.jxr;
 import java.nio.file.Paths;
 import java.util.Collections;
 
-import org.codehaus.plexus.ContainerConfiguration;
-import org.codehaus.plexus.PlexusTestCase;
+import org.apache.maven.jxr.pacman.FileManager;
+import org.apache.maven.jxr.pacman.PackageManager;
+import org.junit.Before;
+import org.junit.Test;
 
-public class JxrBeanTest extends PlexusTestCase
+public class JxrBeanTest
 {
     private JXR jxrBean;
 
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
-    {
-        configuration.setClassPathScanning( "INDEX" );
-    }
-    
-    @Override
-    public void setUp() throws Exception
-    {
-        super.setUp();
-        jxrBean = lookup( JXR.class );
+    @Before
+    public void setUp()
+    {   FileManager fileManager = new FileManager();
+        PackageManager packageManager = new PackageManager( fileManager );
+        JavaCodeTransform codeTransform = new JavaCodeTransform( packageManager, fileManager );
+        jxrBean = new JXR( packageManager, codeTransform );
         jxrBean.setDest( Paths.get( "target" ) );
         jxrBean.setInputEncoding( "ISO-8859-1" );
         jxrBean.setOutputEncoding( "ISO-8859-1" );
         jxrBean.setJavadocLinkDir( Paths.get( "." ) );
     }
 
+    @Test
     public void testXref()
         throws Exception
     {