Author: julien(a)jboss.com
Date: 2007-09-17 19:01:49 -0400 (Mon, 17 Sep 2007)
New Revision: 8302
Removed:
modules/common/trunk/common/src/resources/format/
modules/common/trunk/common/src/resources/test/
Modified:
modules/common/trunk/common/build.xml
modules/common/trunk/common/src/main/java/org/jboss/portal/common/util/ParameterValidation.java
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ComplexResourceBundleFactoryTestCase.java
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ImplodeTestCase.java
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/net/URLNavigatorTestCase.java
modules/common/trunk/tools/etc/buildfragments/buildmagic.ent
modules/common/trunk/tools/etc/buildfragments/defaults.ent
Log:
make common test suite work as before / fixed build for new directory structure
Modified: modules/common/trunk/common/build.xml
===================================================================
--- modules/common/trunk/common/build.xml 2007-09-17 21:07:11 UTC (rev 8301)
+++ modules/common/trunk/common/build.xml 2007-09-17 23:01:49 UTC (rev 8302)
@@ -115,8 +115,10 @@
_default:compile-classes,
_default:compile-test-classes,
_default:compile-etc,
- _default:compile-resources">
+ _default:compile-resources,
+ _default:compile-test-resources">
<!-- Add module specific elements here. -->
+
</target>
<target name="generate-parsers" depends="init">
@@ -134,15 +136,21 @@
description="Generate all target output."
depends="compile">
- <mkdir dir="${build.lib}"/>
+ <mkdir dir="${build.lib}"/>
- <jar jarfile="${build.lib}/portal-common-lib.jar"
manifest="${build.etc}/portal-common-lib-jar.mf">
- <fileset dir="${build.resources}/format/code"/>
- <fileset dir="${build.classes}">
- <exclude name="org/jboss/portal/common/ant/**/*"/>
- </fileset>
- </jar>
+ <jar jarfile="${build.lib}/portal-common-lib.jar"
manifest="${build.etc}/portal-common-lib-jar.mf">
+ <fileset dir="${build.resources}/format/code"/>
+ <fileset dir="${build.classes}">
+ <exclude name="org/jboss/portal/common/ant/**/*"/>
+ </fileset>
+ </jar>
+ <jar jarfile="${build.lib}/portal-common-test-lib.jar">
+ <fileset dir="${build.test.classes}">
+ <exclude name="org/jboss/portal/common/ant/**/*"/>
+ </fileset>
+ </jar>
+
<!-- Build the ant task that explodes archives -->
<jar jarfile="${build.lib}/explode.jar">
<fileset dir="${build.classes}">
@@ -150,15 +158,14 @@
<include name="org/jboss/portal/common/junit/ant/**"/>
</fileset>
</jar>
- </target>
+ </target>
- <!-- generates artifacts used for tests, requires output to be previously run
- -->
- <target name="package-tests" depends="init">
- <jar jarfile="${build.lib}/test.jar">
- <fileset dir="${build.resources}/test/test-jar"/>
- </jar>
- </target>
+ <!-- generates artifacts used for tests, requires output to be previously run
-->
+ <target name="package-tests" depends="init">
+ <jar jarfile="${build.test.resources}/test.jar">
+ <fileset dir="${build.test.resources}/test-jar"/>
+ </jar>
+ </target>
<!-- ================================================================== -->
@@ -242,7 +249,8 @@
</x-test>
<x-classpath>
<pathelement location="${build.classes}"/>
- <pathelement location="${build.resources}"/>
+ <pathelement location="${build.test.classes}"/>
+ <pathelement location="${build.test.resources}"/>
<path refid="dom4j.dom4j.classpath"/>
<path refid="library.classpath"/>
<path refid="dependentmodule.classpath"/>
Modified:
modules/common/trunk/common/src/main/java/org/jboss/portal/common/util/ParameterValidation.java
===================================================================
---
modules/common/trunk/common/src/main/java/org/jboss/portal/common/util/ParameterValidation.java 2007-09-17
21:07:11 UTC (rev 8301)
+++
modules/common/trunk/common/src/main/java/org/jboss/portal/common/util/ParameterValidation.java 2007-09-17
23:01:49 UTC (rev 8302)
@@ -47,16 +47,20 @@
{
if (objectToTest == null)
{
- throw new IllegalArgumentException("Must pass a valid " + name);
+ throw new IllegalArgumentException("Must pass a non null " + name);
}
}
/** @since 2.4.1 */
public static void throwIllegalArgExceptionIfNullOrEmpty(Object[] array, String name)
{
- if (array == null || array.length == 0)
+ if (array == null)
{
- throw new IllegalArgumentException("Must pass a non-null, non-empty "
+ name);
+ throw new IllegalArgumentException("Must pass a non-null " + name);
}
+ if (array.length == 0)
+ {
+ throw new IllegalArgumentException("Must pass a non-empty " + name);
+ }
}
}
Modified:
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ComplexResourceBundleFactoryTestCase.java
===================================================================
---
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ComplexResourceBundleFactoryTestCase.java 2007-09-17
21:07:11 UTC (rev 8301)
+++
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ComplexResourceBundleFactoryTestCase.java 2007-09-17
23:01:49 UTC (rev 8302)
@@ -40,23 +40,16 @@
{
/** . */
- private File resourcesDir;
-
- /** . */
private ClassLoader cl;
protected void setUp() throws Exception
{
- File f = new File("");
- String path = f.getAbsolutePath();
- resourcesDir = new File(path + "/target/test-classes");
- assertTrue(resourcesDir.exists());
- assertTrue(resourcesDir.isDirectory());
-
- File bundle = new File(resourcesDir, "/bundle");
- assertTrue(bundle.exists());
- assertTrue(bundle.isDirectory());
- cl = new URLClassLoader(new URL[]{bundle.toURL()},
ClassLoader.getSystemClassLoader());
+ URL bundleURL =
Thread.currentThread().getContextClassLoader().getResource("bundle");
+ assertNotNull(bundleURL);
+ File f = new File(bundleURL.getFile());
+ assertTrue(f.exists());
+ assertTrue(f.isDirectory());
+ cl = new URLClassLoader(new URL[]{f.toURL()}, ClassLoader.getSystemClassLoader());
}
public void testExactMatch() throws Exception
Modified:
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ImplodeTestCase.java
===================================================================
---
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ImplodeTestCase.java 2007-09-17
21:07:11 UTC (rev 8301)
+++
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/ImplodeTestCase.java 2007-09-17
23:01:49 UTC (rev 8302)
@@ -26,6 +26,7 @@
import org.jboss.portal.common.ant.Implode;
import java.io.File;
+import java.net.URL;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -41,13 +42,12 @@
public void testA() throws Exception
{
- File f = new File("");
- String path = f.getAbsolutePath();
-
- File foo_sarDir = new File(path +
"/target/test-classes/implode/foo.sar");
-
+ URL foo_sarURL =
Thread.currentThread().getContextClassLoader().getResource("implode/foo.sar");
+ assertNotNull(foo_sarURL);
+ File foo_sarDir = new File(foo_sarURL.getFile());
assertTrue(foo_sarDir.exists());
assertTrue(foo_sarDir.isDirectory());
+
File tmp = File.createTempFile("foo", ".sar");
tmp.deleteOnExit();
tmp.setLastModified(foo_sarDir.lastModified() - 1);
Modified:
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/net/URLNavigatorTestCase.java
===================================================================
---
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/net/URLNavigatorTestCase.java 2007-09-17
21:07:11 UTC (rev 8301)
+++
modules/common/trunk/common/src/test/java/org/jboss/portal/test/common/net/URLNavigatorTestCase.java 2007-09-17
23:01:49 UTC (rev 8302)
@@ -35,6 +35,7 @@
import org.jboss.portal.common.net.URLFilter;
import org.jboss.portal.common.net.URLNavigator;
import org.jboss.portal.common.net.URLVisitor;
+import org.jboss.portal.common.net.URLTools;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -171,7 +172,7 @@
public void testRootWithFile() throws Exception
{
- URL fileURL = getFileURL ("/test-jar");
+ URL fileURL = getFileURL ("test-jar");
ArrayList expectedAtoms = new ArrayList();
expectedAtoms.add("<test-jar>");
@@ -228,7 +229,7 @@
public void testDirectoryWithFile() throws Exception
{
- URL fileURL = getFileURL ("test-jar/a1/");
+ URL fileURL = getFileURL("test-jar/a1/");
doDirectoryTest(fileURL);
}
@@ -417,7 +418,7 @@
public void testFileURLs() throws Exception
{
//Note no / at the end
- URL fileURL = getFileURL("/test-jar/a1");
+ URL fileURL = getFileURL("test-jar/a1");
doTest (fileURL, expectedAtomsA1, expectedURLsA1, noFilter);
doTest (fileURL, new ArrayList(), new ArrayList(), fullFilter);
@@ -440,36 +441,24 @@
/*----------Utility Metods and Classes ---------------*/
- private URL getFileURL (String name) throws MalformedURLException
+ private URL getFileURL(String name) throws MalformedURLException
{
- File f = new File("");
- String resourcePath = f.getAbsolutePath() + "/target/test-classes";
- File resourcesDir = new File(resourcePath);
- assertTrue(resourcesDir.exists());
- assertTrue(resourcesDir.isDirectory());
-
- File file = new File (resourcesDir, name);
- assertTrue (file.exists());
- return file.toURL();
+ URL url = Thread.currentThread().getContextClassLoader().getResource(name);
+ assertNotNull("Could not load URL for file " + name, url);
+ assertTrue(URLTools.exists(url));
+ return url;
}
- private URL getJarURL (String name) throws MalformedURLException
+ private URL getJarURL(String name) throws MalformedURLException
{
- File f = new File("");
- String libPath = f.getAbsolutePath() + "/target";
- assertNotNull(libPath);
- File libDir = new File(libPath);
- assertTrue(libDir.exists());
- assertTrue(libDir.isDirectory());
- File jarFile = new File(libDir, TEST_JAR_NAME);
+ URL url = getFileURL(TEST_JAR_NAME);
+ File jarFile = new File(url.getFile());
assertTrue(jarFile.exists());
- jarFile.deleteOnExit();
- assertFalse(jarFile.isDirectory());
- URL jarURL = new URL("jar", "", jarFile.toURL() + "!"
+ name);
- return jarURL;
+ return new URL("jar", "", jarFile.toURL() + "!" +
name);
}
- public List removeFiles(ArrayList list){
+ public List removeFiles(ArrayList list)
+ {
ArrayList newList = (ArrayList)list.clone();
ArrayList fileList = new ArrayList();
Modified: modules/common/trunk/tools/etc/buildfragments/buildmagic.ent
===================================================================
--- modules/common/trunk/tools/etc/buildfragments/buildmagic.ent 2007-09-17 21:07:11 UTC
(rev 8301)
+++ modules/common/trunk/tools/etc/buildfragments/buildmagic.ent 2007-09-17 23:01:49 UTC
(rev 8302)
@@ -405,30 +405,32 @@
<target name="_default:compile-test-classes"
depends="_buildmagic:init" unless="compile.disable">
<mkdir dir="${build.test}"/>
+ <mkdir dir="${build.test.classes}"/>
<!-- Hack, required to avoid duplicate javac targets -->
<mkdir dir="${build.gen.test}"/>
<!-- Remove classes which depend on changed files, so they will rebuild. -->
- <depend srcdir="${source.test}:${build.gen.test}"
- destdir="${build.test}"
+ <depend srcdir="${source.test.classes}"
+ destdir="${build.test.classes}"
dump="${javac.depend.dump}"
closure="${javac.depend.closure}">
<include name="${javac.includes}"/>
<exclude name="${javac.excludes}"/>
</depend>
- <javac destdir="${build.test}"
+ <javac destdir="${build.test.classes}"
optimize="${javac.optimize}"
target="${javac.target}"
debug="${javac.debug}"
+ source="${javac.source}"
depend="${javac.depend}"
verbose="${javac.verbose}"
deprecation="${javac.deprecation}"
includeAntRuntime="${javac.include.ant.runtime}"
includeJavaRuntime="${javac.include.java.runtime}"
failonerror="${javac.fail.onerror}">
- <src path="${source.test}:${build.gen.test}"/>
+ <src path="${source.test.classes}"/>
<classpath>
<path refid="javac.classpath"/>
<pathelement location="${build.classes}"/>
@@ -475,6 +477,27 @@
</copy>
</target>
+<target name="_default:check-exists-test-resources">
+ <condition property="source.test.resources.exists">
+ <available file="${source.test.resources}" type="dir"/>
+ </condition>
+</target>
+
+<!-- Compile resource files -->
+<target name="_default:compile-test-resources"
depends="_buildmagic:init, _default:check-exists-test-resources"
unless="compile.disable" if="source.test.resources.exists">
+ <mkdir dir="${build.test.resources}"/>
+ <copy todir="${build.test.resources}" filtering="yes">
+ <fileset dir="${source.test.resources}">
+ <patternset refid="compile-resources.filter.pattern"/>
+ </fileset>
+ </copy>
+ <copy todir="${build.test.resources}" filtering="no">
+ <fileset dir="${source.test.resources}">
+ <patternset refid="compile-resources.pattern"/>
+ </fileset>
+ </copy>
+</target>
+
<patternset id="compile-resources.filter.pattern">
<include name="**/*"/>
</patternset>
@@ -595,7 +618,7 @@
<mkdir dir="${build.test}"/>
<!-- Hack, required to avoid duplicate javac targets -->
- <mkdir dir="${build.gen.test}"/>
+ <mkdir dir="${build.test.gen}"/>
<path id="tests.classpath">
<pathelement path="${classpath}"/>
Modified: modules/common/trunk/tools/etc/buildfragments/defaults.ent
===================================================================
--- modules/common/trunk/tools/etc/buildfragments/defaults.ent 2007-09-17 21:07:11 UTC
(rev 8301)
+++ modules/common/trunk/tools/etc/buildfragments/defaults.ent 2007-09-17 23:01:49 UTC
(rev 8302)
@@ -37,15 +37,17 @@
<!-- ========= -->
<!-- Where source files live -->
- <property name="source.classes"
value="${module.source}/main"/>
+ <property name="source.classes"
value="${module.source}/main/java"/>
<property name="source.docs" value="${module.source}/docs"/>
<property name="source.etc" value="${module.source}/etc"/>
<property name="source.examples"
value="${module.source}/examples"/>
<property name="source.bin" value="${module.source}/bin"/>
- <property name="source.resources"
value="${module.source}/resources"/>
+ <property name="source.resources"
value="${module.source}/main/resources"/>
<property name="source.stylesheets"
value="${module.source}/stylesheets"/>
<property name="source.web" value="${module.source}/web"/>
<property name="source.test" value="${module.source}/test"/>
+ <property name="source.test.classes"
value="${module.source}/test/java"/>
+ <property name="source.test.resources"
value="${module.source}/test/resources"/>
<!-- Where build generated files will go -->
<property name="build.api" value="${module.output}/api"/>
@@ -68,7 +70,9 @@
<property name="build.log" value="${module.output}/log"/>
<property name="build.cache"
value="${module.output}/cache"/>
<property name="build.test" value="${module.output}/test"/>
- <property name="build.gen.test" value="${build.gen}/test"/>
+ <property name="build.test.classes"
value="${module.output}/test/classes"/>
+ <property name="build.test.resources"
value="${module.output}/test/resources"/>
+ <property name="build.test.gen"
value="${build.gen}/test/gen"/>
<!-- Legacy -->
<property name="build.metadata"
value="${module.output}/metadata"/>