You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2007/12/15 09:13:26 UTC
svn commit: r604400 -
/maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java
Author: olamy
Date: Sat Dec 15 00:13:17 2007
New Revision: 604400
URL: http://svn.apache.org/viewvc?rev=604400&view=rev
Log:
[MNG-2542] add unit to test CRs in a manifest value are correctly remove
Modified:
maven/shared/trunk/maven-archiver/src/test/java/org/apache/maven/archiver/MavenArchiverTest.java
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=604400&r1=604399&r2=604400&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 Sat Dec 15 00:13:17 2007
@@ -297,10 +297,12 @@
archiver.setOutputFile( jarArchiver.getDestFile() );
MavenProject project = getDummyProject();
-
+ String ls = System.getProperty( "line.separator" );
+ project.setDescription( "foo " + ls + " bar " );
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
config.setForced( true );
config.getManifest().setAddDefaultImplementationEntries( true );
+ config.addManifestEntry( "Description", project.getDescription() );
archiver.createArchive( project, config );
assertTrue( jarFile.exists() );
@@ -313,7 +315,6 @@
assertTrue( manifest.containsKey( "Implementation-Version" ) );
assertEquals( "0.1", manifest.get( "Implementation-Version" ) );
-
}
finally
{
@@ -325,6 +326,57 @@
}
}
}
+
+ public void testCarriageReturnInManifestEntry()
+ throws Exception
+ {
+ InputStream inputStream = null;
+ JarFile jar = null;
+ try
+ {
+ File jarFile = new File( "target/test/dummy.jar" );
+ jarFile.delete();
+ assertFalse( jarFile.exists() );
+ JarArchiver jarArchiver = new JarArchiver();
+ jarArchiver.setDestFile( jarFile );
+
+ MavenArchiver archiver = new MavenArchiver();
+ archiver.setArchiver( jarArchiver );
+ archiver.setOutputFile( jarArchiver.getDestFile() );
+
+ MavenProject project = getDummyProject();
+ String ls = System.getProperty( "line.separator" );
+ project.setDescription( "foo " + ls + " bar " );
+ MavenArchiveConfiguration config = new MavenArchiveConfiguration();
+ config.setForced( true );
+ config.getManifest().setAddDefaultImplementationEntries( true );
+ config.addManifestEntry( "Description", project.getDescription() );
+ //config.addManifestEntry( "EntryWithTab", " foo tab " + ( '\u0009' ) + ( '\u0009' ) + " bar tab" + ( '\u0009' ) );
+ archiver.createArchive( project, config );
+ assertTrue( jarFile.exists() );
+
+ jar = new JarFile( jarFile );
+
+ ZipEntry zipEntry = jar.getEntry( "META-INF/MANIFEST.MF" );
+ Properties manifest = new Properties();
+ inputStream = jar.getInputStream( zipEntry );
+ manifest.load( inputStream );
+
+ assertTrue( project.getDescription().indexOf( ls ) > 0 );
+ assertFalse( manifest.getProperty( "Description" ).indexOf( ls ) > 0 );
+ //System.out.println("tabEnt |" + manifest.getProperty( "EntryWithTab" ) + "|" );
+ //assertFalse( manifest.getProperty( "EntryWithTab" ).indexOf( ( '\u0009' ) ) > 0 );
+ }
+ finally
+ {
+ // cleanup streams
+ IOUtil.close( inputStream );
+ if ( jar != null )
+ {
+ jar.close();
+ }
+ }
+ }
// ----------------------------------------
// common methods for testing