You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2010/09/28 15:14:08 UTC
svn commit: r1002154 -
/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
Author: brett
Date: Tue Sep 28 13:14:08 2010
New Revision: 1002154
URL: http://svn.apache.org/viewvc?rev=1002154&view=rev
Log:
reduce time it takes to run the tests by ~30% by not leaking memory
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
Modified: maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java?rev=1002154&r1=1002153&r2=1002154&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java (original)
+++ maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java Tue Sep 28 13:14:08 2010
@@ -19,20 +19,10 @@ package org.apache.maven.shared.release.
* under the License.
*/
-import java.io.File;
-import java.io.IOException;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Stack;
-
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
@@ -57,12 +47,26 @@ import org.apache.maven.shared.release.s
import org.apache.maven.shared.release.scm.ScmRepositoryConfigurator;
import org.apache.maven.shared.release.util.ReleaseUtil;
import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.context.ContextException;
+import org.codehaus.plexus.context.DefaultContext;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.StringUtils;
import org.jmock.Mock;
+import java.io.File;
+import java.io.IOException;
+import java.io.Reader;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Stack;
+
/**
* Base class for some release tests.
*
@@ -77,6 +81,15 @@ public abstract class AbstractReleaseTes
protected ReleasePhase phase;
+ private static final DefaultContext EMPTY_CONTEXT = new DefaultContext()
+ {
+ public Object get( Object key )
+ throws ContextException
+ {
+ return null;
+ }
+ };
+
protected void setUp()
throws Exception
{
@@ -89,6 +102,16 @@ public abstract class AbstractReleaseTes
localRepository = new DefaultArtifactRepository( "local", "file://" + localRepoPath, layout );
}
+ protected void tearDown()
+ throws Exception
+ {
+ // unhook circular references to the container that would avoid memory being cleaned up
+ ( (Contextualizable) projectBuilder ).contextualize( EMPTY_CONTEXT );
+ ( (Contextualizable) lookup( WagonManager.ROLE ) ).contextualize( EMPTY_CONTEXT );
+
+ super.tearDown();
+ }
+
private Map createManagedVersionMap( String projectId, DependencyManagement dependencyManagement,
ArtifactFactory artifactFactory )
throws ProjectBuildingException