Analog of gtest_filter for java tests.
authorAlexander Smorkalov <alexander.smorkalov@xperience.ai>
Mon, 24 May 2021 12:10:38 +0000 (15:10 +0300)
committerAlexander Smorkalov <alexander.smorkalov@xperience.ai>
Tue, 1 Jun 2021 08:04:18 +0000 (11:04 +0300)
modules/java/test/pure_test/build.xml
modules/ts/misc/run.py
modules/ts/misc/run_suite.py

index 15419f5d677845ad687b2620e806ef3867636071..e596c82e9dc2ebb624b485de5674557f09f77f63 100644 (file)
@@ -6,6 +6,7 @@
 
   <property name="opencv.test.package" value="*"/>
   <property name="opencv.test.class" value="*"/>
+  <property name="opencv.test.exclude" value=""/>
 
   <path id="master-classpath">
     <fileset dir="lib">
@@ -53,7 +54,7 @@
       <formatter type="xml"/>
 
       <batchtest fork="yes" todir="${test.dir}">
-        <zipfileset src="build/jar/opencv-test.jar" includes="**/${opencv.test.package}/${opencv.test.class}.class" excludes="**/OpenCVTest*">
+        <zipfileset src="build/jar/opencv-test.jar" includes="**/${opencv.test.package}/${opencv.test.class}.class" excludes="**/OpenCVTest*, ${opencv.test.exclude}">
           <exclude name="**/*$*.class"/>
         </zipfileset>
       </batchtest>
index 2d5de0708ca49ec12c33cfcf6ef010c9a048a2ea..c2e4d6532b7f89f8f3ddc575f2ee01d35b9166f8 100755 (executable)
@@ -51,6 +51,7 @@ if __name__ == "__main__":
     parser.add_argument("--android_propagate_opencv_env", action="store_true", default=False, help="Android: propagate OPENCV* environment variables")
     parser.add_argument("--serial", metavar="serial number", default="", help="Android: directs command to the USB device or emulator with the given serial number")
     parser.add_argument("--package", metavar="package", default="", help="Java: run JUnit tests for specified module or Android package")
+    parser.add_argument("--java_test_exclude", metavar="java_test_exclude", default="", help="Java: Filter out specific JUnit tests")
 
     parser.add_argument("--trace", action="store_true", default=False, help="Trace: enable OpenCV tracing")
     parser.add_argument("--trace_dump", metavar="trace_dump", default=-1, help="Trace: dump highlight calls (specify max entries count, 0 - dump all)")
index 0420d9a968397b60df878fd38567b29caae149e0..2f382238cd63710df589ca0b34bfd3af206eefe5 100644 (file)
@@ -115,6 +115,8 @@ class TestSuite(object):
             cmd = [self.cache.ant_executable, "-Dopencv.build.type=%s" % self.cache.build_type]
             if self.options.package:
                 cmd += ["-Dopencv.test.package=%s" % self.options.package]
+            if self.options.java_test_exclude:
+                cmd += ["-Dopencv.test.exclude=%s" % self.options.java_test_exclude]
             cmd += ["buildAndTest"]
             ret = execute(cmd, cwd=self.cache.java_test_dir)
             return None, ret