You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kr...@apache.org on 2012/01/24 15:57:42 UTC
svn commit: r1235290 - in /maven/shared/trunk/maven-archiver/src:
main/java/org/apache/maven/archiver/MavenArchiver.java
test/java/org/apache/maven/archiver/MavenArchiverTest.java
test/resources/dummy.dot-1.5.jar
Author: krosenvold
Date: Tue Jan 24 14:57:41 2012
New Revision: 1235290
URL: http://svn.apache.org/viewvc?rev=1235290&view=rev
Log:
[MSHARED-134] Using -Extention-Name in MANIFEST file can create invalid MANIFEST files
Patch by Sridhar Komandur, testcase by me.
Added:
maven/shared/trunk/maven-archiver/src/test/resources/dummy.dot-1.5.jar
Modified:
maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java
Modified: maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java?rev=1235290&r1=1235289&r2=1235290&view=diff
==============================================================================
--- maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java (original)
+++ maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java Tue Jan 24 14:57:41 2012
@@ -418,14 +418,15 @@ public class MavenArchiver
Artifact artifact = (Artifact) iter.next();
if ( "jar".equals( artifact.getType() ) )
{
- String ename = artifact.getArtifactId() + "-Extension-Name";
+ String artifactId = artifact.getArtifactId().replace('.', '_');
+ String ename = artifactId + "-Extension-Name";
addManifestAttribute( m, entries, ename, artifact.getArtifactId() );
- String iname = artifact.getArtifactId() + "-Implementation-Version";
+ String iname = artifactId + "-Implementation-Version";
addManifestAttribute( m, entries, iname, artifact.getVersion() );
if ( artifact.getRepository() != null )
{
- iname = artifact.getArtifactId() + "-Implementation-URL";
+ iname = artifactId + "-Implementation-URL";
String url = artifact.getRepository().getUrl() + "/" + artifact.toString();
addManifestAttribute( m, entries, iname, url );
}
Modified: maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java?rev=1235290&r1=1235289&r2=1235290&view=diff
==============================================================================
--- maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java (original)
+++ maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java Tue Jan 24 14:57:41 2012
@@ -21,6 +21,7 @@ package org.apache.maven.archiver;
import junit.framework.TestCase;
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.DependencyResolutionRequiredException;
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.handler.DefaultArtifactHandler;
import org.apache.maven.artifact.repository.ArtifactRepository;
@@ -34,18 +35,29 @@ import org.apache.maven.project.MavenPro
import org.apache.maven.settings.Settings;
import org.codehaus.plexus.PlexusContainer;
import org.codehaus.plexus.archiver.jar.JarArchiver;
+import org.codehaus.plexus.archiver.jar.ManifestException;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
import java.io.File;
+import java.io.IOException;
import java.net.URI;
import java.net.URL;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.TreeSet;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
import java.util.jar.Manifest;
-@SuppressWarnings("ResultOfMethodCallIgnored")
+@SuppressWarnings( "ResultOfMethodCallIgnored" )
public class MavenArchiverTest
extends TestCase
{
@@ -93,12 +105,13 @@ public class MavenArchiverTest
assertNotNull( manifest.getMainAttributes() );
- for (Map.Entry<String, Attributes> entry : manifest.getEntries().entrySet()) {
- System.out.println( entry.getKey() + " " + entry.getValue().getValue("Extension-List") );
+ for ( Map.Entry<String, Attributes> entry : manifest.getEntries().entrySet() )
+ {
+ System.out.println( entry.getKey() + " " + entry.getValue().getValue( "Extension-List" ) );
}
- assertEquals( null, manifest.getMainAttributes().getValue("Extension-List") );
+ assertEquals( null, manifest.getMainAttributes().getValue( "Extension-List" ) );
MockArtifact artifact1 = new MockArtifact();
artifact1.setGroupId( "org.apache.dummy" );
@@ -111,7 +124,7 @@ public class MavenArchiverTest
manifest = archiver.getManifest( session, project, config );
- assertEquals( null, manifest.getMainAttributes().getValue("Extension-List") );
+ assertEquals( null, manifest.getMainAttributes().getValue( "Extension-List" ) );
MockArtifact artifact2 = new MockArtifact();
artifact2.setGroupId( "org.apache.dummy" );
@@ -124,7 +137,7 @@ public class MavenArchiverTest
manifest = archiver.getManifest( session, project, config );
- assertEquals( "dummy2", manifest.getMainAttributes().getValue("Extension-List") );
+ assertEquals( "dummy2", manifest.getMainAttributes().getValue( "Extension-List" ) );
MockArtifact artifact3 = new MockArtifact();
artifact3.setGroupId( "org.apache.dummy" );
@@ -137,7 +150,7 @@ public class MavenArchiverTest
manifest = archiver.getManifest( session, project, config );
- assertEquals( "dummy2", manifest.getMainAttributes().getValue("Extension-List") );
+ assertEquals( "dummy2", manifest.getMainAttributes().getValue( "Extension-List" ) );
MockArtifact artifact4 = new MockArtifact();
artifact4.setGroupId( "org.apache.dummy" );
@@ -150,7 +163,7 @@ public class MavenArchiverTest
manifest = archiver.getManifest( session, project, config );
- assertEquals( "dummy2 dummy4", manifest.getMainAttributes().getValue("Extension-List") );
+ assertEquals( "dummy2 dummy4", manifest.getMainAttributes().getValue( "Extension-List" ) );
}
public void testMultiClassPath()
@@ -190,10 +203,9 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, archiveConfiguration );
String classPath = manifest.getMainAttributes().getValue( "Class-Path" );
- assertTrue( "User specified Class-Path entry was not added to manifest",
- classPath.contains("help/"));
+ assertTrue( "User specified Class-Path entry was not added to manifest", classPath.contains( "help/" ) );
assertTrue( "Class-Path generated by addClasspath was not added to manifest",
- classPath.contains(tempFile.getName()));
+ classPath.contains( tempFile.getName() ) );
}
finally
{
@@ -206,13 +218,9 @@ public class MavenArchiverTest
throws Exception
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySession();
MavenProject project = getDummyProject();
@@ -227,9 +235,10 @@ public class MavenArchiverTest
long time = jarFile.lastModified();
List files = FileUtils.getFiles( new File( "target/maven-archiver" ), "**/**", null, true );
- for (Object file : files) {
+ for ( Object file : files )
+ {
File f = (File) file;
- f.setLastModified(time);
+ f.setLastModified( time );
}
archiver.createArchive( session, project, config );
@@ -247,13 +256,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySession();
MavenProject project = getDummyProject();
@@ -285,13 +290,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySession();
MavenProject project = getDummyProject();
@@ -322,6 +323,43 @@ public class MavenArchiverTest
}
}
+ private MavenArchiver getMavenArchiver( JarArchiver jarArchiver )
+ {
+ MavenArchiver archiver = new MavenArchiver();
+ archiver.setArchiver( jarArchiver );
+ archiver.setOutputFile( jarArchiver.getDestFile() );
+ return archiver;
+ }
+
+ public void testDashesInClassPath_MSHARED_134()
+ throws IOException, ManifestException, DependencyResolutionRequiredException
+ {
+ File jarFile = new File( "target/test/dummyWithDashes.jar" );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
+
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
+
+ MavenSession session = getDummySession();
+ MavenProject project = getDummyProject();
+
+ Set<Artifact> artifacts = getArtifacts( getMockArtifact1(), getArtifactWithDot(),
+ getMockArtifact2(), getMockArtifact3() );
+
+ project.setArtifacts( artifacts );
+
+ MavenArchiveConfiguration config = new MavenArchiveConfiguration();
+ config.setForced( false );
+
+ final ManifestConfiguration mftConfig = config.getManifest();
+ mftConfig.setMainClass( "org.apache.maven.Foo" );
+ mftConfig.setAddClasspath( true );
+ mftConfig.setAddExtensions( true );
+ mftConfig.setClasspathPrefix( "./lib/" );
+
+ archiver.createArchive( session, project, config );
+ assertTrue( jarFile.exists() );
+ }
+
public void testCarriageReturnInManifestEntry()
throws Exception
{
@@ -329,13 +367,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySession();
MavenProject project = getDummyProject();
@@ -377,13 +411,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenProject project = getDummyProject();
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
@@ -429,13 +459,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySession();
MavenProject project = getDummyProject();
@@ -506,13 +532,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenSession session = getDummySessionWithoutMavenVersion();
MavenProject project = getDummyProject();
@@ -560,15 +582,15 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, config );
- Attributes section = manifest.getAttributes("SectionOne");
+ Attributes section = manifest.getAttributes( "SectionOne" );
assertNotNull( "The section is not present in the manifest as it should be.", section );
- String attribute = section.getValue("key");
+ String attribute = section.getValue( "key" );
assertNotNull( "The attribute we are looking for is not present in the section.", attribute );
assertEquals( "The value of the attribute is wrong.", "value", attribute );
}
- @SuppressWarnings("ResultOfMethodCallIgnored")
+ @SuppressWarnings( "ResultOfMethodCallIgnored" )
public void testDefaultClassPathValue()
throws Exception
{
@@ -578,13 +600,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -613,13 +631,14 @@ public class MavenArchiverTest
}
}
- @SuppressWarnings("ResultOfMethodCallIgnored")
- private void deleteAndAssertNotPresent(File jarFile) {
+ @SuppressWarnings( "ResultOfMethodCallIgnored" )
+ private void deleteAndAssertNotPresent( File jarFile )
+ {
jarFile.delete();
assertFalse( jarFile.exists() );
}
- @SuppressWarnings("ResultOfMethodCallIgnored")
+ @SuppressWarnings( "ResultOfMethodCallIgnored" )
public void testDefaultClassPathValue_WithSnapshot()
throws Exception
{
@@ -629,13 +648,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -673,13 +688,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -694,7 +705,7 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, config );
String[] classPathEntries =
- StringUtils.split( new String( manifest.getMainAttributes().getValue("Class-Path").getBytes() ),
+ StringUtils.split( new String( manifest.getMainAttributes().getValue( "Class-Path" ).getBytes() ),
" " );
assertEquals( "org/apache/dummy/dummy1/1.0/dummy1-1.0.jar", classPathEntries[0] );
assertEquals( "org/apache/dummy/foo/dummy2/1.5/dummy2-1.5.jar", classPathEntries[1] );
@@ -726,13 +737,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -747,7 +754,7 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, config );
String[] classPathEntries =
- StringUtils.split( new String( manifest.getMainAttributes().getValue("Class-Path").getBytes() ),
+ StringUtils.split( new String( manifest.getMainAttributes().getValue( "Class-Path" ).getBytes() ),
" " );
assertEquals( "org/apache/dummy/dummy1/1.1-SNAPSHOT/dummy1-1.1-20081022.112233-1.jar",
classPathEntries[0] );
@@ -781,13 +788,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -804,7 +807,7 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, config );
String[] classPathEntries =
- StringUtils.split( new String( manifest.getMainAttributes().getValue("Class-Path").getBytes() ),
+ StringUtils.split( new String( manifest.getMainAttributes().getValue( "Class-Path" ).getBytes() ),
" " );
assertEquals( "org/apache/dummy/dummy1/1.0/TEST-dummy1-1.0.jar", classPathEntries[0] );
assertEquals( "org/apache/dummy/foo/dummy2/1.5/TEST-dummy2-1.5.jar", classPathEntries[1] );
@@ -836,13 +839,8 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
-
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -893,13 +891,9 @@ public class MavenArchiverTest
try
{
File jarFile = new File( "target/test/dummy.jar" );
- deleteAndAssertNotPresent(jarFile);
- JarArchiver jarArchiver = new JarArchiver();
- jarArchiver.setDestFile( jarFile );
+ JarArchiver jarArchiver = getCleanJarArciver( jarFile );
- MavenArchiver archiver = new MavenArchiver();
- archiver.setArchiver( jarArchiver );
- archiver.setOutputFile( jarArchiver.getDestFile() );
+ MavenArchiver archiver = getMavenArchiver( jarArchiver );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
@@ -916,7 +910,7 @@ public class MavenArchiverTest
Manifest manifest = archiver.getManifest( session, project, config );
String[] classPathEntries =
- StringUtils.split( new String( manifest.getMainAttributes().getValue("Class-Path").getBytes() ),
+ StringUtils.split( new String( manifest.getMainAttributes().getValue( "Class-Path" ).getBytes() ),
" " );
assertEquals( "org/apache/dummy/dummy1/1.1-SNAPSHOT/TEST-dummy1-1.1-SNAPSHOT.jar", classPathEntries[0] );
assertEquals( "org/apache/dummy/foo/dummy2/1.5/TEST-dummy2-1.5.jar", classPathEntries[1] );
@@ -939,24 +933,21 @@ public class MavenArchiverTest
}
}
+ private JarArchiver getCleanJarArciver( File jarFile )
+ {
+ deleteAndAssertNotPresent( jarFile );
+ JarArchiver jarArchiver = new JarArchiver();
+ jarArchiver.setDestFile( jarFile );
+ return jarArchiver;
+ }
+
// ----------------------------------------
// common methods for testing
// ----------------------------------------
private MavenProject getDummyProject()
{
- Model model = new Model();
- model.setGroupId( "org.apache.dummy" );
- model.setArtifactId( "dummy" );
- model.setVersion( "0.1" );
- MavenProject project = new MavenProject( model );
-
- project.setPluginArtifacts( Collections.EMPTY_SET );
- project.setReportArtifacts( Collections.EMPTY_SET );
- project.setExtensionArtifacts( Collections.EMPTY_SET );
- project.setRemoteArtifactRepositories( Collections.EMPTY_LIST );
- project.setPluginArtifactRepositories( Collections.EMPTY_LIST );
-
+ MavenProject project = getMavenProject();
File pomFile = new File( "src/test/resources/pom.xml" );
pomFile.setLastModified( System.currentTimeMillis() - 60000L );
project.setFile( pomFile );
@@ -976,100 +967,44 @@ public class MavenArchiverTest
artifact.setArtifactHandler( new DefaultArtifactHandler( "jar" ) );
project.setArtifact( artifact );
- ArtifactHandler artifactHandler = new ArtifactHandler()
- {
-
- public String getClassifier()
- {
- return null;
- }
-
- public String getDirectory()
- {
- return null;
- }
-
- public String getExtension()
- {
- return "jar";
- }
-
- public String getLanguage()
- {
- return null;
- }
-
- public String getPackaging()
- {
- return null;
- }
-
- public boolean isAddedToClasspath()
- {
- return true;
- }
-
- public boolean isIncludesDependencies()
- {
- return false;
- }
-
- };
-
- Set<Artifact> artifacts = new TreeSet<Artifact>( new ArtifactComparator() );
-
- MockArtifact artifact1 = new MockArtifact();
- artifact1.setGroupId( "org.apache.dummy" );
- artifact1.setArtifactId( "dummy1" );
- artifact1.setVersion( "1.0" );
- artifact1.setType( "jar" );
- artifact1.setScope( "runtime" );
- artifact1.setFile( getClasspathFile( artifact1.getArtifactId() + "-" + artifact1.getVersion() + ".jar" ) );
-
- artifact1.setArtifactHandler( artifactHandler );
-
- artifacts.add( artifact1 );
-
- MockArtifact artifact2 = new MockArtifact();
- artifact2.setGroupId( "org.apache.dummy.foo" );
- artifact2.setArtifactId( "dummy2" );
- artifact2.setVersion( "1.5" );
- artifact2.setType( "jar" );
- artifact2.setScope( "runtime" );
- artifact2.setFile( getClasspathFile( artifact2.getArtifactId() + "-" + artifact2.getVersion() + ".jar" ) );
-
- artifact2.setArtifactHandler( artifactHandler );
- artifacts.add( artifact2 );
-
- MockArtifact artifact3 = new MockArtifact();
- artifact3.setGroupId( "org.apache.dummy.bar" );
- artifact3.setArtifactId( "dummy3" );
- artifact3.setVersion( "2.0" );
- artifact3.setScope( "runtime" );
- artifact3.setType( "jar" );
- artifact3.setFile( getClasspathFile( artifact3.getArtifactId() + "-" + artifact3.getVersion() + ".jar" ) );
- artifact3.setArtifactHandler( artifactHandler );
- artifacts.add( artifact3 );
-
+ Set<Artifact> artifacts = getArtifacts( getMockArtifact1Release(), getMockArtifact2(), getMockArtifact3() );
project.setArtifacts( artifacts );
return project;
}
- private MavenProject getDummyProjectWithSnapshot()
+ private MavenProject getMavenProject()
{
Model model = new Model();
model.setGroupId( "org.apache.dummy" );
model.setArtifactId( "dummy" );
model.setVersion( "0.1" );
- MavenProject project = new MavenProject( model );
+ final MavenProject project = new MavenProject( model );
project.setPluginArtifacts( Collections.EMPTY_SET );
project.setReportArtifacts( Collections.EMPTY_SET );
project.setExtensionArtifacts( Collections.EMPTY_SET );
project.setRemoteArtifactRepositories( Collections.EMPTY_LIST );
project.setPluginArtifactRepositories( Collections.EMPTY_LIST );
+ return project;
+ }
+
+
+ private MockArtifact getMockArtifact3()
+ {
+ MockArtifact artifact3 = new MockArtifact();
+ artifact3.setGroupId( "org.apache.dummy.bar" );
+ artifact3.setArtifactId( "dummy3" );
+ artifact3.setVersion( "2.0" );
+ artifact3.setScope( "runtime" );
+ artifact3.setType( "jar" );
+ artifact3.setFile( getClasspathFile( artifact3.getArtifactId() + "-" + artifact3.getVersion() + ".jar" ) );
+ return artifact3;
+ }
+ private MavenProject getDummyProjectWithSnapshot()
+ {
+ MavenProject project = getMavenProject();
File pomFile = new File( "src/test/resources/pom.xml" );
pomFile.setLastModified( System.currentTimeMillis() - 60000L );
project.setFile( pomFile );
@@ -1081,6 +1016,7 @@ public class MavenArchiverTest
Organization organization = new Organization();
organization.setName( "Apache" );
project.setOrganization( organization );
+
MockArtifact artifact = new MockArtifact();
artifact.setGroupId( "org.apache.dummy" );
artifact.setArtifactId( "dummy" );
@@ -1089,7 +1025,16 @@ public class MavenArchiverTest
artifact.setArtifactHandler( new DefaultArtifactHandler( "jar" ) );
project.setArtifact( artifact );
- ArtifactHandler artifactHandler = new ArtifactHandler()
+ Set<Artifact> artifacts = getArtifacts( getMockArtifact1(), getMockArtifact2(), getMockArtifact3() );
+
+ project.setArtifacts( artifacts );
+
+ return project;
+ }
+
+ private ArtifactHandler getMockArtifactHandler()
+ {
+ return new ArtifactHandler()
{
public String getClassifier()
@@ -1128,21 +1073,10 @@ public class MavenArchiverTest
}
};
+ }
- Set<Artifact> artifacts = new TreeSet<Artifact>( new ArtifactComparator() );
-
- MockArtifact artifact1 = new MockArtifact();
- artifact1.setGroupId( "org.apache.dummy" );
- artifact1.setArtifactId( "dummy1" );
- artifact1.setSnapshotVersion( "1.1-20081022.112233-1", "1.1-SNAPSHOT" );
- artifact1.setType( "jar" );
- artifact1.setScope( "runtime" );
- artifact1.setFile( getClasspathFile( artifact1.getArtifactId() + "-" + artifact1.getVersion() + ".jar" ) );
-
- artifact1.setArtifactHandler( artifactHandler );
-
- artifacts.add( artifact1 );
-
+ private MockArtifact getMockArtifact2()
+ {
MockArtifact artifact2 = new MockArtifact();
artifact2.setGroupId( "org.apache.dummy.foo" );
artifact2.setArtifactId( "dummy2" );
@@ -1150,23 +1084,43 @@ public class MavenArchiverTest
artifact2.setType( "jar" );
artifact2.setScope( "runtime" );
artifact2.setFile( getClasspathFile( artifact2.getArtifactId() + "-" + artifact2.getVersion() + ".jar" ) );
+ return artifact2;
+ }
- artifact2.setArtifactHandler( artifactHandler );
- artifacts.add( artifact2 );
-
- MockArtifact artifact3 = new MockArtifact();
- artifact3.setGroupId( "org.apache.dummy.bar" );
- artifact3.setArtifactId( "dummy3" );
- artifact3.setVersion( "2.0" );
- artifact3.setScope( "runtime" );
- artifact3.setType( "jar" );
- artifact3.setFile( getClasspathFile( artifact3.getArtifactId() + "-" + artifact3.getVersion() + ".jar" ) );
- artifact3.setArtifactHandler( artifactHandler );
- artifacts.add( artifact3 );
+ private MockArtifact getArtifactWithDot()
+ {
+ MockArtifact artifact2 = new MockArtifact();
+ artifact2.setGroupId( "org.apache.dummy.foo" );
+ artifact2.setArtifactId( "dummy.dot" );
+ artifact2.setVersion( "1.5" );
+ artifact2.setType( "jar" );
+ artifact2.setScope( "runtime" );
+ artifact2.setFile( getClasspathFile( artifact2.getArtifactId() + "-" + artifact2.getVersion() + ".jar" ) );
+ return artifact2;
+ }
- project.setArtifacts( artifacts );
+ private MockArtifact getMockArtifact1()
+ {
+ MockArtifact artifact1 = new MockArtifact();
+ artifact1.setGroupId( "org.apache.dummy" );
+ artifact1.setArtifactId( "dummy1" );
+ artifact1.setSnapshotVersion( "1.1-20081022.112233-1", "1.1-SNAPSHOT" );
+ artifact1.setType( "jar" );
+ artifact1.setScope( "runtime" );
+ artifact1.setFile( getClasspathFile( artifact1.getArtifactId() + "-" + artifact1.getVersion() + ".jar" ) );
+ return artifact1;
+ }
- return project;
+ private MockArtifact getMockArtifact1Release()
+ {
+ MockArtifact artifact1 = new MockArtifact();
+ artifact1.setGroupId( "org.apache.dummy" );
+ artifact1.setArtifactId( "dummy1" );
+ artifact1.setVersion( "1.0" );
+ artifact1.setType( "jar" );
+ artifact1.setScope( "runtime" );
+ artifact1.setFile( getClasspathFile( artifact1.getArtifactId() + "-" + artifact1.getVersion() + ".jar" ) );
+ return artifact1;
}
private File getClasspathFile( String file )
@@ -1206,8 +1160,19 @@ public class MavenArchiverTest
String executionRootDir = null;
Date startTime = new Date();
- return new MavenSession( container, settings, localRepo, eventDispatcher, reactorManager, goals, executionRootDir,
- executionProperties, startTime );
+ return new MavenSession( container, settings, localRepo, eventDispatcher, reactorManager, goals,
+ executionRootDir, executionProperties, startTime );
}
+ private Set<Artifact> getArtifacts( Artifact... artifacts )
+ {
+ final ArtifactHandler mockArtifactHandler = getMockArtifactHandler();
+ Set<Artifact> result = new TreeSet<Artifact>( new ArtifactComparator() );
+ for ( Artifact artifact : artifacts )
+ {
+ artifact.setArtifactHandler( mockArtifactHandler );
+ result.add( artifact );
+ }
+ return result;
+ }
}
Added: maven/shared/trunk/maven-archiver/src/test/resources/dummy.dot-1.5.jar
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-archiver/src/test/resources/dummy.dot-1.5.jar?rev=1235290&view=auto
==============================================================================
Files maven/shared/trunk/maven-archiver/src/test/resources/dummy.dot-1.5.jar (added) and maven/shared/trunk/maven-archiver/src/test/resources/dummy.dot-1.5.jar Tue Jan 24 14:57:41 2012 differ