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 2007/08/22 03:28:35 UTC
svn commit: r568360 [3/3] - in /maven/plugins/trunk/maven-assembly-plugin: ./
src/functional-tests/java/org/apache/maven/plugin/assembly/interpolation/
src/functional-tests/resources/basicAbstractAssemblyMojoFeaturesTest/
src/it/basic-features/ src/it/...
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java Tue Aug 21 18:28:22 2007
@@ -3,6 +3,7 @@
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddArtifactTask;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddFileSetsTask;
@@ -108,7 +109,9 @@
MavenProject project = new MavenProject( model );
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, "test", project );
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, project );
+
+ macTask.expectGetFinalName( null );
FileSet fs = new FileSet();
@@ -121,12 +124,9 @@
artifactProject.setFile( new File( basedir, "pom.xml" ) );
- MockAndControlForArtifact macArtifact = new MockAndControlForArtifact( mm );
-
- macArtifact.expectIsSnapshot( false );
- macArtifact.expectGetArtifactHandler();
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
- artifactProject.setArtifact( macArtifact.artifact );
+ artifactProject.setArtifact( artifactMock.getArtifact() );
mm.replayAll();
@@ -150,7 +150,9 @@
MavenProject project = new MavenProject( model );
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, "test", project );
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, project );
+
+ macTask.expectGetFinalName( null );
FileSet fs = new FileSet();
fs.setOutputDirectory( "out" );
@@ -164,12 +166,9 @@
artifactProject.setFile( new File( basedir, "pom.xml" ) );
- MockAndControlForArtifact macArtifact = new MockAndControlForArtifact( mm );
-
- macArtifact.expectIsSnapshot( false );
- macArtifact.expectGetArtifactHandler();
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
- artifactProject.setArtifact( macArtifact.artifact );
+ artifactProject.setArtifact( artifactMock.getArtifact() );
mm.replayAll();
@@ -188,7 +187,9 @@
{
MockManager mm = new MockManager();
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, "test", null );
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, null );
+
+ macTask.expectGetFinalName( null );
FileSet fs = new FileSet();
@@ -206,12 +207,9 @@
project.setFile( new File( basedir, "pom.xml" ) );
- MockAndControlForArtifact macArtifact = new MockAndControlForArtifact( mm );
-
- macArtifact.expectIsSnapshot( false );
- macArtifact.expectGetArtifactHandler();
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
- project.setArtifact( macArtifact.artifact );
+ project.setArtifact( artifactMock.getArtifact() );
mm.replayAll();
@@ -243,12 +241,13 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, null, project );
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, project );
MavenProject module = createProject( "group", "module", "version", project );
- macTask.expectArtifactGetFile();
- module.setArtifact( macTask.artifact );
+ ArtifactMock moduleArtifactMock = new ArtifactMock( mm, "group", "module", "version", "jar", false );
+ File moduleArtifactFile = moduleArtifactMock.setNewFile();
+ module.setArtifact( moduleArtifactMock.getArtifact() );
List projects = new ArrayList();
@@ -256,12 +255,10 @@
macTask.expectGetReactorProjects( projects );
macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
int mode = TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
- macTask.expectAddFile( "out/artifact", mode );
+ macTask.expectAddFile( moduleArtifactFile, "out/artifact", mode );
Assembly assembly = new Assembly();
assembly.setIncludeBaseDirectory( false );
@@ -312,7 +309,9 @@
MavenProject project = createProject( "group", "artifact", "version", null );
project.setPackaging( "pom" );
- project.setArtifact( macTask.artifact );
+
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "pom", false );
+ project.setArtifact( artifactMock.getArtifact() );
Set projects = Collections.singleton( project );
@@ -331,13 +330,13 @@
{
MockManager mm = new MockManager();
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, "test", null );
+ MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, null );
+
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", "test", false );
+ File artifactFile = artifactMock.setNewFile();
- macTask.expectArtifactGetFile( true );
macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
- macTask.expectAddFile( "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ macTask.expectAddFile( artifactFile, "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
ModuleBinaries binaries = new ModuleBinaries();
@@ -349,7 +348,7 @@
binaries.setAttachmentClassifier( "test" );
MavenProject project = createProject( "group", "artifact", "version", null );
- project.addAttachedArtifact( macTask.artifact );
+ project.addAttachedArtifact( artifactMock.getArtifact() );
Set projects = Collections.singleton( project );
@@ -369,7 +368,8 @@
MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
- macTask.expectArtifactGetFile( true );
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", "test", false );
+ artifactMock.setNewFile();
ModuleBinaries binaries = new ModuleBinaries();
@@ -380,7 +380,7 @@
binaries.setAttachmentClassifier( "test" );
MavenProject project = createProject( "group", "artifact", "version", null );
- project.setArtifact( macTask.artifact );
+ project.setArtifact( artifactMock.getArtifact() );
Set projects = Collections.singleton( project );
@@ -410,11 +410,11 @@
MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
- macTask.expectArtifactGetFile( true );
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
+
macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
- macTask.expectAddFile( "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ macTask.expectAddFile( artifactFile, "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
ModuleBinaries binaries = new ModuleBinaries();
@@ -425,7 +425,7 @@
binaries.setOutputFileNameMapping( "artifact" );
MavenProject project = createProject( "group", "artifact", "version", null );
- project.setArtifact( macTask.artifact );
+ project.setArtifact( artifactMock.getArtifact() );
Set projects = Collections.singleton( project );
@@ -446,11 +446,11 @@
MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm );
- macTask.expectArtifactGetFile( true );
- macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
- macTask.expectAddFile( "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
+
+ macTask.expectCSGetFinalName( "final-name" );
+ macTask.expectAddFile( artifactFile, "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
ModuleBinaries binaries = new ModuleBinaries();
@@ -462,35 +462,26 @@
DependencySet ds = new DependencySet();
ds.setUseProjectArtifact( false );
ds.setOutputDirectory( binaries.getOutputDirectory() );
- ds.setOutputFileNameMapping( "${artifactId}" );
+ ds.setOutputFileNameMapping( "${artifact.artifactId}" );
ds.setFileMode( "777" );
binaries.addDependencySet( ds );
MavenProject project = createProject( "group", "artifact", "version", null );
- project.setArtifact( macTask.artifact );
-
- MockAndControlForArtifact macDepArtifact = new MockAndControlForArtifact( mm );
+ project.setArtifact( artifactMock.getArtifact() );
- macDepArtifact.expectGetType( "jar" );
- macDepArtifact.expectIsSnapshot( false );
- macDepArtifact.expectGetArtifactHandler();
- macDepArtifact.expectGetArtifactId( "dep" );
+ ArtifactMock depArtifactMock = new ArtifactMock( mm, "group", "dep", "1", "jar", false );
+ File depArtifactFile = depArtifactMock.setNewFile();
- File artifactFile = fileManager.createTempFile();
-
- macDepArtifact.expectGetFile( artifactFile );
-
- macTask.expectAddFile( artifactFile, "out/dep", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ macTask.expectAddFile( depArtifactFile, "out/dep", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
MavenProject depProject = createProject( "group", "dep", "version", null );
-
- depProject.setArtifact( macDepArtifact.artifact );
+ depProject.setArtifact( depArtifactMock.getArtifact() );
macTask.expectBuildFromRepository( depProject );
macTask.expectCSGetRepositories( null, null );
- macTask.expectResolveDependencies( Collections.singleton( macDepArtifact.artifact ) );
+ macTask.expectResolveDependencies( Collections.singleton( depArtifactMock.getArtifact() ) );
Set projects = Collections.singleton( project );
@@ -513,46 +504,38 @@
MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm );
- macTask.expectArtifactGetFile( true );
- macTask.expectArtifactGetArtifactId( "artifact" );
- macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
- macTask.expectArtifactGetType( "jar" );
- macTask.expectAddFile( "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ ArtifactMock moduleArtifactMock = new ArtifactMock( mm, "group", "artifact", "0", "jar", false );
+ File moduleArtifactFile = moduleArtifactMock.setNewFile();
+
+ macTask.expectCSGetFinalName( "final-name" );
+
+ int mode = TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
+
+ macTask.expectAddFile( moduleArtifactFile, "out/artifact", mode );
ModuleBinaries binaries = new ModuleBinaries();
binaries.setUnpack( false );
binaries.setFileMode( "777" );
binaries.setOutputDirectory( "out" );
- binaries.setOutputFileNameMapping( "${artifactId}" );
+ binaries.setOutputFileNameMapping( "${artifact.artifactId}" );
binaries.setIncludeDependencies( true );
MavenProject project = createProject( "group", "artifact", "version", null );
- project.setArtifact( macTask.artifact );
-
- MockAndControlForArtifact macDepArtifact = new MockAndControlForArtifact( mm );
-
- macDepArtifact.expectGetType( "jar" );
- macDepArtifact.expectIsSnapshot( false );
- macDepArtifact.expectGetArtifactHandler();
- macDepArtifact.expectGetArtifactId( "dep" );
+ project.setArtifact( moduleArtifactMock.getArtifact() );
- File artifactFile = fileManager.createTempFile();
+ ArtifactMock depArtifactMock = new ArtifactMock( mm, "group", "dep", "1", "jar", false );
+ File depArtifactFile = depArtifactMock.setNewFile();
- macDepArtifact.expectGetFile( artifactFile );
-
- macTask.expectAddFile( artifactFile, "out/dep", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ macTask.expectAddFile( depArtifactFile, "out/dep", mode );
MavenProject depProject = createProject( "group", "dep", "version", null );
-
- depProject.setArtifact( macDepArtifact.artifact );
+ depProject.setArtifact( depArtifactMock.getArtifact() );
macTask.expectBuildFromRepository( depProject );
macTask.expectCSGetRepositories( null, null );
- macTask.expectResolveDependencies( Collections.singleton( macDepArtifact.artifact ) );
+ macTask.expectResolveDependencies( Collections.singleton( depArtifactMock.getArtifact() ) );
Set projects = Collections.singleton( project );
@@ -608,23 +591,19 @@
mm.verifyAll();
}
- public void testAddArtifact_ShouldThrowExceptionWhenArtifactFileIsNull()
+ public void testAddModuleArtifact_ShouldThrowExceptionWhenArtifactFileIsNull()
throws AssemblyFormattingException, IOException
{
MockManager mm = new MockManager();
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
-
- macTask.expectArtifactGetFile( false );
-
- macTask.artifact.getId();
- macTask.artifactCtl.setReturnValue( "group:artifact:type:version" );
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "type", false );
+ artifactMock.setNullFile();
mm.replayAll();
try
{
- createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addArtifact( macTask.artifact, null,
+ createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleArtifact( artifactMock.getArtifact(), null,
null, null, null );
fail( "Expected ArchiveCreationException since artifact file is null." );
@@ -637,22 +616,22 @@
mm.verifyAll();
}
- public void testAddArtifact_ShouldAddOneArtifact()
+ public void testAddModuleArtifact_ShouldAddOneArtifact()
throws AssemblyFormattingException, IOException, ArchiveCreationException
{
MockManager mm = new MockManager();
MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "type", false );
+ File artifactFile = artifactMock.setNewFile();
+
MavenProject project = createProject( "group", "artifact", "version", null );
- project.setArtifact( macTask.artifact );
+ project.setArtifact( artifactMock.getArtifact() );
- macTask.expectArtifactGetFile();
macTask.expectGetFinalName( "final-name" );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
- macTask.expectAddFile( "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
+ macTask.expectAddFile( artifactFile, "out/artifact", TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ) );
ModuleBinaries binaries = new ModuleBinaries();
binaries.setOutputDirectory( "out" );
@@ -662,7 +641,7 @@
mm.replayAll();
- createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addArtifact( macTask.artifact, project,
+ createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleArtifact( artifactMock.getArtifact(), project,
macTask.archiver,
macTask.configSource,
binaries );
@@ -694,12 +673,9 @@
macTask.expectGetProject( project );
- MockAndControlForArtifact macArtifact = new MockAndControlForArtifact( mm );
-
- macArtifact.expectIsSnapshot( false );
- macArtifact.expectGetArtifactHandler();
+ ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "jar", false );
- project.setArtifact( macArtifact.artifact );
+ project.setArtifact( artifactMock.getArtifact() );
Set projects = Collections.singleton( project );
@@ -736,7 +712,7 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, null, project );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, project );
List projects = Collections.singletonList( project );
@@ -761,7 +737,7 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, null, project );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, project );
MavenProject project2 = createProject( "group", "artifact2", "version", null );
@@ -790,7 +766,7 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, null, project );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, project );
MavenProject project2 = createProject( "group", "artifact2", "version", project );
@@ -823,7 +799,7 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, null, project );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, project );
MavenProject project2 = createProject( "group", "artifact2", "version", project );
MavenProject project3 = createProject( "group", "artifact3", "version", project2 );
@@ -860,7 +836,7 @@
MavenProject project = createProject( "group", "artifact", "version", null );
- MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, null, project );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm, project );
List macArtifacts = new ArrayList();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java Tue Aug 21 18:28:22 2007
@@ -1,15 +1,20 @@
package org.apache.maven.plugin.assembly.archive.task;
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddArtifactTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.model.DependencySet;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
+import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.console.ConsoleLogger;
+import java.io.File;
import java.io.IOException;
import java.util.Arrays;
@@ -23,27 +28,70 @@
private MockAndControlForAddArtifactTask mac;
+ private MavenProject mainProject;
+
public void setUp()
throws IOException
{
mockManager = new MockManager();
- mac = new MockAndControlForAddArtifactTask( mockManager );
- mac.expectArtifactGetFile();
+ Model model = new Model();
+ model.setGroupId( "group" );
+ model.setArtifactId( "main" );
+ model.setVersion( "1000" );
+
+ mainProject = new MavenProject( model );
+
+ mac = new MockAndControlForAddArtifactTask( mockManager, mainProject );
mac.expectGetFinalName( "final-name" );
}
public void testShouldAddArchiveFileWithoutUnpacking()
- throws ArchiveCreationException, AssemblyFormattingException
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
{
String outputLocation = "artifact";
- mac.expectAddFile( outputLocation );
- mac.expectIsSnapshot( false );
- mac.expectGetArtifactHandler();
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
+
+ mac.expectAddFile( artifactFile, outputLocation );
+
mockManager.replayAll();
- AddArtifactTask task = createTask( mac.artifact );
+ AddArtifactTask task = createTask( artifactMock.getArtifact() );
+
+ task.execute( mac.archiver, mac.configSource );
+
+ mockManager.verifyAll();
+ }
+
+ public void testShouldAddArchiveFileWithDefaultOutputLocation()
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
+ {
+ String artifactId = "myArtifact";
+ String version = "1";
+ String ext = "jar";
+ String outputDir = "tmp/";
+
+ ArtifactMock mock = new ArtifactMock( mockManager, "group", artifactId, version, ext, false );
+
+ File file = mock.setNewFile();
+ mock.setExtension( ext );
+
+ mac.expectAddFile( file, outputDir + artifactId + "-" + version + "." + ext );
+
+ mockManager.replayAll();
+
+ AddArtifactTask task = new AddArtifactTask( mock.getArtifact(), new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
+ task.setOutputDirectory( outputDir );
+ task.setFileNameMapping( new DependencySet().getOutputFileNameMapping() );
+
+ Model model = new Model();
+ model.setArtifactId( artifactId );
+ model.setVersion( version );
+
+ MavenProject project = new MavenProject( model );
+ task.setProject( project );
task.execute( mac.archiver, mac.configSource );
@@ -60,16 +108,18 @@
}
public void testShouldAddArchiveFileWithUnpack()
- throws ArchiveCreationException, AssemblyFormattingException
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
{
mac.expectModeChange( -1, -1, -1, -1, 1 );
-// mac.expectIsSnapshot( false );
+
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
String outputLocation = "";
try
{
- mac.archiver.addArchivedFileSet( mac.artifactFile, outputLocation, null, null );
+ mac.archiver.addArchivedFileSet( artifactFile, outputLocation, null, null );
}
catch ( ArchiverException e )
{
@@ -78,7 +128,7 @@
mockManager.replayAll();
- AddArtifactTask task = createTask( mac.artifact );
+ AddArtifactTask task = createTask( artifactMock.getArtifact() );
task.setUnpack( true );
@@ -88,7 +138,7 @@
}
public void testShouldAddArchiveFileWithUnpackAndModes()
- throws ArchiveCreationException, AssemblyFormattingException
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
{
int directoryMode = TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
int fileMode = TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
@@ -98,9 +148,12 @@
String outputLocation = "";
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
+
try
{
- mac.archiver.addArchivedFileSet( mac.artifactFile, outputLocation, null, null );
+ mac.archiver.addArchivedFileSet( artifactFile, outputLocation, null, null );
}
catch ( ArchiverException e )
{
@@ -109,7 +162,7 @@
mockManager.replayAll();
- AddArtifactTask task = createTask( mac.artifact );
+ AddArtifactTask task = createTask( artifactMock.getArtifact() );
task.setUnpack( true );
task.setDirectoryMode( "777" );
@@ -121,7 +174,7 @@
}
public void testShouldAddArchiveFileWithUnpackIncludesAndExcludes()
- throws ArchiveCreationException, AssemblyFormattingException
+ throws ArchiveCreationException, AssemblyFormattingException, IOException
{
mac.expectModeChange( -1, -1, -1, -1, 1 );
@@ -130,11 +183,14 @@
String[] includes = { "**/*.txt" };
String[] excludes = { "**/README.txt" };
- mac.expectAddArchivedFileSet( outputLocation, includes, excludes );
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
+
+ mac.expectAddArchivedFileSet( artifactFile, outputLocation, includes, excludes );
mockManager.replayAll();
- AddArtifactTask task = createTask( mac.artifact );
+ AddArtifactTask task = createTask( artifactMock.getArtifact() );
task.setUnpack( true );
task.setIncludes( Arrays.asList( includes ) );
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java Tue Aug 21 18:28:22 2007
@@ -4,6 +4,7 @@
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForArtifact;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
@@ -13,6 +14,7 @@
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.console.ConsoleLogger;
+import java.io.File;
import java.io.IOException;
import java.util.Collections;
import java.util.HashSet;
@@ -26,6 +28,70 @@
private MockManager mockManager = new MockManager();
+ public void testAddDependencySet_ShouldInterpolateDefaultOutputFileNameMapping()
+ throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException, IOException
+ {
+ String outDir = "tmp/";
+ String mainAid = "main";
+ String mainGid = "org.maingrp";
+ String mainVer = "9";
+ String depAid = "dep";
+ String depGid = "org.depgrp";
+ String depVer = "1";
+ String depExt = "war";
+
+ DependencySet ds = new DependencySet();
+ ds.setOutputDirectory( outDir );
+ ds.setDirectoryMode( Integer.toString( 10, 8 ) );
+ ds.setFileMode( Integer.toString( 10, 8 ) );
+
+ Model mainModel = new Model();
+ mainModel.setArtifactId( mainAid );
+ mainModel.setGroupId( mainGid );
+ mainModel.setVersion( mainVer );
+
+ MavenProject mainProject = new MavenProject( mainModel );
+
+ ArtifactMock mainArtifactMock = new ArtifactMock( mockManager, mainGid, mainAid, mainVer, "jar", false );
+
+ mainProject.setArtifact( mainArtifactMock.getArtifact() );
+
+ Model depModel = new Model();
+ depModel.setArtifactId( depAid );
+ depModel.setGroupId( depGid );
+ depModel.setVersion( depVer );
+ depModel.setPackaging( depExt );
+
+ MavenProject depProject = new MavenProject( depModel );
+
+ ArtifactMock depArtifactMock = new ArtifactMock( mockManager, depGid, depAid, depVer, depExt, false );
+
+ File newFile = depArtifactMock.setNewFile();
+
+ depProject.setArtifact( depArtifactMock.getArtifact() );
+
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mockManager, mainProject );
+
+ macTask.expectBuildFromRepository( depProject );
+ macTask.expectCSGetFinalName( mainAid + "-" + mainVer );
+
+ macTask.expectCSGetRepositories( null, null );
+ macTask.expectResolveDependencies( Collections.singleton( depArtifactMock.getArtifact() ) );
+
+ macTask.expectAddFile( newFile, outDir + depAid + "-" + depVer + "." + depExt, 10 );
+
+ mockManager.replayAll();
+
+ Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
+
+ AddDependencySetsTask task = new AddDependencySetsTask( Collections.singletonList( ds ), depProject, macTask.projectBuilder,
+ macTask.dependencyResolver, logger );
+
+ task.addDependencySet( ds, macTask.archiver, macTask.configSource );
+
+ mockManager.verifyAll();
+ }
+
public void testAddDependencySet_ShouldNotAddDependenciesWhenProjectHasNone()
throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException
{
@@ -79,22 +145,20 @@
MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mockManager );
- macTask.expectArtifactGetFile();
- macTask.expectArtifactGetType( "jar" );
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+ File artifactFile = artifactMock.setNewFile();
macTask.expectCSGetRepositories( null, null );
- macTask.expectResolveDependencies( Collections.singleton( macTask.artifact ) );
+ macTask.expectResolveDependencies( Collections.singleton( artifactMock.getArtifact() ) );
if ( unpack )
{
- macTask.expectAddArchivedFileSet( outputLocation + "/", null, null );
+ macTask.expectAddArchivedFileSet( artifactFile, outputLocation + "/", null, null );
macTask.expectModeChange( -1, -1, 10, 10, 2 );
}
else
{
- macTask.expectAddFile( outputLocation + "/artifact", 10 );
- macTask.expectIsSnapshot( false );
- macTask.expectGetArtifactHandler();
+ macTask.expectAddFile( artifactFile, outputLocation + "/artifact", 10 );
}
macTask.expectCSGetFinalName( "final-name" );
@@ -122,10 +186,12 @@
MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mockManager );
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", "version", "jar", false );
+
macTask.expectCSGetRepositories( null, null );
- macTask.expectResolveDependencies( Collections.singleton( macTask.artifact ) );
+ macTask.expectResolveDependencies( Collections.singleton( artifactMock.getArtifact() ) );
- project.setArtifacts( Collections.singleton( macTask.artifact ) );
+ project.setArtifacts( Collections.singleton( artifactMock.getArtifact() ) );
DependencySet dependencySet = new DependencySet();
@@ -140,7 +206,7 @@
assertNotNull( result );
assertEquals( 1, result.size() );
- assertSame( macTask.artifact, result.iterator().next() );
+ assertSame( artifactMock.getArtifact(), result.iterator().next() );
mockManager.verifyAll();
}
Added: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java?rev=568360&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java Tue Aug 21 18:28:22 2007
@@ -0,0 +1,273 @@
+package org.apache.maven.plugin.assembly.archive.task.testutils;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.handler.ArtifactHandler;
+import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.easymock.MockControl;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.List;
+
+public class ArtifactMock
+{
+
+ private final MockControl artifactCtl;
+ private final Artifact artifact;
+
+ private final MockControl handlerCtl;
+ private final ArtifactHandler handler;
+ private String groupId;
+ private String artifactId;
+ private String baseVersion;
+ private File file;
+ private String scope;
+ private Boolean isSnapshot;
+ private String version;
+ private List dependencyTrail;
+ private String id;
+ private String dependencyConflictId;
+ private String typeAndExt;
+ private String classifier;
+
+ public ArtifactMock( MockManager mockManager, String groupId, String artifactId, String version, String type, boolean isSnapshot )
+ {
+ this( mockManager, groupId, artifactId, version, type, null, isSnapshot, null );
+ }
+
+ public ArtifactMock( MockManager mockManager, String groupId, String artifactId, String version, String type, boolean isSnapshot, String baseVersion )
+ {
+ this( mockManager, groupId, artifactId, version, type, null, isSnapshot, baseVersion );
+ }
+
+ public ArtifactMock( MockManager mockManager, String groupId, String artifactId, String version, String type, String classifier, boolean isSnapshot )
+ {
+ this( mockManager, groupId, artifactId, version, type, classifier, isSnapshot, null );
+ }
+
+ public ArtifactMock( MockManager mockManager, String groupId, String artifactId, String version, String type, String classifier, boolean isSnapshot, String baseVersion )
+ {
+ artifactCtl = MockControl.createControl( Artifact.class );
+
+ mockManager.add( artifactCtl );
+
+ artifact = (Artifact) artifactCtl.getMock();
+
+ handlerCtl = MockControl.createControl( ArtifactHandler.class );
+
+ mockManager.add( handlerCtl );
+
+ handler = (ArtifactHandler) handlerCtl.getMock();
+
+ artifact.getArtifactHandler();
+ artifactCtl.setReturnValue( handler, MockControl.ZERO_OR_MORE );
+
+ this.classifier = classifier;
+ artifact.getClassifier();
+ artifactCtl.setReturnValue( classifier, MockControl.ZERO_OR_MORE );
+
+ setSnapshot( isSnapshot );
+ setGroupId( groupId );
+ setArtifactId( artifactId );
+ setVersion( version );
+ setBaseVersion( baseVersion );
+ setType( type );
+
+ setId();
+ setDependencyConflictId();
+ }
+
+ public void setExtension( String extension )
+ {
+ setTypeAndExt( extension );
+ }
+
+ public MockControl getArtifactCtl()
+ {
+ return artifactCtl;
+ }
+
+ public Artifact getArtifact()
+ {
+ return artifact;
+ }
+
+ public void setArtifactId( String artifactId )
+ {
+ if ( ( artifactId != null ) && ( this.artifactId == null ) )
+ {
+ artifact.getArtifactId();
+ artifactCtl.setReturnValue( artifactId, MockControl.ZERO_OR_MORE );
+
+ this.artifactId = artifactId;
+ }
+ }
+
+ public void setBaseVersion( String baseVersion )
+ {
+ if ( ( baseVersion != null ) && ( this.baseVersion == null ) )
+ {
+ artifact.getBaseVersion();
+ artifactCtl.setReturnValue( baseVersion, MockControl.ZERO_OR_MORE );
+
+ this.baseVersion = baseVersion;
+ }
+ }
+
+ public void setFile( File destination )
+ {
+ if ( ( file != null ) && ( file == null ) )
+ {
+ artifact.getFile();
+ artifactCtl.setReturnValue( destination, MockControl.ZERO_OR_MORE );
+
+ file = destination;
+ }
+ }
+
+ public void setGroupId( String groupId )
+ {
+ if ( ( groupId != null ) && ( this.groupId == null ) )
+ {
+ artifact.getGroupId();
+ artifactCtl.setReturnValue( groupId, MockControl.ZERO_OR_MORE );
+
+ this.groupId = groupId;
+ }
+ }
+
+ public void setScope( String scope )
+ {
+ if ( ( scope != null ) && ( this.scope == null ) )
+ {
+ artifact.getScope();
+ artifactCtl.setReturnValue( scope, MockControl.ZERO_OR_MORE );
+
+ this.scope = scope;
+ }
+ }
+
+ public void setVersion( String version )
+ {
+ if ( ( version != null ) && ( this.version == null ) )
+ {
+ artifact.getVersion();
+ artifactCtl.setReturnValue( version, MockControl.ZERO_OR_MORE );
+
+ this.version = version;
+
+ if ( isSnapshot != Boolean.TRUE )
+ {
+ setBaseVersion( version );
+ setSnapshot( false );
+ }
+ }
+ }
+
+ public void setDependencyTrail( List dependencyTrail )
+ {
+ if ( ( dependencyTrail != null ) && ( this.dependencyTrail == null ) )
+ {
+ artifact.getDependencyTrail();
+ artifactCtl.setReturnValue( dependencyTrail, MockControl.ZERO_OR_MORE );
+
+ this.dependencyTrail = dependencyTrail;
+ }
+ }
+
+ public void setId( String id )
+ {
+ if ( ( id != null ) && ( this.id == null ) )
+ {
+ artifact.getId();
+ artifactCtl.setReturnValue( id, MockControl.ZERO_OR_MORE );
+
+ this.id = id;
+ }
+ }
+
+ public void setDependencyConflictId( String id )
+ {
+ if ( ( id != null ) && ( dependencyConflictId == null ) )
+ {
+ artifact.getDependencyConflictId();
+ artifactCtl.setReturnValue( id, MockControl.ZERO_OR_MORE );
+
+ dependencyConflictId = id;
+ }
+ }
+
+ public void setSnapshot( boolean snapshot )
+ {
+ if ( isSnapshot == null )
+ {
+ artifact.isSnapshot();
+ artifactCtl.setReturnValue( snapshot, MockControl.ZERO_OR_MORE );
+
+ isSnapshot = Boolean.valueOf( snapshot );
+ }
+ }
+
+ public File setNewFile()
+ throws IOException
+ {
+ if ( file == null )
+ {
+ File newFile = File.createTempFile( "ArtifactMock.test.", "" );
+ newFile.deleteOnExit();
+
+ artifact.getFile();
+ artifactCtl.setReturnValue( newFile, MockControl.ZERO_OR_MORE );
+
+ file = newFile;
+ }
+
+ return file;
+ }
+
+ public void setType( String type )
+ {
+ setTypeAndExt( type );
+ }
+
+ private void setTypeAndExt( String type )
+ {
+ if ( ( type != null ) && ( typeAndExt == null ) )
+ {
+ artifact.getType();
+ artifactCtl.setReturnValue( type, MockControl.ZERO_OR_MORE );
+
+ handler.getExtension();
+ handlerCtl.setReturnValue( type, MockControl.ZERO_OR_MORE );
+
+ typeAndExt = type;
+ }
+ }
+
+ private void setDependencyConflictId()
+ {
+ if ( ( groupId != null ) && ( artifactId != null ) && ( typeAndExt != null ) )
+ {
+ String id = groupId + ":" + artifactId + ":" + typeAndExt + ( classifier == null ? "" : ":" + classifier );
+ setDependencyConflictId( id );
+ }
+ }
+
+ private void setId()
+ {
+ if ( ( groupId != null ) && ( artifactId != null ) && ( typeAndExt != null ) && ( version != null ) )
+ {
+ String id = groupId + ":" + artifactId + ":" + version + ":" + typeAndExt + ( classifier == null ? "" : ":" + classifier );
+ setId( id );
+ }
+ }
+
+ public void setNullFile()
+ {
+ artifact.getFile();
+ artifactCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+
+ file = new File( "set-to-null" );
+ }
+
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java Tue Aug 21 18:28:22 2007
@@ -1,7 +1,5 @@
package org.apache.maven.plugin.assembly.archive.task.testutils;
-import org.apache.maven.artifact.Artifact;
-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;
@@ -10,7 +8,6 @@
import org.easymock.MockControl;
import java.io.File;
-import java.io.IOException;
import java.util.List;
import junit.framework.Assert;
@@ -18,12 +15,6 @@
public class MockAndControlForAddArtifactTask
{
- public MockControl artifactCtl;
-
- public Artifact artifact;
-
- public File artifactFile;
-
public Archiver archiver;
public MockControl archiverCtl;
@@ -32,34 +23,17 @@
public MockControl configSourceCtl;
- public ArtifactHandler artifactHandler;
-
- public MockControl artifactHandlerCtl;
-
- private final String classifier;
-
private MavenProject project = null;
public MockAndControlForAddArtifactTask( MockManager mockManager )
{
- this( mockManager, null, null );
+ this( mockManager, null );
}
- public MockAndControlForAddArtifactTask( MockManager mockManager, String classifier, MavenProject project )
+ public MockAndControlForAddArtifactTask( MockManager mockManager, MavenProject project )
{
- this.classifier = classifier;
this.project = project;
- artifactCtl = MockControl.createControl( Artifact.class );
- mockManager.add( artifactCtl );
-
- artifact = ( Artifact ) artifactCtl.getMock();
-
- artifactHandlerCtl = MockControl.createControl( ArtifactHandler.class );
- mockManager.add( artifactHandlerCtl );
-
- artifactHandler = (ArtifactHandler) artifactHandlerCtl.getMock();
-
archiverCtl = MockControl.createControl( Archiver.class );
mockManager.add( archiverCtl );
@@ -75,44 +49,17 @@
private void enableDefaultExpectations()
{
- artifact.getClassifier();
- artifactCtl.setReturnValue( classifier, MockControl.ZERO_OR_MORE );
-
configSource.getProject();
configSourceCtl.setReturnValue( project, MockControl.ZERO_OR_MORE );
}
- public void expectGetArtifactHandler()
- {
- artifact.getArtifactHandler();
- artifactCtl.setReturnValue( artifactHandler, MockControl.ONE_OR_MORE );
- }
-
public void expectGetFinalName( String finalName )
{
configSource.getFinalName();
configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
}
- public void expectArtifactGetFile() throws IOException
- {
- expectArtifactGetFile( true );
- }
-
- public void expectArtifactGetFile( boolean createTempFile ) throws IOException
- {
- if ( createTempFile )
- {
- artifactFile = File.createTempFile( "add-artifact-task.test.", ".jar" );
- artifactFile.deleteOnExit();
- }
-
- artifact.getFile();
-
- artifactCtl.setReturnValue( artifactFile, MockControl.ZERO_OR_MORE );
- }
-
- public void expectAddArchivedFileSet( String outputLocation, String[] includes, String[] excludes )
+ public void expectAddArchivedFileSet( File artifactFile, String outputLocation, String[] includes, String[] excludes )
{
try
{
@@ -154,25 +101,11 @@
archiver.setDefaultFileMode( originalFileMode );
}
- public void expectAddFile( String outputLocation )
- {
- try
- {
- archiver.addFile( artifactFile, outputLocation );
- archiverCtl.setMatcher( MockControl.ALWAYS_MATCHER );
- archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
- }
- catch ( ArchiverException e )
- {
- Assert.fail( "Should never happen." );
- }
- }
-
- public void expectAddFile( String outputLocation, int fileMode )
+ public void expectAddFile( File file, String outputLocation, int fileMode )
{
try
{
- archiver.addFile( artifactFile, outputLocation, fileMode );
+ archiver.addFile( file, outputLocation, fileMode );
archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
}
catch ( ArchiverException e )
@@ -181,11 +114,11 @@
}
}
- public void expectAddFile( File file, String outputLocation, int fileMode )
+ public void expectAddFile( File file, String outputLocation )
{
try
{
- archiver.addFile( file, outputLocation, fileMode );
+ archiver.addFile( file, outputLocation );
archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
}
catch ( ArchiverException e )
@@ -194,40 +127,9 @@
}
}
- public void expectArtifactGetScope( String scope )
- {
- artifact.getScope();
- artifactCtl.setReturnValue( scope, 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 );
- }
-
- public void expectIsSnapshot( boolean isSnapshot )
- {
- artifact.isSnapshot();
- artifactCtl.setReturnValue( isSnapshot, MockControl.ONE_OR_MORE );
- }
-
- public void expectArtifactGetType( String type )
- {
- artifact.getType();
- artifactCtl.setReturnValue( type, MockControl.ONE_OR_MORE );
- }
-
- public void expectArtifactGetArtifactId( String artifactId )
- {
- artifact.getArtifactId();
- artifactCtl.setReturnValue( artifactId, MockControl.ONE_OR_MORE );
- }
-
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java Tue Aug 21 18:28:22 2007
@@ -1,7 +1,5 @@
package org.apache.maven.plugin.assembly.archive.task.testutils;
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@@ -17,7 +15,6 @@
import org.easymock.MockControl;
import java.io.File;
-import java.io.IOException;
import java.util.List;
import java.util.Set;
@@ -26,12 +23,6 @@
public class MockAndControlForAddDependencySetsTask
{
- public MockControl artifactCtl;
-
- public Artifact artifact;
-
- public File artifactFile;
-
public Archiver archiver;
public MockControl archiverCtl;
@@ -40,10 +31,6 @@
public MockControl configSourceCtl;
- public ArtifactHandler artifactHandler;
-
- public MockControl artifactHandlerCtl;
-
public DependencyResolver dependencyResolver;
public MockControl dependencyResolverCtl;
@@ -52,27 +39,16 @@
public MockControl projectBuilderCtl;
- private String classifier;
-
private MavenProject project;
public MockAndControlForAddDependencySetsTask( MockManager mockManager )
{
- this( mockManager, null, null );
+ this( mockManager, null );
}
- public MockAndControlForAddDependencySetsTask( MockManager mockManager, String classifier, MavenProject project )
+ public MockAndControlForAddDependencySetsTask( MockManager mockManager, MavenProject project )
{
this.project = project;
- artifactCtl = MockControl.createControl( Artifact.class );
- mockManager.add( artifactCtl );
-
- artifact = ( Artifact ) artifactCtl.getMock();
-
- artifactHandlerCtl = MockControl.createControl( ArtifactHandler.class );
- mockManager.add( artifactHandlerCtl );
-
- artifactHandler = (ArtifactHandler) artifactHandlerCtl.getMock();
archiverCtl = MockControl.createControl( Archiver.class );
mockManager.add( archiverCtl );
@@ -94,60 +70,20 @@
projectBuilder = ( MavenProjectBuilder ) projectBuilderCtl.getMock();
- this.classifier = classifier;
-
enableDefaultExpectations();
}
private void enableDefaultExpectations()
{
- artifact.getClassifier();
- artifactCtl.setReturnValue( classifier, MockControl.ZERO_OR_MORE );
-
configSource.getProject();
configSourceCtl.setReturnValue( project, MockControl.ZERO_OR_MORE );
}
- public void expectGetArtifactHandler()
- {
- artifact.getArtifactHandler();
- artifactCtl.setReturnValue( artifactHandler, MockControl.ONE_OR_MORE );
- }
-
- public void expectGetClassifier( String classifier )
- {
- artifact.getClassifier();
- artifactCtl.setReturnValue( classifier, MockControl.ONE_OR_MORE );
- }
-
- public void expectGetFinalName( String finalName )
- {
- configSource.getFinalName();
- configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
- }
-
- public void expectArtifactGetFile() throws IOException
- {
- expectArtifactGetFile( true );
- }
-
- public void expectArtifactGetFile( boolean createTempFile ) throws IOException
- {
- if ( createTempFile )
- {
- artifactFile = File.createTempFile( "add-artifact-task.test.", ".jar" );
- }
-
- artifact.getFile();
-
- artifactCtl.setReturnValue( artifactFile, MockControl.ZERO_OR_MORE );
- }
-
- public void expectAddArchivedFileSet( String outputLocation, String[] includes, String[] excludes )
+ public void expectAddArchivedFileSet( File file, String outputLocation, String[] includes, String[] excludes )
{
try
{
- archiver.addArchivedFileSet( artifactFile, outputLocation, includes, excludes );
+ archiver.addArchivedFileSet( file, outputLocation, includes, excludes );
if ( ( includes != null ) || ( excludes != null ) )
{
@@ -185,26 +121,11 @@
archiver.setDefaultFileMode( originalFileMode );
}
- public void expectAddFile( String outputLocation )
+ public void expectAddFile( File file, String outputLocation )
{
try
{
- archiver.addFile( artifactFile, outputLocation );
- archiverCtl.setMatcher( MockControl.ALWAYS_MATCHER );
- archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
- }
- catch ( ArchiverException e )
- {
- Assert.fail( "Should never happen." );
- }
- }
-
- public void expectAddFile( String outputLocation, int fileMode )
- {
- try
- {
- archiver.addFile( artifactFile, outputLocation, fileMode );
- archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+ archiver.addFile( file, outputLocation );
}
catch ( ArchiverException e )
{
@@ -217,7 +138,6 @@
try
{
archiver.addFile( file, outputLocation, fileMode );
- archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
}
catch ( ArchiverException e )
{
@@ -225,40 +145,10 @@
}
}
- public void expectArtifactGetScope( String scope )
- {
- artifact.getScope();
- artifactCtl.setReturnValue( scope, 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 );
- }
-
- public void expectIsSnapshot( boolean isSnapshot )
- {
- artifact.isSnapshot();
- artifactCtl.setReturnValue( isSnapshot, MockControl.ONE_OR_MORE );
- }
-
- public void expectArtifactGetType( String type )
- {
- artifact.getType();
- artifactCtl.setReturnValue( type, MockControl.ONE_OR_MORE );
- }
-
- public void expectArtifactGetArtifactId( String artifactId )
- {
- artifact.getArtifactId();
- artifactCtl.setReturnValue( artifactId, MockControl.ONE_OR_MORE );
}
public void expectCSGetFinalName( String finalName )
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java Tue Aug 21 18:28:22 2007
@@ -3,7 +3,6 @@
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.DependencySet;
-import org.apache.maven.plugin.assembly.utils.CommandLineUtils;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.console.ConsoleLogger;
@@ -29,7 +28,7 @@
interpolator.enableLogging( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
}
- public void testBlacklistedExpressionsInDependencyOutputFileNameMappingsAreNotInterpolated()
+ public void testDependencySetOutputFileNameMappingsAreNotInterpolated()
throws IOException, AssemblyInterpolationException
{
Model model = new Model();
@@ -37,7 +36,7 @@
model.setGroupId( "group.id" );
model.setVersion( "1" );
model.setPackaging( "jar" );
-
+
MavenProject project = new MavenProject( model );
Assembly assembly = new Assembly();
@@ -57,10 +56,10 @@
DependencySet outputSet = (DependencySet) outputDependencySets.get( 0 );
- assertEquals( "${artifactId}.jar", outputSet.getOutputFileNameMapping() );
+ assertEquals( "${artifactId}.${packaging}", outputSet.getOutputFileNameMapping() );
}
- public void testBlacklistedExpressionsInDependencySetOutputDirectoryIsNotInterpolated()
+ public void testDependencySetOutputDirectoryIsNotInterpolated()
throws IOException, AssemblyInterpolationException
{
Model model = new Model();
@@ -85,7 +84,7 @@
DependencySet outputSet = (DependencySet) outputDependencySets.get( 0 );
- assertEquals( "${artifactId}.jar", outputSet.getOutputDirectory() );
+ assertEquals( "${artifactId}.${packaging}", outputSet.getOutputDirectory() );
}
public void testShouldResolveModelGroupIdInAssemblyId()
@@ -151,50 +150,6 @@
"still.another.id" ) );
assertEquals( "assembly.still.another.id", result.getId() );
- }
-
- public void testShouldResolveEnvarHOMEValueInDependencySetOutputDirectory()
- throws IOException, AssemblyInterpolationException
- {
- Model model = new Model();
- model.setArtifactId( "artifact-id" );
- model.setGroupId( "group.id" );
- model.setVersion( "1" );
- model.setPackaging( "jar" );
-
- Assembly assembly = new Assembly();
-
- Properties envars = CommandLineUtils.getSystemEnvVars( false );
-
- String homeValue = envars.getProperty( "PATH" );
-
- String outputDirectory = "${env.PATH}";
-
- DependencySet set = new DependencySet();
- set.setOutputDirectory( outputDirectory );
-
- assembly.addDependencySet( set );
-
- Assembly outputAssembly = interpolator.interpolate( assembly, new MavenProject( model ), Collections.EMPTY_MAP );
-
- List outputDependencySets = outputAssembly.getDependencySets();
- assertEquals( 1, outputDependencySets.size() );
-
- DependencySet outputSet = (DependencySet) outputDependencySets.get( 0 );
-
- // an environment variable named "PATH" may not exist on all systems.
- // On Windows environment variables are not case sensitive and "PATH" can be named "Path"
- // without this check the test will fail in such situation, but it's not a problem of the assembly plugin:
- // make the test exit with success also if the interpolation of environment properties is not really tested,
- // the plugin is anyway behaving as expected
- if ( homeValue != null )
- {
- assertEquals( homeValue, outputSet.getOutputDirectory() );
- }
- else
- {
- assertEquals( "${env.PATH}", outputSet.getOutputDirectory() );
- }
}
public void testShouldNotTouchUnresolvedExpression()
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java?rev=568360&r1=568359&r2=568360&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java Tue Aug 21 18:28:22 2007
@@ -1,10 +1,9 @@
package org.apache.maven.plugin.assembly.utils;
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.model.Build;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
@@ -31,90 +30,219 @@
}
public void testGetOutputDir_ShouldResolveGroupIdInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${artifact.groupId}", null, "group", null, null, null, "group/", false );
}
public void testGetOutputDir_ShouldResolveArtifactIdInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${artifact.artifactId}", null, null, "artifact", null, null, "artifact/", false );
}
public void testGetOutputDir_ShouldResolveVersionInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${artifact.version}", null, null, null, "version", null, "version/", false );
}
public void testGetOutputDir_ShouldResolveBuildFinalNameInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${artifact.build.finalName}", null, null, null, null, "finalName", "finalName/", false );
}
+ public void testGetOutputDir_ShouldResolveGroupIdInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${module.groupId}", null, "group", null, null, null, "group/", "module.", false );
+ }
+
+ public void testGetOutputDir_ShouldResolveArtifactIdInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${module.artifactId}", null, null, "artifact", null, null, "artifact/", "module.", false );
+ }
+
+ public void testGetOutputDir_ShouldResolveVersionInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${module.version}", null, null, null, "version", null, "version/", "module.", false );
+ }
+
+ public void testGetOutputDir_ShouldResolveBuildFinalNameInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${module.build.finalName}", null, null, null, null, "finalName", "finalName/", "module.", false );
+ }
+
public void testGetOutputDir_ShouldResolveGroupIdInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${pom.groupId}", null, "group", null, null, null, "group/", true );
}
public void testGetOutputDir_ShouldResolveArtifactIdInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${pom.artifactId}", null, null, "artifact", null, null, "artifact/", true );
}
public void testGetOutputDir_ShouldResolveVersionInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${pom.version}", null, null, null, "version", null, "version/", true );
}
public void testGetOutputDir_ShouldResolveBuildFinalNameInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${pom.build.finalName}", null, null, null, null, "finalName", "finalName/", true );
}
public void testGetOutputDir_ShouldNotAlterOutDirWhenIncludeBaseFalseAndNoExpressions()
+ throws AssemblyFormattingException
{
verifyOutputDir( "dir/", "finalName", null, null, null, "dir/" );
}
public void testGetOutputDir_ShouldNotAlterOutDirWhenIncludeBaseFalseAndNoExpressions_CheckWithBackslash()
+ throws AssemblyFormattingException
{
verifyOutputDir( "dir\\", "finalName", null, null, null, "dir\\" );
}
public void testGetOutputDir_ShouldAppendSlashToOutDirWhenMissingAndIncludeBaseFalseAndNoExpressions()
+ throws AssemblyFormattingException
{
verifyOutputDir( "dir", "finalName", null, null, null, "dir/" );
}
public void testGetOutputDir_ShouldResolveGroupIdInOutDir()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${groupId}", "finalName", "group", null, null, "group/" );
}
public void testGetOutputDir_ShouldResolveArtifactIdInOutDir()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${artifactId}", "finalName", null, "artifact", null, "artifact/" );
}
public void testGetOutputDir_ShouldResolveVersionInOutDir()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${version}", "finalName", null, null, "version", "version/" );
}
public void testGetOutputDir_ShouldResolveFinalNameInOutDir()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${finalName}", "finalName", null, null, null, "finalName/" );
}
public void testGetOutputDir_ShouldResolveBuildFinalNameInOutDir()
+ throws AssemblyFormattingException
{
verifyOutputDir( "${build.finalName}", "finalName", null, null, null, "finalName/" );
}
public void testGetOutputDir_ShouldReturnEmptyPathWhenAllInputIsEmptyAndIncludeBaseFalse()
+ throws AssemblyFormattingException
{
verifyOutputDir( null, null, null, null, null, "" );
}
+ public void testEvalFileNameMapping_ShouldResolveArtifactIdAndBaseVersionInOutDir_UseArtifactInfo_WithValidMainProject()
+ throws AssemblyFormattingException
+ {
+ MavenProject mainProject = newMavenProject( "group", "main", "1" );
+
+ String artifactVersion = "2-20070807.112233-1";
+ String artifactBaseVersion = "2-SNAPSHOT";
+ MavenProject artifactProject = newMavenProject( "group", "artifact", artifactVersion );
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "artifact", artifactVersion, "jar", true, artifactBaseVersion );
+
+ artifactProject.setArtifact( artifactMock.getArtifact() );
+
+ mockManager.replayAll();
+
+ String result = AssemblyFormatUtils.evaluateFileNameMapping( "${artifact.artifactId}-${artifact.baseVersion}", artifactMock.getArtifact(), mainProject, artifactProject, "artifact." );
+
+ assertEquals( "artifact-2-SNAPSHOT", result );
+
+ mockManager.verifyAll();
+
+ // clear out for next call.
+ mockManager.clear();
+ }
+
+ private MavenProject newMavenProject( String groupId, String artifactId, String version )
+ {
+ Model model = new Model();
+ model.setGroupId( groupId );
+ model.setArtifactId( artifactId );
+ model.setVersion( version );
+
+ return new MavenProject( model );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveGroupIdInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${artifact.groupId}", null, "group", null, null, null, "group", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveArtifactIdInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${artifact.artifactId}", null, null, "artifact", null, null, "artifact", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveVersionInOutDir_UseArtifactInfo()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${artifact.version}", null, null, null, "version", null, "version", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveGroupIdInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${module.groupId}", null, "group", null, null, null, "group", "module.", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveArtifactIdInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${module.artifactId}", null, null, "artifact", null, null, "artifact", "module.", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveVersionInOutDir_UseArtifactInfoAndModulePrefix()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${module.version}", null, null, null, "version", null, "version", "module.", false );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveGroupIdInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${pom.groupId}", null, "group", null, null, null, "group", true );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveArtifactIdInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${pom.artifactId}", null, null, "artifact", null, null, "artifact", true );
+ }
+
+ public void testEvalFileNameMapping_ShouldResolveVersionInOutDir_UseExplicitMainProject()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${pom.version}", null, null, null, "version", null, "version", true );
+ }
+
public void testEvalFileNameMapping_ShouldPassExpressionThroughUnchanged() throws AssemblyFormattingException
{
verifyEvalFileNameMapping( "filename", null, null, null, null, null, "filename" );
@@ -122,7 +250,7 @@
public void testEvalFileNameMapping_ShouldInsertClassifierAheadOfExtension() throws AssemblyFormattingException
{
- verifyEvalFileNameMapping( "filename-${classifier}.ext", "classifier", null, null, null, null, "filename-classifier.ext" );
+ verifyEvalFileNameMapping( "filename-${artifact.classifier}.ext", "classifier", null, null, null, null, "filename-classifier.ext" );
}
public void testEvalFileNameMapping_ShouldAppendDashClassifierWhenClassifierPresent() throws AssemblyFormattingException
@@ -157,18 +285,81 @@
public void testEvalFileNameMapping_ShouldResolveExtension() throws AssemblyFormattingException
{
- verifyEvalFileNameMapping( "file.${extension}", null, null, null, null, "ext", "file.ext" );
+ verifyEvalFileNameMapping( "file.${artifact.extension}", null, null, null, null, "ext", "file.ext" );
}
private void verifyEvalFileNameMapping( String expression, String classifier, String groupId, String artifactId,
String version, String extension, String checkValue )
throws AssemblyFormattingException
{
- MockAndControlForEvalFileNameMapping mac = new MockAndControlForEvalFileNameMapping( groupId, artifactId, version, classifier, extension );
+ verifyEvalFileNameMapping( expression, classifier, groupId, artifactId, version, extension, checkValue, true );
+ }
+
+ private void verifyEvalFileNameMapping( String expression, String classifier, String groupId, String artifactId,
+ String version, String extension, String checkValue, boolean usingMainProject )
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( expression, classifier, groupId, artifactId, version, extension, checkValue, null, usingMainProject );
+ }
+
+ private void verifyEvalFileNameMapping( String expression, String classifier, String groupId, String artifactId,
+ String version, String extension, String checkValue, String prefix, boolean usingMainProject )
+ throws AssemblyFormattingException
+ {
+ if ( artifactId == null )
+ {
+ artifactId = "artifact";
+ }
+
+ if ( groupId == null )
+ {
+ groupId = "group";
+ }
+
+ if ( version == null )
+ {
+ version = "version";
+ }
+
+ if ( extension == null )
+ {
+ extension = "jar";
+ }
+
+ MavenProject project = null;
+ Model model = new Model();
+ model.setGroupId( groupId );
+ model.setArtifactId( artifactId );
+ model.setVersion( version );
+
+ project = new MavenProject( model );
+
+ MavenProject mainProject;
+ MavenProject artifactProject = null;
+
+ if ( usingMainProject )
+ {
+ mainProject = project;
+ }
+ else
+ {
+ artifactProject = project;
+ mainProject = new MavenProject( new Model() );
+ }
+
+ ArtifactMock artifactMock = new ArtifactMock( mockManager, groupId, artifactId, version, extension, classifier, false );
mockManager.replayAll();
- String result = AssemblyFormatUtils.evaluateFileNameMapping( expression, mac.artifact );
+ String result;
+ if ( prefix == null )
+ {
+ result = AssemblyFormatUtils.evaluateFileNameMapping( expression, artifactMock.getArtifact(), mainProject, artifactProject );
+ }
+ else
+ {
+ result = AssemblyFormatUtils.evaluateFileNameMapping( expression, artifactMock.getArtifact(), mainProject, artifactProject, prefix );
+ }
assertEquals( checkValue, result );
@@ -178,12 +369,23 @@
mockManager.clear();
}
- private void verifyOutputDir( String outDir, String finalName, String groupId, String artifactId, String version, String checkValue )
+ private void verifyOutputDir( String outDir, String finalName, String groupId, String artifactId, String version,
+ String checkValue )
+ throws AssemblyFormattingException
{
verifyOutputDir( outDir, finalName, groupId, artifactId, version, null, checkValue, true );
}
- private void verifyOutputDir( String outDir, String finalName, String groupId, String artifactId, String version, String projectFinalName, String checkValue, boolean usingMainProject )
+ private void verifyOutputDir( String outDir, String finalName, String groupId, String artifactId, String version,
+ String projectFinalName, String checkValue, boolean usingMainProject )
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( outDir, finalName, groupId, artifactId, version, projectFinalName, checkValue, null, usingMainProject );
+ }
+
+ private void verifyOutputDir( String outDir, String finalName, String groupId, String artifactId, String version,
+ String projectFinalName, String checkValue, String prefix, boolean usingMainProject )
+ throws AssemblyFormattingException
{
MavenProject project = null;
if ( ( groupId != null ) || ( artifactId != null ) || ( version != null ) || ( projectFinalName != null ) )
@@ -217,7 +419,15 @@
mainProject = new MavenProject( new Model() );
}
- String result = AssemblyFormatUtils.getOutputDirectory( outDir, mainProject, artifactProject, finalName );
+ String result;
+ if ( prefix == null )
+ {
+ result = AssemblyFormatUtils.getOutputDirectory( outDir, mainProject, artifactProject, finalName );
+ }
+ else
+ {
+ result = AssemblyFormatUtils.getOutputDirectory( outDir, mainProject, artifactProject, finalName, prefix );
+ }
assertEquals( checkValue, result );
}
@@ -278,76 +488,4 @@
}
- private final class MockAndControlForEvalFileNameMapping
- {
- MockControl artifactControl;
- Artifact artifact;
-
- MockControl handlerControl;
- ArtifactHandler handler;
-
- private final String classifier;
- private final String groupId;
- private final String artifactId;
- private final String version;
- private final String extension;
-
- public MockAndControlForEvalFileNameMapping( String groupId, String artifactId, String version, String classifier, String extension )
- {
- this.groupId = groupId;
- this.artifactId = artifactId;
- this.version = version;
- this.classifier = classifier;
- this.extension = extension;
-
- artifactControl = MockControl.createControl( Artifact.class );
- mockManager.add( artifactControl );
-
- artifact = (Artifact) artifactControl.getMock();
-
- handlerControl = MockControl.createControl( ArtifactHandler.class );
- mockManager.add( handlerControl );
-
- handler = (ArtifactHandler) handlerControl.getMock();
-
- enableExpectations();
- }
-
- private void enableExpectations()
- {
- if ( groupId != null )
- {
- artifact.getGroupId();
- artifactControl.setReturnValue( groupId, MockControl.ONE_OR_MORE );
- }
-
- if ( artifactId != null )
- {
- artifact.getArtifactId();
- artifactControl.setReturnValue( artifactId, MockControl.ONE_OR_MORE );
- }
-
- if ( version != null )
- {
- artifact.getVersion();
- artifactControl.setReturnValue( version, MockControl.ONE_OR_MORE );
- }
-
- if ( extension != null )
- {
- handler.getExtension();
- handlerControl.setReturnValue( extension, MockControl.ONE_OR_MORE );
- }
-
- artifact.isSnapshot();
- artifactControl.setReturnValue( true, MockControl.ONE_OR_MORE );
-
- artifact.getClassifier();
- artifactControl.setReturnValue( classifier, MockControl.ONE_OR_MORE );
-
- artifact.getArtifactHandler();
- artifactControl.setReturnValue( handler, MockControl.ONE_OR_MORE );
- }
-
- }
}