You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2006/08/03 01:32:42 UTC
svn commit: r428190 - in /maven/plugins/branches/MASSEMBLY-124/src:
main/java/org/apache/maven/plugin/assembly/archive/
main/java/org/apache/maven/plugin/assembly/archive/phase/
main/java/org/apache/maven/plugin/assembly/filter/ main/java/org/apache/ma...
Author: jdcasey
Date: Wed Aug 2 16:32:41 2006
New Revision: 428190
URL: http://svn.apache.org/viewvc?rev=428190&view=rev
Log:
All but mojo front-ends and DefaultRepositoryAssembler are tested.
Added:
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java (with props)
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java (with props)
Modified:
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyExcludesArtifactFilter.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyIncludesArtifactFilter.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilter.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/StatisticsReportingFilter.java
maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyArtifactFilterTCK.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilterTest.java
maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java Wed Aug 2 16:32:41 2006
@@ -27,8 +27,7 @@
import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
- * @plexus.component role="org.apache.maven.plugin.assembly.archive.ArchiveCreator"
- * role-hint="default"
+ * @plexus.component role="org.apache.maven.plugin.assembly.archive.ArchiveCreator" role-hint="default"
*/
public class DefaultAssemblyArchiver
extends AbstractLogEnabled
@@ -36,7 +35,7 @@
{
private static final ArchiveFileFilter JAR_SECURITY_FILE_FILTER = new JarSecurityFileFilter();
-
+
/**
* @plexus.requirement
*/
@@ -45,7 +44,19 @@
/**
* @plexus.requirement role="org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase"
*/
- private List archiverPhases;
+ private List assemblyPhases;
+
+ public DefaultAssemblyArchiver()
+ {
+ // needed for plexus
+ }
+
+ // introduced for testing.
+ public DefaultAssemblyArchiver( ArchiverManager archiverManager, List assemblyPhases )
+ {
+ this.archiverManager = archiverManager;
+ this.assemblyPhases = assemblyPhases;
+ }
public File createArchive( Assembly assembly, String fullName, String format,
AssemblerConfigurationSource configSource )
@@ -56,22 +67,22 @@
ComponentsXmlArchiverFileFilter componentsXmlFilter = new ComponentsXmlArchiverFileFilter();
File outputDirectory = configSource.getOutputDirectory();
-
+
File destFile = new File( outputDirectory, filename );
try
{
Archiver archiver = createArchiver( format, configSource.getTarLongFileMode(), componentsXmlFilter );
- for ( Iterator phaseIterator = archiverPhases.iterator(); phaseIterator.hasNext(); )
+ for ( Iterator phaseIterator = assemblyPhases.iterator(); phaseIterator.hasNext(); )
{
- AssemblyArchiverPhase phase = (AssemblyArchiverPhase) phaseIterator.next();
+ AssemblyArchiverPhase phase = ( AssemblyArchiverPhase ) phaseIterator.next();
phase.execute( assembly, archiver, configSource );
}
archiver.setDestFile( destFile );
-
+
archiver.createArchive();
}
catch ( ArchiverException e )
@@ -100,82 +111,105 @@
* @throws org.codehaus.plexus.archiver.ArchiverException
* @throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
*/
- protected Archiver createArchiver( String format, String tarLongFileMode, ComponentsXmlArchiverFileFilter componentsXmlFilter )
+ protected Archiver createArchiver( String format, String tarLongFileMode,
+ ComponentsXmlArchiverFileFilter componentsXmlFilter )
throws ArchiverException, NoSuchArchiverException
{
Archiver archiver;
if ( format.startsWith( "tar" ) )
{
- TarArchiver tarArchiver = (TarArchiver) this.archiverManager.getArchiver( "tar" );
- archiver = tarArchiver;
- int index = format.indexOf( '.' );
- if ( index >= 0 )
- {
- // TODO: this needs a cleanup in plexus archiver - use a real
- // typesafe enum
- TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
- // TODO: this should accept gz and bz2 as well so we can skip
- // over the switch
- String compression = format.substring( index + 1 );
- if ( "gz".equals( compression ) )
- {
- tarCompressionMethod.setValue( "gzip" );
- }
- else if ( "bz2".equals( compression ) )
- {
- tarCompressionMethod.setValue( "bzip2" );
- }
- else
- {
- // TODO: better handling
- throw new IllegalArgumentException( "Unknown compression format: " + compression );
- }
- tarArchiver.setCompression( tarCompressionMethod );
-
- TarLongFileMode tarFileMode = new TarLongFileMode();
-
- tarFileMode.setValue( tarLongFileMode );
-
- tarArchiver.setLongfile( tarFileMode );
- }
+ archiver = createTarArchiver( format, tarLongFileMode );
}
else if ( "war".equals( format ) )
{
- WarArchiver warArchiver = (WarArchiver) this.archiverManager.getArchiver( "war" );
- warArchiver.setIgnoreWebxml( false ); // See MNG-1274
- archiver = warArchiver;
+ archiver = createWarArchiver( );
}
else
{
archiver = this.archiverManager.getArchiver( format );
}
+ configureArchiverFilters( archiver, componentsXmlFilter );
+
+ configureArchiverFinalizers( archiver, componentsXmlFilter );
+
+ return archiver;
+ }
+
+ protected void configureArchiverFinalizers( Archiver archiver, ComponentsXmlArchiverFileFilter componentsXmlFilter )
+ {
+ if ( archiver instanceof FinalizerEnabled )
+ {
+ ( ( FinalizerEnabled ) archiver ).setArchiveFinalizers( Collections.singletonList( componentsXmlFilter ) );
+ }
+ }
+
+ protected void configureArchiverFilters( Archiver archiver, ComponentsXmlArchiverFileFilter componentsXmlFilter )
+ {
/*
- * If the assembly is 'jar-with-dependencies', remove the
- * security files in all dependencies that will prevent the
- * uberjar to execute. Please see MASSEMBLY-64 for details.
+ * If the assembly is 'jar-with-dependencies', remove the security files in all dependencies that will prevent
+ * the uberjar to execute. Please see MASSEMBLY-64 for details.
*/
if ( archiver instanceof FilterEnabled )
{
List filters = new ArrayList();
-
+
filters.add( componentsXmlFilter );
-
+
if ( archiver instanceof JarArchiver )
{
filters.add( JAR_SECURITY_FILE_FILTER );
}
-
- ((FilterEnabled) archiver).setArchiveFilters( filters );
+
+ ( ( FilterEnabled ) archiver ).setArchiveFilters( filters );
}
-
- if ( archiver instanceof FinalizerEnabled )
- {
-
- ((FinalizerEnabled) archiver).setArchiveFinalizers( Collections.singletonList( componentsXmlFilter ) );
+ }
+
+ protected Archiver createWarArchiver()
+ throws NoSuchArchiverException
+ {
+ WarArchiver warArchiver = ( WarArchiver ) this.archiverManager.getArchiver( "war" );
+ warArchiver.setIgnoreWebxml( false ); // See MNG-1274
+
+ return warArchiver;
+ }
+
+ protected Archiver createTarArchiver( String format, String tarLongFileMode )
+ throws NoSuchArchiverException, ArchiverException
+ {
+ TarArchiver tarArchiver = ( TarArchiver ) this.archiverManager.getArchiver( "tar" );
+ int index = format.indexOf( '.' );
+ if ( index >= 0 )
+ {
+ // TODO: this needs a cleanup in plexus archiver - use a real
+ // typesafe enum
+ TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
+ // TODO: this should accept gz and bz2 as well so we can skip
+ // over the switch
+ String compression = format.substring( index + 1 );
+ if ( "gz".equals( compression ) )
+ {
+ tarCompressionMethod.setValue( "gzip" );
+ }
+ else if ( "bz2".equals( compression ) )
+ {
+ tarCompressionMethod.setValue( "bzip2" );
+ }
+ else
+ {
+ // TODO: better handling
+ throw new IllegalArgumentException( "Unknown compression format: " + compression );
+ }
+ tarArchiver.setCompression( tarCompressionMethod );
}
+
+ TarLongFileMode tarFileMode = new TarLongFileMode();
+
+ tarFileMode.setValue( tarLongFileMode );
+
+ tarArchiver.setLongfile( tarFileMode );
- return archiver;
+ return tarArchiver;
}
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java Wed Aug 2 16:32:41 2006
@@ -66,7 +66,7 @@
manifest = mavenArchiver.getManifest( project, archiveConfiguration.getManifest() );
}
- if ( manifest != null )
+ if ( manifest != null && ( archiver instanceof JarArchiver ) )
{
JarArchiver jarArchiver = (JarArchiver) archiver;
jarArchiver.addConfiguredManifest( manifest );
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Wed Aug 2 16:32:41 2006
@@ -62,6 +62,15 @@
ModuleSet moduleSet = ( ModuleSet ) i.next();
Set moduleProjects = getModuleProjects( moduleSet, configSource );
+
+ ModuleSources sources = moduleSet.getSources();
+ ModuleBinaries binaries = moduleSet.getBinaries();
+
+ if ( sources == null && binaries == null )
+ {
+ getLogger().warn( "Encountered ModuleSet with no sources or binaries specified. Skipping." );
+ continue;
+ }
addModuleSourceFileSets( moduleSet.getSources(), moduleProjects, archiver, configSource,
includeBaseDirectory );
@@ -106,7 +115,8 @@
List includes = binaries.getIncludes();
// we don't need to include dependencies which have already been found.
- List excludes = collectExcludesFromQueuedArtifacts( visitedArtifacts, binaries.getExcludes() );
+// List excludes = collectExcludesFromQueuedArtifacts( visitedArtifacts, binaries.getExcludes() );
+ List excludes = binaries.getExcludes();
FilterUtils.filterArtifacts( binaryDependencies, includes, excludes, true, Collections.EMPTY_LIST,
getLogger() );
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyExcludesArtifactFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyExcludesArtifactFilter.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyExcludesArtifactFilter.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyExcludesArtifactFilter.java Wed Aug 2 16:32:41 2006
@@ -40,11 +40,24 @@
public boolean include( Artifact artifact )
{
- return !super.include( artifact );
+ boolean shouldInclude = !patternMatches( artifact );
+
+ if ( !shouldInclude )
+ {
+ addFilteredArtifactId( artifact.getId() );
+ }
+
+ return shouldInclude;
}
-
+
protected String getFilterDescription()
{
return "artifact exclusion filter";
}
+
+ public String toString()
+ {
+ return "Excludes filter:" + getPatternsAsString();
+ }
+
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyIncludesArtifactFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyIncludesArtifactFilter.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyIncludesArtifactFilter.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyIncludesArtifactFilter.java Wed Aug 2 16:32:41 2006
@@ -41,6 +41,7 @@
private final boolean actTransitively;
private Set patternsTriggered = new HashSet();
+ private List filteredArtifactIds = new ArrayList();
public AssemblyIncludesArtifactFilter( List patterns )
{
@@ -56,6 +57,23 @@
public boolean include( Artifact artifact )
{
+ boolean shouldInclude = patternMatches( artifact );
+
+ if ( !shouldInclude )
+ {
+ addFilteredArtifactId( artifact.getId() );
+ }
+
+ return shouldInclude;
+ }
+
+ protected void addFilteredArtifactId( String artifactId )
+ {
+ filteredArtifactIds.add( artifactId );
+ }
+
+ protected boolean patternMatches( Artifact artifact )
+ {
String shortId = ArtifactUtils.versionlessKey( artifact );
String id = artifact.getDependencyConflictId();
@@ -135,9 +153,45 @@
}
}
}
+
+ public String toString()
+ {
+ return "Includes filter:" + getPatternsAsString();
+ }
+
+ protected String getPatternsAsString()
+ {
+ StringBuffer buffer = new StringBuffer();
+ for ( Iterator it = patterns.iterator(); it.hasNext(); )
+ {
+ String pattern = ( String ) it.next();
+
+ buffer.append( "\no \'" ).append( pattern ).append( "\'" );
+ }
+
+ return buffer.toString();
+ }
protected String getFilterDescription()
{
return "artifact inclusion filter";
}
+
+ public void reportFilteredArtifacts( Logger logger )
+ {
+ if ( !filteredArtifactIds.isEmpty() && logger.isDebugEnabled() )
+ {
+ StringBuffer buffer = new StringBuffer( "The following artifacts were removed by this filter: " );
+
+ for ( Iterator it = filteredArtifactIds.iterator(); it.hasNext(); )
+ {
+ String artifactId = ( String ) it.next();
+
+ buffer.append( '\n' ).append( artifactId );
+ }
+
+ logger.debug( buffer.toString() );
+ }
+ }
+
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilter.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilter.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilter.java Wed Aug 2 16:32:41 2006
@@ -19,12 +19,17 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+import org.codehaus.plexus.logging.Logger;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
/**
* TODO: include in maven-artifact in future
*/
public class AssemblyScopeArtifactFilter
- implements ArtifactFilter
+ implements ArtifactFilter, StatisticsReportingFilter
{
private final boolean compileScope;
@@ -36,6 +41,18 @@
private final boolean systemScope;
+ private boolean compileScopeHit = false;
+
+ private boolean runtimeScopeHit = false;
+
+ private boolean testScopeHit = false;
+
+ private boolean providedScopeHit = false;
+
+ private boolean systemScopeHit = false;
+
+ private List filteredArtifactIds = new ArrayList();
+
public AssemblyScopeArtifactFilter( String scope )
{
if ( DefaultArtifact.SCOPE_COMPILE.equals( scope ) )
@@ -90,29 +107,102 @@
public boolean include( Artifact artifact )
{
+ boolean result = true;
+
if ( Artifact.SCOPE_COMPILE.equals( artifact.getScope() ) )
{
- return compileScope;
+ compileScopeHit = true;
+ result = compileScope;
}
else if ( Artifact.SCOPE_RUNTIME.equals( artifact.getScope() ) )
{
- return runtimeScope;
+ runtimeScopeHit = true;
+ result = runtimeScope;
}
else if ( Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
{
- return testScope;
+ testScopeHit = true;
+ result = testScope;
}
else if ( Artifact.SCOPE_PROVIDED.equals( artifact.getScope() ) )
{
- return providedScope;
+ providedScopeHit = true;
+ result = providedScope;
}
else if ( Artifact.SCOPE_SYSTEM.equals( artifact.getScope() ) )
{
- return systemScope;
+ systemScopeHit = true;
+ result = systemScope;
}
- else
+
+ if ( !result )
+ {
+ filteredArtifactIds.add( artifact.getId() );
+ }
+
+ return result;
+ }
+
+ public String toString()
+ {
+ return "Scope filter [compile=" + compileScope + ", runtime=" + runtimeScope + ", test=" + testScope
+ + ", provided=" + providedScope + ", system=" + systemScope + "]";
+ }
+
+ public void reportFilteredArtifacts( Logger logger )
+ {
+ if ( !filteredArtifactIds.isEmpty() && logger.isDebugEnabled() )
+ {
+ StringBuffer buffer = new StringBuffer( "The following artifacts were removed by this filter: " );
+
+ for ( Iterator it = filteredArtifactIds.iterator(); it.hasNext(); )
+ {
+ String artifactId = ( String ) it.next();
+
+ buffer.append( '\n' ).append( artifactId );
+ }
+
+ logger.debug( buffer.toString() );
+ }
+ }
+
+ public void reportMissedCriteria( Logger logger )
+ {
+ if ( logger.isDebugEnabled() )
{
- return true;
+ StringBuffer buffer = new StringBuffer();
+
+ boolean report = false;
+ if ( !compileScopeHit )
+ {
+ buffer.append( "\no Compile" );
+ report = true;
+ }
+ if ( !runtimeScopeHit )
+ {
+ buffer.append( "\no Runtime" );
+ report = true;
+ }
+ if ( !testScopeHit )
+ {
+ buffer.append( "\no Test" );
+ report = true;
+ }
+ if ( !providedScopeHit )
+ {
+ buffer.append( "\no Provided" );
+ report = true;
+ }
+ if ( !systemScopeHit )
+ {
+ buffer.append( "\no System" );
+ report = true;
+ }
+
+ if ( report )
+ {
+ logger.debug( "The following scope filters were not used: " + buffer.toString() );
+ }
}
}
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/StatisticsReportingFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/StatisticsReportingFilter.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/StatisticsReportingFilter.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/filter/StatisticsReportingFilter.java Wed Aug 2 16:32:41 2006
@@ -6,5 +6,7 @@
{
void reportMissedCriteria( Logger logger );
+
+ void reportFilteredArtifacts( Logger logger );
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java Wed Aug 2 16:32:41 2006
@@ -127,7 +127,15 @@
if ( f instanceof StatisticsReportingFilter )
{
- ((StatisticsReportingFilter) f).reportMissedCriteria( logger );
+ StatisticsReportingFilter sFilter = (StatisticsReportingFilter) f;
+
+ if( logger.isDebugEnabled() )
+ {
+ logger.debug( "Statistics for " + sFilter + "\n" );
+ }
+
+ sFilter.reportMissedCriteria( logger );
+ sFilter.reportFilteredArtifacts( logger );
}
}
}
Added: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java?rev=428190&view=auto
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java (added)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java Wed Aug 2 16:32:41 2006
@@ -0,0 +1,533 @@
+package org.apache.maven.plugin.assembly.archive;
+
+import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
+import org.apache.maven.plugin.assembly.filter.ComponentsXmlArchiverFileFilter;
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.testutils.TestFileManager;
+import org.apache.maven.plugins.assembly.model.Assembly;
+import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.archiver.ArchiverException;
+import org.codehaus.plexus.archiver.FilterEnabled;
+import org.codehaus.plexus.archiver.FinalizerEnabled;
+import org.codehaus.plexus.archiver.manager.ArchiverManager;
+import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
+import org.codehaus.plexus.archiver.tar.TarArchiver;
+import org.codehaus.plexus.archiver.tar.TarLongFileMode;
+import org.codehaus.plexus.archiver.war.WarArchiver;
+import org.codehaus.plexus.archiver.zip.ZipArchiver;
+import org.codehaus.plexus.logging.Logger;
+import org.easymock.MockControl;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+public class DefaultAssemblyArchiverTest
+ extends TestCase
+{
+
+ private TestFileManager fileManager = new TestFileManager( "def-assy-archiver.test.", "" );
+
+ public void tearDown() throws IOException
+ {
+ fileManager.cleanUp();
+ }
+
+ public void testCreateArchive()
+ throws ArchiveCreationException, AssemblyFormattingException
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiverManager macMgr = new MockAndControlForArchiverManager( mm );
+
+ macMgr.expectGetArchiver( "zip", Archiver.class );
+
+ MockControl phaseControl = MockControl.createControl( AssemblyArchiverPhase.class );
+ mm.add( phaseControl );
+
+ AssemblyArchiverPhase phase = ( AssemblyArchiverPhase ) phaseControl.getMock();
+
+ phase.execute( null, null, null );
+ phaseControl.setMatcher( MockControl.ALWAYS_MATCHER );
+
+ MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
+ mm.add( csControl );
+
+ AssemblerConfigurationSource configSource = ( AssemblerConfigurationSource ) csControl.getMock();
+
+ File outDir = fileManager.createTempDir();
+
+ macMgr.archiver.setDestFile( new File( outDir, "full-name.zip" ) );
+
+ try
+ {
+ macMgr.archiver.createArchive();
+ }
+ catch ( ArchiverException e )
+ {
+ fail( "Should never happen" );
+ }
+ catch ( IOException e )
+ {
+ fail( "Should never happen" );
+ }
+
+ configSource.getOutputDirectory();
+ csControl.setReturnValue( outDir );
+
+ configSource.getTarLongFileMode();
+ csControl.setReturnValue( null );
+
+ Assembly assembly = new Assembly();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject = createSubject( macMgr.archiverManager, Collections.singletonList( phase ), null );
+
+ subject.createArchive( assembly, "full-name", "zip", configSource );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateArchiver_ShouldCreateTarArchiverWithNoCompression()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestTarArchiver ttArchiver = new TestTarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createArchiver( "tar", TarLongFileMode.FAIL, filter );
+
+ assertNull( ttArchiver.compressionMethod );
+ assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateArchiver_ShouldCreateWarArchiverWithIgnoreWebxmlSetToFalse()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestWarArchiver twArchiver = new TestWarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "war", twArchiver );
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createArchiver( "war", null, filter );
+
+ assertFalse( twArchiver.ignoreWebxml );
+ }
+
+ public void testCreateArchiver_ShouldCreateZipArchiver()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ ZipArchiver archiver = new ZipArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "zip", archiver );
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createArchiver( "zip", null, filter );
+ }
+
+ public void testConfigureArchiverFinalizers_ShouldDoNothingWhenNotSupportedByArchiver()
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.createArchiver( Archiver.class );
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.configureArchiverFinalizers( macArchiverManager.archiver, filter );
+
+ mm.verifyAll();
+ }
+
+ public void testConfigureArchiverFinalizers_ShouldAddManifestFinalizerWhenSupportedByArchiver()
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.createArchiver( TestFinalizerFilteredArchiver.class );
+ macArchiverManager.expectSetArchiverFinalizers();
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.configureArchiverFinalizers( macArchiverManager.archiver, filter );
+
+ mm.verifyAll();
+ }
+
+ public void testConfigureArchiverFilters_ShouldDoNothingWhenNotSupportedByArchiver()
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.createArchiver( Archiver.class );
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.configureArchiverFilters( macArchiverManager.archiver, filter );
+
+ mm.verifyAll();
+ }
+
+ public void testConfigureArchiverFilters_ShouldAddComponentsFilterWhenSupportedByArchiver()
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.createArchiver( TestFinalizerFilteredArchiver.class );
+ macArchiverManager.expectSetArchiverFilters();
+
+ ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.configureArchiverFilters( macArchiverManager.archiver, filter );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateWarArchiver_ShouldDisableIgnoreWebxmlOption()
+ throws NoSuchArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestWarArchiver twArchiver = new TestWarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "war", twArchiver );
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createWarArchiver();
+
+ assertFalse( twArchiver.ignoreWebxml );
+ }
+
+ public void testCreateTarArchiver_ShouldNotInitializeCompression()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestTarArchiver ttArchiver = new TestTarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createTarArchiver( "tar", TarLongFileMode.FAIL );
+
+ assertNull( ttArchiver.compressionMethod );
+ assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateTarArchiver_ShouldInitializeGZipCompression()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestTarArchiver ttArchiver = new TestTarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createTarArchiver( "tar.gz", TarLongFileMode.FAIL );
+
+ assertEquals( "gzip", ttArchiver.compressionMethod.getValue() );
+ assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateTarArchiver_ShouldInitializeBZipCompression()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestTarArchiver ttArchiver = new TestTarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ subject.createTarArchiver( "tar.bz2", TarLongFileMode.FAIL );
+
+ assertEquals( "bzip2", ttArchiver.compressionMethod.getValue() );
+ assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+
+ mm.verifyAll();
+ }
+
+ public void testCreateTarArchiver_ShouldFailWithInvalidCompression()
+ throws NoSuchArchiverException, ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ TestTarArchiver ttArchiver = new TestTarArchiver();
+
+ MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
+
+ macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+
+ mm.replayAll();
+
+ DefaultAssemblyArchiver subject =
+ createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
+
+ try
+ {
+ subject.createTarArchiver( "tar.Z", null );
+
+ fail( "Invalid compression formats should throw an error." );
+ }
+ catch ( IllegalArgumentException e )
+ {
+ // expected.
+ }
+
+ mm.verifyAll();
+ }
+
+ private DefaultAssemblyArchiver createSubject( ArchiverManager archiverManager, List phases, Logger logger )
+ {
+ DefaultAssemblyArchiver subject = new DefaultAssemblyArchiver( archiverManager, phases );
+
+ if ( logger != null )
+ {
+ subject.enableLogging( logger );
+ }
+
+ return subject;
+ }
+
+ private final class MockAndControlForArchiverManager
+ {
+ ArchiverManager archiverManager;
+
+ MockControl control;
+
+ MockControl archiverControl;
+
+ Archiver archiver;
+
+ private final MockManager mm;
+
+ public MockAndControlForArchiverManager( MockManager mm )
+ {
+ this.mm = mm;
+ control = MockControl.createControl( ArchiverManager.class );
+ mm.add( control );
+
+ archiverManager = ( ArchiverManager ) control.getMock();
+ }
+
+ void createArchiver( Class archiverClass )
+ {
+ archiverControl = MockControl.createControl( archiverClass );
+ mm.add( archiverControl );
+
+ archiver = ( Archiver ) archiverControl.getMock();
+ }
+
+ void expectSetArchiverFinalizers()
+ {
+ ( ( FinalizerEnabled ) archiver ).setArchiveFinalizers( null );
+ archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+ }
+
+ void expectSetArchiverFilters()
+ {
+ ( ( FilterEnabled ) archiver ).setArchiveFilters( null );
+ archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+ }
+
+ void expectGetArchiver( String format, Class archiverClass )
+ {
+ createArchiver( archiverClass );
+
+ try
+ {
+ archiverManager.getArchiver( format );
+ }
+ catch ( NoSuchArchiverException e )
+ {
+ Assert.fail( "should never happen" );
+ }
+
+ control.setReturnValue( archiver );
+ }
+
+ void expectGetArchiver( String format, Archiver archiver )
+ throws NoSuchArchiverException
+ {
+ archiverManager.getArchiver( format );
+ control.setReturnValue( archiver );
+ }
+ }
+
+ private static final class TestTarArchiver
+ extends TarArchiver
+ {
+
+ boolean archiveCreated;
+
+ boolean optionsRetrieved;
+
+ TarCompressionMethod compressionMethod;
+
+ int defaultDirMode;
+
+ int defaultFileMode;
+
+ TarLongFileMode longFileMode;
+
+ TarOptions options;
+
+ public void createArchive()
+ throws ArchiverException, IOException
+ {
+ archiveCreated = true;
+ super.createArchive();
+ }
+
+ public TarOptions getOptions()
+ {
+ optionsRetrieved = true;
+ return super.getOptions();
+ }
+
+ public void setCompression( TarCompressionMethod mode )
+ {
+ compressionMethod = mode;
+ super.setCompression( mode );
+ }
+
+ public void setDefaultDirectoryMode( int mode )
+ {
+ defaultDirMode = mode;
+ super.setDefaultDirectoryMode( mode );
+ }
+
+ public void setDefaultFileMode( int mode )
+ {
+ defaultFileMode = mode;
+ super.setDefaultFileMode( mode );
+ }
+
+ public void setLongfile( TarLongFileMode mode )
+ {
+ longFileMode = mode;
+ super.setLongfile( mode );
+ }
+
+ public void setOptions( TarOptions options )
+ {
+ this.options = options;
+ super.setOptions( options );
+ }
+
+ }
+
+ private static final class TestWarArchiver
+ extends WarArchiver
+ {
+
+ boolean ignoreWebxml;
+
+ public void setIgnoreWebxml( boolean ignore )
+ {
+ ignoreWebxml = ignore;
+ super.setIgnoreWebxml( ignore );
+ }
+
+ }
+
+ interface TestFinalizerFilteredArchiver
+ extends Archiver, FilterEnabled, FinalizerEnabled
+ {
+
+ }
+
+}
Propchange: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java?rev=428190&view=auto
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java (added)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java Wed Aug 2 16:32:41 2006
@@ -0,0 +1,105 @@
+package org.apache.maven.plugin.assembly.archive;
+
+import org.apache.maven.archiver.MavenArchiveConfiguration;
+import org.apache.maven.model.Model;
+import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.testutils.TestFileManager;
+import org.apache.maven.project.MavenProject;
+import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.archiver.ArchiverException;
+import org.codehaus.plexus.archiver.jar.JarArchiver;
+import org.codehaus.plexus.util.IOUtil;
+import org.easymock.MockControl;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.StringWriter;
+import java.net.URL;
+
+import junit.framework.TestCase;
+
+public class ManifestCreationFinalizerTest
+ extends TestCase
+{
+
+ private TestFileManager fileManager = new TestFileManager( "manifest-finalizer.test.", ".jar" );
+
+ public void tearDown() throws IOException
+ {
+ fileManager.cleanUp();
+ }
+
+ public void testShouldDoNothingWhenArchiveConfigIsNull()
+ throws ArchiverException
+ {
+ new ManifestCreationFinalizer( null, null ).finalizeArchiveCreation( null );
+ }
+
+ public void testShouldDoNothingWhenArchiverIsNotJarArchiver()
+ throws ArchiverException
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForArchiver macArchiver = new MockAndControlForArchiver( mm );
+
+ MavenProject project = new MavenProject( new Model() );
+ MavenArchiveConfiguration config = new MavenArchiveConfiguration();
+
+ mm.replayAll();
+
+ new ManifestCreationFinalizer( project, config ).finalizeArchiveCreation( macArchiver.archiver );
+
+ mm.verifyAll();
+ }
+
+ public void testShouldAddManifestWhenArchiverIsJarArchiver()
+ throws ArchiverException, IOException
+ {
+ MavenProject project = new MavenProject( new Model() );
+ MavenArchiveConfiguration config = new MavenArchiveConfiguration();
+
+ File tempDir = fileManager.createTempDir();
+
+ File manifestFile = fileManager.createFile( tempDir, "MANIFEST.MF", "Main-Class: Stuff" );
+
+ config.setManifestFile( manifestFile );
+
+ Archiver archiver = new JarArchiver();
+
+ File file = fileManager.createTempFile();
+
+ archiver.setDestFile( file );
+
+ new ManifestCreationFinalizer( project, config ).finalizeArchiveCreation( archiver );
+
+ archiver.createArchive();
+
+ URL resource = new URL( "jar:file:" + file.getAbsolutePath() + "!/META-INF/MANIFEST.MF" );
+
+ BufferedReader reader = new BufferedReader( new InputStreamReader( resource.openStream() ) );
+
+ StringWriter writer = new StringWriter();
+
+ IOUtil.copy( reader, writer );
+
+ assertTrue( writer.toString().indexOf( "Main-Class: Stuff" ) > -1 );
+ }
+
+ private final class MockAndControlForArchiver
+ {
+ Archiver archiver;
+
+ MockControl control;
+
+ MockAndControlForArchiver( MockManager mm )
+ {
+ control = MockControl.createControl( Archiver.class );
+ mm.add( control );
+
+ archiver = ( Archiver ) control.getMock();
+ }
+ }
+
+}
Propchange: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java Wed Aug 2 16:32:41 2006
@@ -347,6 +347,13 @@
mockManager.add( control );
logger = ( Logger ) control.getMock();
+
+ logger.isDebugEnabled();
+ control.setReturnValue( true, MockControl.ZERO_OR_MORE );
+
+ logger.debug( null );
+ control.setMatcher( MockControl.ALWAYS_MATCHER );
+ control.setVoidCallable( MockControl.ZERO_OR_MORE );
}
void expectInfo( String message )
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java Wed Aug 2 16:32:41 2006
@@ -2,6 +2,7 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
+import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
@@ -10,11 +11,16 @@
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
+import org.apache.maven.plugins.assembly.model.Assembly;
import org.apache.maven.plugins.assembly.model.ModuleBinaries;
import org.apache.maven.plugins.assembly.model.ModuleSet;
import org.apache.maven.plugins.assembly.model.ModuleSources;
import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectBuilder;
+import org.apache.maven.project.ProjectBuildingException;
import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.easymock.ArgumentsMatcher;
import org.easymock.MockControl;
import java.io.File;
@@ -42,49 +48,247 @@
fileManager.cleanUp();
}
+ public void testExecute_ShouldSkipIfNoModuleSetsFound()
+ throws ArchiveCreationException, AssemblyFormattingException
+ {
+ Assembly assembly = new Assembly();
+ assembly.setIncludeBaseDirectory( false );
+
+ createPhase( null, null ).execute( assembly, null, null );
+ }
+
+ public void testExecute_ShouldAddOneModuleSetWithOneModuleInIt()
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
+ {
+ MockManager mm = new MockManager();
+
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
+
+ MavenProject project = createProject( "group", "artifact", "version", null );
+ MavenProject module = createProject( "group", "module", "version", project );
+
+ macTask.expectArtifactGetFile();
+ module.setArtifact( macTask.artifact );
+
+ List projects = new ArrayList();
+
+ projects.add( project );
+ projects.add( module );
+
+ macTask.expectGetProject( project );
+ macTask.expectGetReactorProjects( projects );
+ macTask.expectGetFinalName( "final-name" );
+ macTask.expectGetClassifier( null );
+ macTask.expectGetArtifactHandler();
+ macTask.expectArtifactGetDependencyConflictId( "group:module:jar" );
+
+ int mode = Integer.parseInt( "777", 8 );
+
+ macTask.expectAddFile( "out/artifact", mode );
+
+ Assembly assembly = new Assembly();
+ assembly.setIncludeBaseDirectory( false );
+
+ ModuleSet ms = new ModuleSet();
+
+ ModuleBinaries bin = new ModuleBinaries();
+
+ bin.setOutputFileNameMapping( "artifact" );
+ bin.setOutputDirectory( "out" );
+ bin.setFileMode( "777" );
+ bin.setUnpack( false );
+ bin.setIncludeDependencies( false );
+
+ ms.setBinaries( bin );
+
+ assembly.addModuleSet( ms );
+
+ Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
+
+ mm.replayAll();
+
+ createPhase( logger, null ).execute( assembly, macTask.archiver, macTask.configSource );
+
+ mm.verifyAll();
+ }
+
public void testAddModuleBinaries_ShouldReturnImmediatelyWhenBinariesIsNull()
throws ArchiveCreationException, AssemblyFormattingException
{
- createPhase( null ).addModuleBinaries( null, null, null, null, false );
+ createPhase( null, null ).addModuleBinaries( null, null, null, null, false );
}
public void testAddModuleBinaries_ShouldAddOneModuleArtifactAndNoDeps()
throws ArchiveCreationException, AssemblyFormattingException, IOException
{
MockManager mm = new MockManager();
-
+
MockAndControlForLogger macLogger = new MockAndControlForLogger( mm );
MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
-
+
macTask.expectArtifactGetFile( true );
macTask.expectGetFinalName( "final-name" );
macTask.expectGetClassifier( null );
macTask.expectGetArtifactHandler();
macTask.expectAddFile( "out/artifact", Integer.parseInt( "777", 8 ) );
-
+
macTask.artifact.getDependencyConflictId();
macTask.artifactCtl.setReturnValue( "group:artifact:jar", MockControl.ONE_OR_MORE );
-
+
ModuleBinaries binaries = new ModuleBinaries();
-
+
binaries.setIncludeDependencies( false );
binaries.setUnpack( false );
binaries.setFileMode( "777" );
binaries.setOutputDirectory( "out" );
binaries.setOutputFileNameMapping( "artifact" );
-
+
MavenProject project = createProject( "group", "artifact", "version", null );
project.setArtifact( macTask.artifact );
-
+
Set projects = Collections.singleton( project );
-
+
mm.replayAll();
-
- createPhase( macLogger.logger ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource, false );
-
+
+ createPhase( macLogger.logger, null ).addModuleBinaries( binaries, projects, macTask.archiver,
+ macTask.configSource, false );
+
+ mm.verifyAll();
+ }
+
+ public void testAddModuleBinaries_ShouldAddOneModuleArtifactAndWithOneDepArtifact()
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
+ {
+ MockManager mm = new MockManager();
+
+ // MockAndControlForLogger macLogger = new MockAndControlForLogger( mm );
+ //
+ // macLogger.expectWarn();
+ // macLogger.expectDebug( true, true );
+
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
+
+ macTask.expectArtifactGetFile( true );
+ macTask.expectGetFinalName( "final-name" );
+ macTask.expectGetClassifier( null );
+ macTask.expectGetArtifactHandler();
+ macTask.expectAddFile( "out/artifact", Integer.parseInt( "777", 8 ) );
+
+ macTask.artifact.getDependencyConflictId();
+ macTask.artifactCtl.setReturnValue( "group:artifact:jar", MockControl.ONE_OR_MORE );
+
+ macTask.configSource.getRemoteRepositories();
+ macTask.configSourceCtl.setReturnValue( null, MockControl.ONE_OR_MORE );
+
+ macTask.configSource.getLocalRepository();
+ macTask.configSourceCtl.setReturnValue( null, MockControl.ONE_OR_MORE );
+
+ // macTask.artifact.getId();
+ // macTask.artifactCtl.setReturnValue( "group:artifact:jar:version", MockControl.ONE_OR_MORE );
+
+ ModuleBinaries binaries = new ModuleBinaries();
+
+ binaries.setIncludeDependencies( true );
+ binaries.setUnpack( false );
+ binaries.setFileMode( "777" );
+ binaries.setOutputDirectory( "out" );
+ binaries.setOutputFileNameMapping( "artifact" );
+
+ MavenProject project = createProject( "group", "artifact", "version", null );
+ project.setArtifact( macTask.artifact );
+
+ MockAndControlForArtifact macDepArtifact = new MockAndControlForArtifact( mm );
+
+ macDepArtifact.expectGetClassifier();
+ macDepArtifact.expectGetArtifactHandler();
+ macDepArtifact.expectGetDependencyConflictId( "group", "dep", "jar" );
+ macDepArtifact.expectGetFile();
+
+ macTask.expectAddFile( macDepArtifact.artifactFile, "out/artifact", Integer.parseInt( "777", 8 ) );
+
+ MavenProject depProject = createProject( "group", "dep", "version", null );
+
+ depProject.setArtifact( macDepArtifact.artifact );
+
+ MockAndControlForProjectBuilder macPB = new MockAndControlForProjectBuilder( mm );
+
+ macPB.expectBuildFromRepository( macDepArtifact.artifact, depProject );
+
+ project.setArtifacts( new HashSet( Collections.singleton( macDepArtifact.artifact ) ) );
+
+ Set projects = Collections.singleton( project );
+
+ mm.replayAll();
+
+ Logger overrideLogger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
+
+ createPhase( overrideLogger, macPB.projectBuilder ).addModuleBinaries( binaries, projects, macTask.archiver,
+ macTask.configSource, false );
+
mm.verifyAll();
}
+ private final class MockAndControlForProjectBuilder
+ {
+ MavenProjectBuilder projectBuilder;
+
+ MockControl control;
+
+ public MockAndControlForProjectBuilder( MockManager mm )
+ {
+ control = MockControl.createControl( MavenProjectBuilder.class );
+ mm.add( control );
+
+ projectBuilder = ( MavenProjectBuilder ) control.getMock();
+ }
+
+ void expectBuildFromRepository( Artifact artifact, MavenProject result )
+ {
+ try
+ {
+ projectBuilder.buildFromRepository( artifact, null, null );
+ }
+ catch ( ProjectBuildingException e )
+ {
+ Assert.fail( "should never happen" );
+ }
+
+ control.setMatcher( FIRST_PARAM_MATCHER );
+ control.setReturnValue( result, MockControl.ONE_OR_MORE );
+ }
+ }
+
+ private static final ArgumentsMatcher FIRST_PARAM_MATCHER = new ArgumentsMatcher()
+ {
+
+ public boolean matches( Object[] test, Object[] args )
+ {
+ if ( test.length < 1 && args.length < 1 )
+ {
+ return true;
+ }
+
+ if ( test[0] == null && args[0] == null )
+ {
+ return true;
+ }
+
+ if ( test[0].equals( args[0] ) )
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ public String toString( Object[] args )
+ {
+ return "with first argument "
+ + ( args.length > 0 ? " of \'" + String.valueOf( args[0] ) + "\'" : "missing" );
+ }
+
+ };
+
public void testCollectExcludesFromQueuedArtifacts_ShouldAddOneExclusion()
{
MockManager mm = new MockManager();
@@ -100,7 +304,7 @@
Set artifactIds = Collections.singleton( "group:artifact:jar" );
- List result = createPhase( macLogger.logger ).collectExcludesFromQueuedArtifacts( artifactIds, excludes );
+ List result = createPhase( macLogger.logger, null ).collectExcludesFromQueuedArtifacts( artifactIds, excludes );
assertEquals( 1, result.size() );
@@ -119,7 +323,7 @@
Set artifactIds = Collections.singleton( "group:artifact:jar" );
- List result = createPhase( macLogger.logger ).collectExcludesFromQueuedArtifacts( artifactIds, null );
+ List result = createPhase( macLogger.logger, null ).collectExcludesFromQueuedArtifacts( artifactIds, null );
assertEquals( 1, result.size() );
@@ -145,7 +349,7 @@
try
{
- createPhase( macLogger.logger ).addArtifact( macTask.artifact, null, null, null, null, false );
+ createPhase( macLogger.logger, null ).addArtifact( macTask.artifact, null, null, null, null, false );
fail( "Expected ArchiveCreationException since artifact file is null." );
}
@@ -183,8 +387,8 @@
mm.replayAll();
- createPhase( macLogger.logger ).addArtifact( macTask.artifact, project, macTask.archiver, macTask.configSource,
- binaries, false );
+ createPhase( macLogger.logger, null ).addArtifact( macTask.artifact, project, macTask.archiver,
+ macTask.configSource, binaries, false );
mm.verifyAll();
}
@@ -198,7 +402,7 @@
mm.replayAll();
- createPhase( macLogger.logger ).addModuleSourceFileSets( null, null, null, null, false );
+ createPhase( macLogger.logger, null ).addModuleSourceFileSets( null, null, null, null, false );
mm.verifyAll();
}
@@ -232,8 +436,8 @@
mm.replayAll();
- createPhase( macLogger.logger ).addModuleSourceFileSets( sources, projects, macTask.archiver,
- macTask.configSource, false );
+ createPhase( macLogger.logger, null ).addModuleSourceFileSets( sources, projects, macTask.archiver,
+ macTask.configSource, false );
mm.verifyAll();
}
@@ -257,7 +461,7 @@
mm.replayAll();
- Set moduleProjects = createPhase( macLogger.logger ).getModuleProjects( moduleSet, macCS.configSource );
+ Set moduleProjects = createPhase( macLogger.logger, null ).getModuleProjects( moduleSet, macCS.configSource );
assertTrue( moduleProjects.isEmpty() );
@@ -286,7 +490,7 @@
mm.replayAll();
- Set moduleProjects = createPhase( macLogger.logger ).getModuleProjects( moduleSet, macCS.configSource );
+ Set moduleProjects = createPhase( macLogger.logger, null ).getModuleProjects( moduleSet, macCS.configSource );
assertTrue( moduleProjects.isEmpty() );
@@ -315,7 +519,7 @@
mm.replayAll();
- Set moduleProjects = createPhase( macLogger.logger ).getModuleProjects( moduleSet, macCS.configSource );
+ Set moduleProjects = createPhase( macLogger.logger, null ).getModuleProjects( moduleSet, macCS.configSource );
assertFalse( moduleProjects.isEmpty() );
@@ -350,7 +554,7 @@
mm.replayAll();
- Set moduleProjects = createPhase( macLogger.logger ).getModuleProjects( moduleSet, macCS.configSource );
+ Set moduleProjects = createPhase( macLogger.logger, null ).getModuleProjects( moduleSet, macCS.configSource );
assertEquals( 2, moduleProjects.size() );
@@ -371,14 +575,20 @@
MockAndControlForLogger macLogger = new MockAndControlForLogger( mm );
MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
+ List macArtifacts = new ArrayList();
+
MavenProject project = createProject( "group", "artifact", "version", null );
- addArtifact( project, mm, false, false );
+ macArtifacts.add( addArtifact( project, mm, false, false ) );
MavenProject project2 = createProject( "group", "artifact2", "version", project );
- addArtifact( project2, mm, true, false );
+ macArtifacts.add( addArtifact( project2, mm, true, false ) );
+
+ ( ( MockAndControlForArtifact ) macArtifacts.get( 1 ) ).expectGetId( "group:artifact2:jar:version" );
MavenProject project3 = createProject( "group", "artifact3", "version", project2 );
- addArtifact( project3, mm, true, true );
+ macArtifacts.add( addArtifact( project3, mm, true, true ) );
+
+ ( ( MockAndControlForArtifact ) macArtifacts.get( 2 ) ).expectGetId( "group:artifact3:jar:version" );
List projects = new ArrayList();
projects.add( project );
@@ -394,15 +604,15 @@
mm.replayAll();
- Set moduleProjects = createPhase( macLogger.logger ).getModuleProjects( moduleSet, macCS.configSource );
+ Set moduleProjects = createPhase( macLogger.logger, null ).getModuleProjects( moduleSet, macCS.configSource );
assertTrue( moduleProjects.isEmpty() );
mm.verifyAll();
}
- private void addArtifact( MavenProject project, MockManager mm, boolean expectIdentityChecks,
- boolean expectDepTrailCheck )
+ private MockAndControlForArtifact addArtifact( MavenProject project, MockManager mm, boolean expectIdentityChecks,
+ boolean expectDepTrailCheck )
{
MockAndControlForArtifact macArtifact = new MockAndControlForArtifact( mm );
@@ -430,6 +640,8 @@
}
project.setArtifact( macArtifact.artifact );
+
+ return macArtifact;
}
private void verifyResultIs( List check, Set moduleProjects )
@@ -505,9 +717,9 @@
return project;
}
- private ModuleSetAssemblyPhase createPhase( Logger logger )
+ private ModuleSetAssemblyPhase createPhase( Logger logger, MavenProjectBuilder projectBuilder )
{
- ModuleSetAssemblyPhase phase = new ModuleSetAssemblyPhase();
+ ModuleSetAssemblyPhase phase = new ModuleSetAssemblyPhase( projectBuilder );
phase.enableLogging( logger );
@@ -520,21 +732,63 @@
MockControl control;
- public MockAndControlForArtifact( MockManager mm )
+ File artifactFile;
+
+ ArtifactHandler handler;
+
+ MockControl handlerControl;
+
+ private final MockManager mm;
+
+ MockAndControlForArtifact( MockManager mm )
{
+ this.mm = mm;
control = MockControl.createControl( Artifact.class );
mm.add( control );
artifact = ( Artifact ) control.getMock();
}
- public void expectGetDependencyTrail( LinkedList depTrail )
+ void expectGetClassifier()
+ {
+ artifact.getClassifier();
+ control.setReturnValue( null, MockControl.ONE_OR_MORE );
+ }
+
+ void expectGetArtifactHandler()
+ {
+ handlerControl = MockControl.createControl( ArtifactHandler.class );
+ mm.add( handlerControl );
+
+ handler = ( ArtifactHandler ) handlerControl.getMock();
+
+ artifact.getArtifactHandler();
+ control.setReturnValue( handler, MockControl.ONE_OR_MORE );
+ }
+
+ void expectGetFile()
+ throws IOException
+ {
+ this.artifactFile = fileManager.createTempFile();
+
+ artifact.getFile();
+
+ control.setReturnValue( artifactFile, MockControl.ONE_OR_MORE );
+ }
+
+ void expectGetId( String id )
+ {
+ artifact.getId();
+ control.setReturnValue( id, MockControl.ONE_OR_MORE );
+ }
+
+ void expectGetDependencyTrail( List depTrail )
{
artifact.getDependencyTrail();
- control.setReturnValue( depTrail, MockControl.ONE_OR_MORE );
+ control.setReturnValue( new LinkedList( depTrail ), MockControl.ONE_OR_MORE );
}
- public void expectGetDependencyConflictId( String groupId, String artifactId, String packaging )
+ void expectGetDependencyConflictId( String groupId, String artifactId, String packaging )
{
artifact.getDependencyConflictId();
control.setReturnValue( groupId + ":" + artifactId + ":" + packaging, MockControl.ONE_OR_MORE );
@@ -565,6 +819,13 @@
mockManager.add( control );
logger = ( Logger ) control.getMock();
+ }
+
+ public void expectWarn()
+ {
+ logger.warn( null );
+ control.setMatcher( MockControl.ALWAYS_MATCHER );
+ control.setVoidCallable( MockControl.ONE_OR_MORE );
}
public void expectDebug( boolean debugCheck, boolean debugEnabled )
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java Wed Aug 2 16:32:41 2006
@@ -4,12 +4,14 @@
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.easymock.MockControl;
import java.io.File;
import java.io.IOException;
+import java.util.List;
import junit.framework.Assert;
@@ -161,10 +163,41 @@
}
}
+ public void expectAddFile( File file, String outputLocation, int fileMode )
+ {
+ try
+ {
+ archiver.addFile( file, outputLocation, fileMode );
+ archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+ }
+ catch ( ArchiverException e )
+ {
+ Assert.fail( "Should never happen." );
+ }
+ }
+
public void expectArtifactGetScope( String scope )
{
artifact.getScope();
artifactCtl.setReturnValue( scope, MockControl.ONE_OR_MORE );
+ }
+
+ public void expectGetProject( MavenProject project )
+ {
+ configSource.getProject();
+ configSourceCtl.setReturnValue( project, MockControl.ONE_OR_MORE );
+ }
+
+ public void expectGetReactorProjects( List projects )
+ {
+ configSource.getReactorProjects();
+ configSourceCtl.setReturnValue( projects, MockControl.ONE_OR_MORE );
+ }
+
+ public void expectArtifactGetDependencyConflictId( String dependencyConflictId )
+ {
+ artifact.getDependencyConflictId();
+ artifactCtl.setReturnValue( dependencyConflictId, MockControl.ONE_OR_MORE );
}
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyArtifactFilterTCK.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyArtifactFilterTCK.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyArtifactFilterTCK.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyArtifactFilterTCK.java Wed Aug 2 16:32:41 2006
@@ -204,11 +204,18 @@
enableGetDependencyConflictId();
enableGetGroupIdAndArtifactId();
+ enableGetId();
if ( dependencyTrail != null )
{
enableGetDependencyTrail();
}
+ }
+
+ void enableGetId()
+ {
+ artifact.getId();
+ control.setReturnValue( groupId + ":" + artifactId + ":type:version", MockControl.ZERO_OR_MORE );
}
void enableGetDependencyTrail()
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilterTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilterTest.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilterTest.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/filter/AssemblyScopeArtifactFilterTest.java Wed Aug 2 16:32:41 2006
@@ -139,12 +139,19 @@
artifact = (Artifact) control.getMock();
enableGetScope();
+ enableGetId();
}
void enableGetScope()
{
artifact.getScope();
control.setReturnValue( scope, MockControl.ONE_OR_MORE );
+ }
+
+ void enableGetId()
+ {
+ artifact.getId();
+ control.setReturnValue( "group:artifact:type:version", MockControl.ZERO_OR_MORE );
}
}
Modified: maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java?rev=428190&r1=428189&r2=428190&view=diff
==============================================================================
--- maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java (original)
+++ maven/plugins/branches/MASSEMBLY-124/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java Wed Aug 2 16:32:41 2006
@@ -39,6 +39,13 @@
mockManager.add( loggerCtl );
logger = (Logger) loggerCtl.getMock();
+
+ logger.isDebugEnabled();
+ loggerCtl.setReturnValue( true, MockControl.ZERO_OR_MORE );
+
+ logger.debug( null );
+ loggerCtl.setMatcher( MockControl.ALWAYS_MATCHER );
+ loggerCtl.setVoidCallable( MockControl.ZERO_OR_MORE );
}
public void testFilterArtifacts_ShouldNotRemoveArtifactDirectlyIncluded()
@@ -54,18 +61,15 @@
public void testFilterArtifacts_ShouldRemoveArtifactTransitivelyExcluded()
{
- enableLoggerDebugging();
verifyArtifactExclusion( "group", "artifact", null, "group:dependentArtifact", Collections.singletonList( "group:dependentArtifact" ), null );
}
public void testFilterArtifacts_ShouldRemoveArtifactDirectlyExcluded()
{
- enableLoggerDebugging();
verifyArtifactExclusion( "group", "artifact", null, "group:artifact", null, null );
clearAll();
- enableLoggerDebugging();
verifyArtifactExclusion( "group", "artifact", null, "group:artifact:jar", null, null );
}
@@ -87,8 +91,6 @@
};
- enableLoggerDebugging();
-
logger.isWarnEnabled();
loggerCtl.setReturnValue( true );
@@ -98,17 +100,6 @@
verifyArtifactExclusion( "group", "artifact", "fail:fail", null, null, filter );
}
- private void enableLoggerDebugging()
- {
- logger.isDebugEnabled();
- loggerCtl.setReturnValue( true, MockControl.ONE_OR_MORE );
-
- logger.debug( null );
- loggerCtl.setMatcher( MockControl.ALWAYS_MATCHER );
- loggerCtl.setVoidCallable( MockControl.ONE_OR_MORE );
- }
-
-
public void testFilterProjects_ShouldNotRemoveProjectDirectlyIncluded()
{
verifyProjectInclusion( "group", "artifact", "group:artifact", null, null );