You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2009/02/10 21:32:55 UTC
svn commit: r743092 - in
/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests:
ComprehensiveRepositoryTest.java DavServerTest.java
RemoteRepositoryWriterM2Test.java WebDavServer.java
Author: ogusakov
Date: Tue Feb 10 20:32:54 2009
New Revision: 743092
URL: http://svn.apache.org/viewvc?rev=743092&view=rev
Log:
[MERCURY-69] avoiding leaked temp. files by hacks for now, will fix in alpha-6
Modified:
maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/ComprehensiveRepositoryTest.java
maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/DavServerTest.java
maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java
maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/WebDavServer.java
Modified: maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/ComprehensiveRepositoryTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/ComprehensiveRepositoryTest.java?rev=743092&r1=743091&r2=743092&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/ComprehensiveRepositoryTest.java (original)
+++ maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/ComprehensiveRepositoryTest.java Tue Feb 10 20:32:54 2009
@@ -20,6 +20,7 @@
package org.apache.maven.mercury.repository.tests;
import java.io.File;
+import java.io.FilenameFilter;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
@@ -84,23 +85,32 @@
{
super.setUp();
+ String prefix = "-t-";
+ String suffix = "-t";
+ File temp = File.createTempFile( prefix, suffix );
+
DependencyProcessor dp = new MavenDependencyProcessor();
Credentials user = new Credentials("foo","bar");
- _base1 = new File( "./target/webdav1" );
- FileUtil.delete( _base1 );
+ _base1 = new File( "./target/webdav1" + temp.getName() );
+// FileUtil.delete( _base1 );
+ assertFalse( _base1.exists() );
_base1.mkdirs();
- _server1 = new WebDavServer( 0, _base1, _context1, getContainer(), 9, "mercury-test-1" );
+ _base1.deleteOnExit();
+ _server1 = new WebDavServer( 0, _base1, _context1, getContainer(), 9, null, _base1.getCanonicalPath() );
_server1.start();
_port1 = _server1.getPort();
Server server = new Server("rr1", new URL("http://localhost:"+_port1+_context1), false, false, user );
_rr1 = new RemoteRepositoryM2( server, dp );
- _base2 = new File( "./target/webdav2" );
- FileUtil.delete( _base2 );
+ temp = File.createTempFile( prefix, suffix );
+ _base2 = new File( "./target/webdav2" + temp.getName() );
+// FileUtil.delete( _base2 );
+ assertFalse( _base2.exists() );
_base2.mkdirs();
- _server2 = new WebDavServer( 0, _base2, _context2, getContainer(), 9, "mercury-test-2" );
+ _base2.deleteOnExit();
+ _server2 = new WebDavServer( 0, _base2, _context2, getContainer(), 9, null, _base2.getCanonicalPath() );
_server2.start();
_port2 = _server2.getPort();
@@ -111,14 +121,20 @@
_rrs.add( _rr1 );
_rrs.add( _rr2 );
- _lbase1 = new File( _local1 );
- FileUtil.delete( _lbase1 );
- _lbase1.mkdirs();
+ temp = File.createTempFile( prefix, suffix );
+ _lbase1 = new File( _local1 + temp.getName() );
+// FileUtil.delete( _lbase1 );
+ assertFalse( _lbase1.exists() );
+ _lbase1.mkdirs() ;
+ _lbase1.deleteOnExit();
_lr1 = new LocalRepositoryM2( "lr1", _lbase1, dp );
- _lbase2 = new File( _local2 );
- FileUtil.delete( _lbase2 );
+ temp = File.createTempFile( prefix, suffix );
+ _lbase2 = new File( _local2 + temp.getName() );
+// FileUtil.delete( _lbase2 );
+ assertFalse( _lbase2.exists() );
_lbase2.mkdirs();
+ _lbase2.deleteOnExit();
_lr2 = new LocalRepositoryM2( "lr2", _lbase2, dp );
_lrs = new ArrayList<Repository>(2);
@@ -153,6 +169,24 @@
}
catch( Exception e ) {}
finally { _server2 = null; }
+
+ File target = new File( "target" );
+ File [] files = target.listFiles(
+ new FilenameFilter()
+ {
+
+ public boolean accept( File dir, String name )
+ {
+ if( name.startsWith( "webdav" ))
+ return true;
+ return false;
+ }
+
+ }
+ );
+
+ for( File f : files )
+ FileUtil.delete( f );
}
public void writeArtifact( String name, File af, File ap, Repository repo )
Modified: maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/DavServerTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/DavServerTest.java?rev=743092&r1=743091&r2=743092&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/DavServerTest.java (original)
+++ maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/DavServerTest.java Tue Feb 10 20:32:54 2009
@@ -47,8 +47,6 @@
public class DavServerTest
extends PlexusTestCase
{
- static final String _davContext = "/webdav";
-
static final String _user = "foo";
static final String _pass = "bar";
@@ -58,7 +56,17 @@
File _base;
RemoteRepositoryM2 _davRepo;
+
+ WebDavServer _dav2;
+
+ File _base2;
+
+ RemoteRepositoryM2 _davRepo2;
+ static final String _davContext = "/webdav";
+
+ static final String _davContext2 = "/webdav2test";
+
//---------------------------------------------------------------------------------------------
protected void setUp()
throws Exception
@@ -69,9 +77,11 @@
FileUtil.delete( _base );
+ assertFalse( _base.exists() );
+
_base.mkdirs();
- _dav = new WebDavServer( 0, _base, _davContext, getContainer(), 9, "mercury-test" );
+ _dav = new WebDavServer( 0, _base, _davContext, getContainer(), 9, "mercury-test", null );
_dav.start();
@@ -82,6 +92,30 @@
System.out.println("URL: "+server.getURL() );
_davRepo = new RemoteRepositoryM2( server, new MavenDependencyProcessor() );
+
+ setUp2();
+ }
+ //---------------------------------------------------------------------------------------------
+ protected void setUp2()
+ throws Exception
+ {
+ _base2 = new File( "./target", _davContext2 );
+
+ FileUtil.delete( _base2 );
+
+ _base2.mkdirs();
+
+ _dav2 = new WebDavServer( 0, _base2, _davContext2, getContainer(), 9, null, _base2.getAbsolutePath() );
+
+ _dav2.start();
+
+ Credentials user = new Credentials(_user,_pass);
+
+ Server server = new Server("dav2", new URL("http://localhost:"+_dav2.getPort()+_davContext2), false, false, user );
+
+ System.out.println("URL: "+server.getURL() );
+
+ _davRepo2 = new RemoteRepositoryM2( server, new MavenDependencyProcessor() );
}
//---------------------------------------------------------------------------------------------
protected void tearDown()
@@ -95,6 +129,13 @@
_dav.destroy();
_dav = null;
}
+
+ if( _dav2 != null )
+ {
+ _dav2.stop();
+ _dav2.destroy();
+ _dav2 = null;
+ }
}
//---------------------------------------------------------------------------------------------
public void testDavWrite()
@@ -162,4 +203,69 @@
assertEquals( "test-pom".length(), a.getFile().length() );
}
//---------------------------------------------------------------------------------------------
+ public void testDavWrite2()
+ throws Exception
+ {
+ File jar = new File("./target/test.jar");
+ FileUtil.writeRawData( jar, "test-jar" );
+
+ File pom = new File("./target/test.pom");
+ FileUtil.writeRawData( pom, "test-pom" );
+
+ DefaultArtifact da = new DefaultArtifact( new ArtifactBasicMetadata("a:test:1.0") );
+ da.setFile( jar );
+ da.setPomBlob( FileUtil.readRawData( pom ) );
+
+ List<Artifact> al = new ArrayList<Artifact>( 8 );
+ al.add( da );
+
+ RepositoryWriter rw = _davRepo2.getWriter();
+
+ rw.writeArtifacts( al );
+
+ File davJar = new File( _base2, "a/test/1.0/test-1.0.jar" );
+
+ assertTrue( davJar.exists() );
+
+ assertEquals( jar.length(), davJar.length() );
+ }
+ //---------------------------------------------------------------------------------------------
+ public void testDavRead2()
+ throws Exception
+ {
+ testDavWrite2();
+
+ ArtifactBasicMetadata bmd = new ArtifactBasicMetadata("a:test:1.0");
+
+ List<ArtifactBasicMetadata> query = new ArrayList<ArtifactBasicMetadata>( 1 );
+
+ query.add( bmd );
+
+ RepositoryReader rr = _davRepo2.getReader();
+
+ ArtifactResults res = rr.readArtifacts( query );
+
+ assertNotNull( res );
+
+ assertFalse( res.hasExceptions() );
+
+ assertTrue( res.hasResults() );
+
+ List<Artifact> al = res.getResults( bmd );
+
+ assertNotNull( al );
+
+ assertFalse( al.isEmpty() );
+
+ Artifact a = al.get( 0 );
+
+ assertNotNull( a );
+
+ assertNotNull( a.getFile() );
+
+ assertTrue( a.getFile().exists() );
+
+ assertEquals( "test-pom".length(), a.getFile().length() );
+ }
+ //---------------------------------------------------------------------------------------------
}
Modified: maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java?rev=743092&r1=743091&r2=743092&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java (original)
+++ maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java Tue Feb 10 20:32:54 2009
@@ -79,7 +79,7 @@
targetDirectory.mkdirs();
- _dav = new WebDavServer( 0, targetDirectory, _davContext, getContainer(), 9, baseHint );
+ _dav = new WebDavServer( 0, targetDirectory, _davContext, getContainer(), 9, baseHint, null );
_dav.start();
Modified: maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/WebDavServer.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/WebDavServer.java?rev=743092&r1=743091&r2=743092&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/WebDavServer.java (original)
+++ maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/WebDavServer.java Tue Feb 10 20:32:54 2009
@@ -51,6 +51,7 @@
, PlexusContainer container
, int debugLevel
, String fileCollectionHint
+ , String fileCollectionBase
)
throws Exception
{
@@ -81,7 +82,11 @@
context.setAttribute( PlexusConstants.PLEXUS_KEY, container );
context.setResourceBase( base.getCanonicalPath() );
- context.setAttribute( "resourceCollectionHint", fileCollectionHint );
+ if( fileCollectionBase != null )
+ context.setAttribute( "resourceCollectionBase", fileCollectionBase );
+ else
+ context.setAttribute( "resourceCollectionHint", fileCollectionHint );
+
context.setAttribute( "debug", debugLevel+"" );
// Map<String,String> initParams = new HashMap<String, String>(8);