From 85284de94b74302e33129081b23535690991ae1b Mon Sep 17 00:00:00 2001 From: kkolinko Date: Wed, 28 Apr 2010 18:49:11 +0000 Subject: [PATCH] Implement support for running the tests when the build output directory has non-default value. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@939050 13f79535-47bb-0310-9956-ffa450edef68 --- build.xml | 4 ++++ test/org/apache/catalina/startup/TestTomcat.java | 8 +++----- test/org/apache/catalina/startup/TestTomcatSSL.java | 17 ++++++++--------- test/org/apache/catalina/startup/TomcatBaseTest.java | 14 ++++++++++++-- 4 files changed, 27 insertions(+), 16 deletions(-) diff --git a/build.xml b/build.xml index 80539f835..2b7f455f5 100644 --- a/build.xml +++ b/build.xml @@ -73,6 +73,7 @@ + @@ -915,6 +916,9 @@ + + + diff --git a/test/org/apache/catalina/startup/TestTomcat.java b/test/org/apache/catalina/startup/TestTomcat.java index 612e08e90..12ef7ae17 100644 --- a/test/org/apache/catalina/startup/TestTomcat.java +++ b/test/org/apache/catalina/startup/TestTomcat.java @@ -185,8 +185,7 @@ public class TestTomcat extends TomcatBaseTest { public void testSingleWebapp() throws Exception { Tomcat tomcat = getTomcatInstance(); - File appDir = - new File("output/build/webapps/examples"); + File appDir = new File(getBuildDirectory(), "webapps/examples"); // app dir is relative to server home tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); @@ -200,8 +199,7 @@ public class TestTomcat extends TomcatBaseTest { public void testJsps() throws Exception { Tomcat tomcat = getTomcatInstance(); - File appDir = - new File("output/build/webapps/examples"); + File appDir = new File(getBuildDirectory(), "webapps/examples"); // app dir is relative to server home tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); @@ -296,7 +294,7 @@ public class TestTomcat extends TomcatBaseTest { String contextPath = "/examples"; - File appDir = new File("output/build/webapps" + contextPath); + File appDir = new File(getBuildDirectory(), "webapps" + contextPath); // app dir is relative to server home org.apache.catalina.Context ctx = tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); diff --git a/test/org/apache/catalina/startup/TestTomcatSSL.java b/test/org/apache/catalina/startup/TestTomcatSSL.java index 637431eec..9e17a3ca6 100644 --- a/test/org/apache/catalina/startup/TestTomcatSSL.java +++ b/test/org/apache/catalina/startup/TestTomcatSSL.java @@ -70,9 +70,11 @@ public class TestTomcatSSL extends TomcatBaseTest { tomcat.getConnector().setProperty("SSLEnabled", "true"); tomcat.getConnector().setProperty("sslProtocol", "tls"); - // test runs in output/tmp - tomcat.getConnector().setAttribute("keystoreFile", - "../../test/org/apache/catalina/startup/test.keystore"); + + File keystoreFile = new File( + "test/org/apache/catalina/startup/test.keystore"); + tomcat.getConnector().setAttribute("keystoreFile", + keystoreFile.getAbsolutePath()); } public void testSimpleSsl() throws Exception { @@ -98,8 +100,7 @@ public class TestTomcatSSL extends TomcatBaseTest { Tomcat tomcat = getTomcatInstance(); - File appDir = - new File("output/build/webapps/examples"); + File appDir = new File(getBuildDirectory(), "webapps/examples"); tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); initSsl(tomcat, nio); @@ -119,8 +120,7 @@ public class TestTomcatSSL extends TomcatBaseTest { public void renegotiateFail(boolean nio) throws Exception { Tomcat tomcat = getTomcatInstance(); - File appDir = - new File("output/build/webapps/examples"); + File appDir = new File(getBuildDirectory(), "webapps/examples"); // app dir is relative to server home tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); @@ -198,8 +198,7 @@ public class TestTomcatSSL extends TomcatBaseTest { public void renegotiateWorks(boolean nio) throws Exception { Tomcat tomcat = getTomcatInstance(); - File appDir = - new File("output/build/webapps/examples"); + File appDir = new File(getBuildDirectory(), "webapps/examples"); // app dir is relative to server home tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath()); diff --git a/test/org/apache/catalina/startup/TomcatBaseTest.java b/test/org/apache/catalina/startup/TomcatBaseTest.java index 167c8ace0..53097e74b 100644 --- a/test/org/apache/catalina/startup/TomcatBaseTest.java +++ b/test/org/apache/catalina/startup/TomcatBaseTest.java @@ -67,7 +67,17 @@ public abstract class TomcatBaseTest extends TestCase { port++; return getPort(); } - + + /** + * Helper method that returns the directory where Tomcat build resides. It + * is used to access resources that are part of default Tomcat deployment. + * E.g. the examples webapp. + */ + public File getBuildDirectory() { + return new File(System.getProperty("tomcat.test.tomcatbuild", + "output/build")); + } + @Override public void setUp() throws Exception { // Need to use JULI and to configure a ConsoleHandler so log messages @@ -77,7 +87,7 @@ public abstract class TomcatBaseTest extends TestCase { LogManager.getLogManager().getLogger("").addHandler( new ConsoleHandler()); - tempDir = new File("output/tmp"); + tempDir = new File(System.getProperty("tomcat.test.temp", "output/tmp")); tempDir.mkdir(); File appBase = new File(tempDir, "webapps"); appBase.mkdir(); -- 2.11.0