From 08be498ff36927d8d979b57c631eb72e64a2d23a Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Fri, 4 Nov 2011 16:58:51 +0000 Subject: [PATCH] fix unit tests in webapp those lucene locks kills me :-) git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1197664 13f79535-47bb-0310-9956-ffa450edef68 --- .../archiva-web/archiva-webapp/pom.xml | 3 + .../archiva/web/rss/RssFeedServletTest.java | 70 +++++++++++++------ .../resources/spring-context-rss-servlet.xml | 21 ++++++ 3 files changed, 74 insertions(+), 20 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webapp/pom.xml b/archiva-modules/archiva-web/archiva-webapp/pom.xml index 5b8ccc864..103759bf2 100644 --- a/archiva-modules/archiva-web/archiva-webapp/pom.xml +++ b/archiva-modules/archiva-web/archiva-webapp/pom.xml @@ -579,6 +579,9 @@ ${archiva.baseRestUrl} ${rest.admin.pwd} ${basedir}/target/archiva.xml + ${project.build.testOutputDirectory} + jdbc:derby:memory:users-test;create=true + org.apache.derby.jdbc.EmbeddedDriver ${basedir} diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/web/rss/RssFeedServletTest.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/web/rss/RssFeedServletTest.java index 87e52e54e..9a55321c9 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/web/rss/RssFeedServletTest.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/web/rss/RssFeedServletTest.java @@ -28,13 +28,19 @@ import com.meterware.servletunit.ServletUnitClient; import junit.framework.TestCase; import org.apache.commons.codec.Encoder; import org.apache.commons.codec.binary.Base64; -import org.apache.jackrabbit.core.RepositoryImpl; -import org.apache.jackrabbit.core.util.RepositoryLock; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Ignore; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.BlockJUnit4ClassRunner; - -import java.io.File; import javax.servlet.http.HttpServletResponse; +import java.io.File; +@RunWith( BlockJUnit4ClassRunner.class ) public class RssFeedServletTest extends TestCase { @@ -42,6 +48,25 @@ public class RssFeedServletTest private ServletUnitClient client; + static String PREVIOUS_ARCHIVA_PATH; + + @BeforeClass + public static void initConfigurationPath() + throws Exception + { + PREVIOUS_ARCHIVA_PATH = System.getProperty( "archiva.user.configFileName" ); + System.setProperty( "archiva.user.configFileName", + System.getProperty( "test.resources.path/" ) + "empty-archiva.xml" ); + } + + @AfterClass + public static void restoreConfigurationPath() + throws Exception + { + System.setProperty( "archiva.user.configFileName", PREVIOUS_ARCHIVA_PATH ); + } + + @Before public void setUp() throws Exception { @@ -49,8 +74,8 @@ public class RssFeedServletTest client = sr.newClient(); } - @Override - protected void tearDown() + @After + public void tearDown() throws Exception { if ( client != null ) @@ -66,25 +91,27 @@ public class RssFeedServletTest super.tearDown(); } + @Test public void testRetrieveServlet() throws Exception { - RssFeedServlet servlet = (RssFeedServlet) client.newInvocation( - "http://localhost/feeds/test-repo" ).getServlet(); + RssFeedServlet servlet = + (RssFeedServlet) client.newInvocation( "http://localhost/feeds/test-repo" ).getServlet(); assertNotNull( servlet ); } + @Test public void testRequestNewArtifactsInRepo() throws Exception { - RssFeedServlet servlet = (RssFeedServlet) client.newInvocation( - "http://localhost/feeds/test-repo" ).getServlet(); + RssFeedServlet servlet = + (RssFeedServlet) client.newInvocation( "http://localhost/feeds/test-repo" ).getServlet(); assertNotNull( servlet ); WebRequest request = new GetMethodWebRequest( "http://localhost/feeds/test-repo" ); - Base64 encoder = new Base64(0, new byte[0]); + Base64 encoder = new Base64( 0, new byte[0] ); String userPass = "user1:password1"; String encodedUserPass = encoder.encodeToString( userPass.getBytes() ); request.setHeaderField( "Authorization", "BASIC " + encodedUserPass ); @@ -96,6 +123,7 @@ public class RssFeedServletTest } + @Test public void testRequestNewVersionsOfArtifact() throws Exception { @@ -105,7 +133,7 @@ public class RssFeedServletTest WebRequest request = new GetMethodWebRequest( "http://localhost/feeds/org/apache/archiva/artifact-two" ); - Base64 encoder = new Base64(0, new byte[0]); + Base64 encoder = new Base64( 0, new byte[0] ); String userPass = "user1:password1"; String encodedUserPass = encoder.encodeToString( userPass.getBytes() ); request.setHeaderField( "Authorization", "BASIC " + encodedUserPass ); @@ -116,11 +144,12 @@ public class RssFeedServletTest assertEquals( "Should have been an OK response code.", HttpServletResponse.SC_OK, response.getResponseCode() ); } + @Ignore public void XXX_testInvalidRequest() throws Exception { - RssFeedServlet servlet = (RssFeedServlet) client.newInvocation( - "http://localhost/feeds?invalid_param=xxx" ).getServlet(); + RssFeedServlet servlet = + (RssFeedServlet) client.newInvocation( "http://localhost/feeds?invalid_param=xxx" ).getServlet(); assertNotNull( servlet ); try @@ -135,11 +164,12 @@ public class RssFeedServletTest } } + @Ignore public void XXX_testInvalidAuthenticationRequest() throws Exception { - RssFeedServlet servlet = (RssFeedServlet) client.newInvocation( - "http://localhost/feeds/unauthorized-repo" ).getServlet(); + RssFeedServlet servlet = + (RssFeedServlet) client.newInvocation( "http://localhost/feeds/unauthorized-repo" ).getServlet(); assertNotNull( servlet ); WebRequest request = new GetMethodWebRequest( "http://localhost/feeds/unauthorized-repo" ); @@ -161,16 +191,17 @@ public class RssFeedServletTest } } + @Ignore public void XXX_testUnauthorizedRequest() throws Exception { - RssFeedServlet servlet = (RssFeedServlet) client.newInvocation( - "http://localhost/feeds/unauthorized-repo" ).getServlet(); + RssFeedServlet servlet = + (RssFeedServlet) client.newInvocation( "http://localhost/feeds/unauthorized-repo" ).getServlet(); assertNotNull( servlet ); WebRequest request = new GetMethodWebRequest( "http://localhost/feeds/unauthorized-repo" ); - Base64 encoder = new Base64(0, new byte[0]); + Base64 encoder = new Base64( 0, new byte[0] ); String userPass = "user1:password1"; String encodedUserPass = encoder.encodeToString( userPass.getBytes() ); request.setHeaderField( "Authorization", "BASIC " + encodedUserPass ); @@ -188,5 +219,4 @@ public class RssFeedServletTest } - } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/spring-context-rss-servlet.xml b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/spring-context-rss-servlet.xml index 7860e21a1..4b0b49e88 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/spring-context-rss-servlet.xml +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/spring-context-rss-servlet.xml @@ -43,4 +43,25 @@ + + + + + + + + + + + + + + ]]> + + + + \ No newline at end of file -- 2.39.5