mirror of
https://github.com/opencv/opencv.git
synced 2026-07-31 08:13:04 +04:00
java: backport test changes from master
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
<project>
|
||||
<property file="ant-${opencv.build.type}.properties"/>
|
||||
<property name="test.dir" value="testResults"/>
|
||||
<property name="build.dir" value="build"/>
|
||||
|
||||
<path id="master-classpath">
|
||||
<fileset dir="lib">
|
||||
@@ -12,7 +14,7 @@
|
||||
|
||||
<target name="clean">
|
||||
<delete dir="build"/>
|
||||
<delete dir="testResults"/>
|
||||
<delete dir="${test.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="compile">
|
||||
@@ -34,8 +36,8 @@
|
||||
</target>
|
||||
|
||||
<target name="test">
|
||||
<mkdir dir="testResults"/>
|
||||
<junit printsummary="true" haltonfailure="false" haltonerror="false" showoutput="false" logfailedtests="true" maxmemory="256m">
|
||||
<mkdir dir="${test.dir}"/>
|
||||
<junit printsummary="true" haltonfailure="false" haltonerror="false" showoutput="true" logfailedtests="true" maxmemory="256m">
|
||||
<sysproperty key="java.library.path" path="${opencv.lib.path}"/>
|
||||
<env key="PATH" path="${opencv.lib.path}"/>
|
||||
<classpath refid="master-classpath"/>
|
||||
@@ -45,12 +47,18 @@
|
||||
|
||||
<formatter type="xml"/>
|
||||
|
||||
<batchtest fork="yes" todir="testResults">
|
||||
<batchtest fork="yes" todir="${test.dir}">
|
||||
<zipfileset src="build/jar/opencv-test.jar" includes="**/*.class" excludes="**/OpenCVTest*">
|
||||
<exclude name="**/*$*.class"/>
|
||||
</zipfileset>
|
||||
</batchtest>
|
||||
</junit>
|
||||
<junitreport todir="${test.dir}">
|
||||
<fileset dir="${test.dir}">
|
||||
<include name="TEST-*.xml"/>
|
||||
</fileset>
|
||||
<report format="noframes" todir="${test.dir}"/>
|
||||
</junitreport>
|
||||
</target>
|
||||
|
||||
<target name="build">
|
||||
|
||||
@@ -28,6 +28,11 @@ import org.opencv.features2d.KeyPoint;
|
||||
import org.opencv.highgui.Highgui;
|
||||
|
||||
public class OpenCVTestCase extends TestCase {
|
||||
|
||||
public static class TestSkipException extends RuntimeException {
|
||||
public TestSkipException() {}
|
||||
}
|
||||
|
||||
//change to 'true' to unblock fail on fail("Not yet implemented")
|
||||
public static final boolean passNYI = true;
|
||||
|
||||
@@ -212,12 +217,40 @@ public class OpenCVTestCase extends TestCase {
|
||||
protected void runTest() throws Throwable {
|
||||
// Do nothing if the precondition does not hold.
|
||||
if (isTestCaseEnabled) {
|
||||
super.runTest();
|
||||
try {
|
||||
super.runTest();
|
||||
} catch (TestSkipException ex) {
|
||||
OpenCVTestRunner.Log(TAG + " :: " + "Test case \"" + this.getClass().getName() + "\" skipped!");
|
||||
assertTrue(true);
|
||||
}
|
||||
} else {
|
||||
OpenCVTestRunner.Log(TAG + " :: " + "Test case \"" + this.getClass().getName() + "\" disabled!");
|
||||
}
|
||||
}
|
||||
|
||||
public void runBare() throws Throwable {
|
||||
Throwable exception = null;
|
||||
try {
|
||||
setUp();
|
||||
} catch (TestSkipException ex) {
|
||||
OpenCVTestRunner.Log(TAG + " :: " + "Test case \"" + this.getClass().getName() + "\" skipped!");
|
||||
assertTrue(true);
|
||||
return;
|
||||
}
|
||||
try {
|
||||
runTest();
|
||||
} catch (Throwable running) {
|
||||
exception = running;
|
||||
} finally {
|
||||
try {
|
||||
tearDown();
|
||||
} catch (Throwable tearingDown) {
|
||||
if (exception == null) exception = tearingDown;
|
||||
}
|
||||
}
|
||||
if (exception != null) throw exception;
|
||||
}
|
||||
|
||||
protected Mat getMat(int type, double... vals)
|
||||
{
|
||||
return new Mat(matSize, matSize, type, new Scalar(vals));
|
||||
@@ -235,6 +268,10 @@ public class OpenCVTestCase extends TestCase {
|
||||
TestCase.fail(msg);
|
||||
}
|
||||
|
||||
public static void assertGE(double v1, double v2) {
|
||||
assertTrue("Failed: " + v1 + " >= " + v2, v1 >= v2);
|
||||
}
|
||||
|
||||
public static <E extends Number> void assertListEquals(List<E> list1, List<E> list2) {
|
||||
if (list1.size() != list2.size()) {
|
||||
throw new UnsupportedOperationException();
|
||||
@@ -449,10 +486,10 @@ public class OpenCVTestCase extends TestCase {
|
||||
|
||||
if (isEqualityMeasured)
|
||||
assertTrue("Max difference between expected and actiual Mats is "+ maxDiff + ", that bigger than " + eps,
|
||||
Core.checkRange(diff, true, 0.0, eps));
|
||||
maxDiff <= eps);
|
||||
else
|
||||
assertFalse("Max difference between expected and actiual Mats is "+ maxDiff + ", that less than " + eps,
|
||||
Core.checkRange(diff, true, 0.0, eps));
|
||||
maxDiff <= eps);
|
||||
}
|
||||
|
||||
protected static String readFile(String path) {
|
||||
|
||||
Reference in New Issue
Block a user