diff options
author | Joe Buck <jbbuck@gmail.com> | 2012-11-01 22:26:34 -0700 |
---|---|---|
committer | Joe Buck <jbbuck@gmail.com> | 2012-11-08 09:28:23 -0800 |
commit | c3129a27807fb5479862d3941c461ae63d3bb99c (patch) | |
tree | c030a52ccd645645e428face65fc154fbbd3927e /src/java | |
parent | 77015424f879e59f904362aceb9bd142f0d2cd4c (diff) | |
download | ceph-c3129a27807fb5479862d3941c461ae63d3bb99c.tar.gz |
Changing build.xml to produce a jar instead of class files Adding a
TestSuite class to run all tests
Remove the libcephfs-test.jar when running ant clean
Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
Diffstat (limited to 'src/java')
-rw-r--r-- | src/java/build.xml | 28 | ||||
-rw-r--r-- | src/java/test/com/ceph/fs/CephAllTests.java | 57 |
2 files changed, 76 insertions, 9 deletions
diff --git a/src/java/build.xml b/src/java/build.xml index 51f8aec92b5..701c2757ea1 100644 --- a/src/java/build.xml +++ b/src/java/build.xml @@ -14,6 +14,7 @@ <delete> <fileset dir="${test.dir}" includes="**/*.class" /> </delete> + <delete file="./libcephfs-test.jar" /> </target> <target name="makedir"> @@ -40,15 +41,28 @@ <pathelement location="${env.CLASSPATH}" /> </classpath> </javac> - <jar basedir="test" destfile="./libcephfs-test.jar"> + <jar destfile="./libcephfs-test.jar"> + <fileset dir="${test.dir}" includes="**/*.class"/> </jar> </target> - <target name="test-compat" depends="compile-tests-jar,test"> + <target name="test" depends="compile-tests-jar"> + <junit printsummary="yes" haltonfailure="yes" showoutput="yes" fork="true"> + <sysproperty key="java.library.path" path="${env.CEPHFS_JNI_LIB}:../.libs/"/> + <sysproperty key="CEPH_CONF_FILE" path="${env.CEPHFS_CONF}"/> + <jvmarg value="-Xcheck:jni"/> + <classpath> + <pathelement location="${env.CEPHFS_JAR}"/> + <pathelement location="libcephfs.jar"/> + <pathelement location="libcephfs-test.jar"/> + </classpath> + <formatter type="plain"/> + <test name="com.ceph.fs.CephAllTests" haltonerror="true" /> + </junit> </target> - <target name="test"> - <junit printsummary="yes" haltonfailure="yes" showoutput="yes"> + <target name="test-compat" depends="compile-tests-jar"> + <junit printsummary="yes" haltonfailure="yes" showoutput="yes" fork="true"> <sysproperty key="java.library.path" path="${env.CEPHFS_JNI_LIB}:../.libs/"/> <sysproperty key="CEPH_CONF_FILE" path="${env.CEPHFS_CONF}"/> <classpath> @@ -57,11 +71,7 @@ <pathelement location="libcephfs-test.jar"/> </classpath> <formatter type="plain"/> - <batchtest fork="yes"> - <zipfileset src="libcephfs-test.jar"> - <include name="**/*Test.class"/> - </zipfileset> - </batchtest> + <test name="com.ceph.fs.CephAllTests" haltonerror="true" /> </junit> </target> diff --git a/src/java/test/com/ceph/fs/CephAllTests.java b/src/java/test/com/ceph/fs/CephAllTests.java new file mode 100644 index 00000000000..71c2ddfee96 --- /dev/null +++ b/src/java/test/com/ceph/fs/CephAllTests.java @@ -0,0 +1,57 @@ +/* + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ +package com.ceph.fs; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.UUID; +import org.junit.*; +import org.junit.rules.ExternalResource; +import org.junit.runners.Suite; +import org.junit.runner.RunWith; +import static org.junit.Assert.*; + + +@RunWith( Suite.class ) +@Suite.SuiteClasses( { + CephDoubleMountTest.class, + CephMountCreateTest.class, + CephMountTest.class, + CephUnmountedTest.class, +}) + +/** + * Every Java test class must be added to this list in order to be executed with 'ant test' + */ +public class CephAllTests{ + + @Rule + public static ExternalResource testRule = new ExternalResource(){ + @Override + protected void before() throws Throwable{ + // Add debugging messages or setup code here + }; + + @Override + protected void after(){ + // Add debugging messages or cleanup code here + }; + }; +} |