From f978ee613ecc13c8b5b3eaf160e50294c1f2a644 Mon Sep 17 00:00:00 2001
From: abratchik <abratchik@snap2cart.com>
Date: Tue, 18 Oct 2016 22:22:18 +0400
Subject: [PATCH] fix for #7510, #7511 and #7512

---
 .../calib3d/misc/java/test/Calib3dTest.java   |   4 +-
 .../test/BRIEFDescriptorExtractorTest.java    |   6 +-
 .../test/BruteForceDescriptorMatcherTest.java |  10 +-
 ...ruteForceHammingDescriptorMatcherTest.java |   6 +-
 ...eForceHammingLUTDescriptorMatcherTest.java |   6 +-
 .../BruteForceL1DescriptorMatcherTest.java    |  10 +-
 .../BruteForceSL2DescriptorMatcherTest.java   |  10 +-
 .../test/DynamicDENSEFeatureDetectorTest.java |  39 ------
 .../test/DynamicFASTFeatureDetectorTest.java  |  39 ------
 .../test/DynamicGFTTFeatureDetectorTest.java  |  39 ------
 .../DynamicHARRISFeatureDetectorTest.java     |  39 ------
 .../test/DynamicMSERFeatureDetectorTest.java  |  39 ------
 .../test/DynamicORBFeatureDetectorTest.java   |  39 ------
 .../test/DynamicSIFTFeatureDetectorTest.java  |  39 ------
 .../DynamicSIMPLEBLOBFeatureDetectorTest.java |  39 ------
 .../test/DynamicSTARFeatureDetectorTest.java  |  39 ------
 .../test/DynamicSURFFeatureDetectorTest.java  |  39 ------
 .../java/test/FASTFeatureDetectorTest.java    |   8 +-
 .../misc/java/test/Features2dTest.java        |   8 +-
 .../FernGenericDescriptorMatcherTest.java     | 127 ------------------
 .../test/FlannBasedDescriptorMatcherTest.java |  13 +-
 .../test/GridDENSEFeatureDetectorTest.java    |  39 ------
 .../test/GridFASTFeatureDetectorTest.java     |  39 ------
 .../test/GridGFTTFeatureDetectorTest.java     |  39 ------
 .../test/GridHARRISFeatureDetectorTest.java   |  39 ------
 .../test/GridMSERFeatureDetectorTest.java     |  39 ------
 .../java/test/GridORBFeatureDetectorTest.java |  39 ------
 .../test/GridSIFTFeatureDetectorTest.java     |  39 ------
 .../GridSIMPLEBLOBFeatureDetectorTest.java    |  39 ------
 .../test/GridSTARFeatureDetectorTest.java     |  39 ------
 .../test/GridSURFFeatureDetectorTest.java     |  39 ------
 .../java/test/ORBDescriptorExtractorTest.java |   6 +-
 .../OneWayGenericDescriptorMatcherTest.java   | 127 ------------------
 .../OpponentBRIEFDescriptorExtractorTest.java |  39 ------
 .../OpponentORBDescriptorExtractorTest.java   |  39 ------
 .../OpponentSIFTDescriptorExtractorTest.java  |  39 ------
 .../OpponentSURFDescriptorExtractorTest.java  |  39 ------
 .../test/PyramidDENSEFeatureDetectorTest.java |  39 ------
 .../test/PyramidFASTFeatureDetectorTest.java  |  39 ------
 .../test/PyramidGFTTFeatureDetectorTest.java  |  39 ------
 .../PyramidHARRISFeatureDetectorTest.java     |  39 ------
 .../test/PyramidMSERFeatureDetectorTest.java  |  39 ------
 .../test/PyramidORBFeatureDetectorTest.java   |  39 ------
 .../test/PyramidSIFTFeatureDetectorTest.java  |  39 ------
 .../PyramidSIMPLEBLOBFeatureDetectorTest.java |  39 ------
 .../test/PyramidSTARFeatureDetectorTest.java  |  39 ------
 .../test/PyramidSURFFeatureDetectorTest.java  |  39 ------
 .../test/SIFTDescriptorExtractorTest.java     |   6 +-
 .../java/test/STARFeatureDetectorTest.java    |   8 +-
 .../test/SURFDescriptorExtractorTest.java     |   8 +-
 .../java/test/SURFFeatureDetectorTest.java    |   8 +-
 .../imgproc/misc/java/test/ImgprocTest.java   |   6 +-
 .../src/org/opencv/test/OpenCVTestCase.java   |  41 ++----
 .../src/org/opencv/test/OpenCVTestCase.java   |  41 ++----
 54 files changed, 89 insertions(+), 1696 deletions(-)
 delete mode 100644 modules/features2d/misc/java/test/DynamicDENSEFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicFASTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicGFTTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicHARRISFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicMSERFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicORBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicSIFTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicSIMPLEBLOBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicSTARFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/DynamicSURFFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/FernGenericDescriptorMatcherTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridDENSEFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridFASTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridGFTTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridHARRISFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridMSERFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridORBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridSIFTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridSIMPLEBLOBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridSTARFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/GridSURFFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/OneWayGenericDescriptorMatcherTest.java
 delete mode 100644 modules/features2d/misc/java/test/OpponentBRIEFDescriptorExtractorTest.java
 delete mode 100644 modules/features2d/misc/java/test/OpponentORBDescriptorExtractorTest.java
 delete mode 100644 modules/features2d/misc/java/test/OpponentSIFTDescriptorExtractorTest.java
 delete mode 100644 modules/features2d/misc/java/test/OpponentSURFDescriptorExtractorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidDENSEFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidFASTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidGFTTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidHARRISFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidMSERFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidORBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidSIFTFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidSIMPLEBLOBFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidSTARFeatureDetectorTest.java
 delete mode 100644 modules/features2d/misc/java/test/PyramidSURFFeatureDetectorTest.java

diff --git a/modules/calib3d/misc/java/test/Calib3dTest.java b/modules/calib3d/misc/java/test/Calib3dTest.java
index 73ccc8f50e..add668f190 100644
--- a/modules/calib3d/misc/java/test/Calib3dTest.java
+++ b/modules/calib3d/misc/java/test/Calib3dTest.java
@@ -1,7 +1,6 @@
 package org.opencv.test.calib3d;
 
 import org.opencv.calib3d.Calib3d;
-import org.opencv.core.Core;
 import org.opencv.core.CvType;
 import org.opencv.core.Mat;
 import org.opencv.core.MatOfDouble;
@@ -237,6 +236,8 @@ public class Calib3dTest extends OpenCVTestCase {
     }
 
     public void testFindFundamentalMatListOfPointListOfPoint() {
+        fail("Not yet implemented");
+/*
         int minFundamentalMatPoints = 8;
 
         MatOfPoint2f pts = new MatOfPoint2f();
@@ -253,6 +254,7 @@ public class Calib3dTest extends OpenCVTestCase {
         truth = new Mat(3, 3, CvType.CV_64F);
         truth.put(0, 0, 0, -0.577, 0.288, 0.577, 0, 0.288, -0.288, -0.288, 0);
         assertMatEqual(truth, fm, EPS);
+*/
     }
 
     public void testFindFundamentalMatListOfPointListOfPointInt() {
diff --git a/modules/features2d/misc/java/test/BRIEFDescriptorExtractorTest.java b/modules/features2d/misc/java/test/BRIEFDescriptorExtractorTest.java
index 2de7759528..2c6e543e3d 100644
--- a/modules/features2d/misc/java/test/BRIEFDescriptorExtractorTest.java
+++ b/modules/features2d/misc/java/test/BRIEFDescriptorExtractorTest.java
@@ -27,7 +27,7 @@ public class BRIEFDescriptorExtractorTest extends OpenCVTestCase {
     @Override
     protected void setUp() throws Exception {
         super.setUp();
-        extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"BriefDescriptorExtractor", ALGORITHM_FACTORY_NAME, null, null);
+        extractor = createClassInstance(XFEATURES2D+"BriefDescriptorExtractor", DEFAULT_FACTORY, null, null);
         matSize = 100;
     }
 
@@ -74,7 +74,7 @@ public class BRIEFDescriptorExtractorTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\ndescriptorSize: 64\n");
+        writeFile(filename, "%YAML:1.0\n---\ndescriptorSize: 64\n");
 
         extractor.read(filename);
 
@@ -95,7 +95,7 @@ public class BRIEFDescriptorExtractorTest extends OpenCVTestCase {
 
         extractor.write(filename);
 
-        String truth = "%YAML 1.0\n---\ndescriptorSize: 32\n";
+        String truth = "%YAML:1.0\n---\ndescriptorSize: 32\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/BruteForceDescriptorMatcherTest.java b/modules/features2d/misc/java/test/BruteForceDescriptorMatcherTest.java
index a52ca87ae8..ebdc04f907 100644
--- a/modules/features2d/misc/java/test/BruteForceDescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/BruteForceDescriptorMatcherTest.java
@@ -37,8 +37,8 @@ public class BruteForceDescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint();
         Mat descriptors = new Mat();
 
-        Feature2D detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         setProperty(detector, "hessianThreshold", "double", 8000);
         setProperty(detector, "nOctaves", "int", 3);
@@ -64,7 +64,7 @@ public class BruteForceDescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint(new KeyPoint(50, 50, 16, 0, 20000, 1, -1), new KeyPoint(42, 42, 16, 160, 10000, 1, -1));
         Mat descriptors = new Mat();
 
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         extractor.compute(img, keypoints, descriptors);
 
@@ -272,7 +272,7 @@ public class BruteForceDescriptorMatcherTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\n");
+        writeFile(filename, "%YAML:1.0\n---\n");
 
         matcher.read(filename);
         assertTrue(true);// BruteforceMatcher has no settings
@@ -287,7 +287,7 @@ public class BruteForceDescriptorMatcherTest extends OpenCVTestCase {
 
         matcher.write(filename);
 
-        String truth = "%YAML 1.0\n---\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/BruteForceHammingDescriptorMatcherTest.java b/modules/features2d/misc/java/test/BruteForceHammingDescriptorMatcherTest.java
index 8ef21d671e..6bcc3ea6c1 100644
--- a/modules/features2d/misc/java/test/BruteForceHammingDescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/BruteForceHammingDescriptorMatcherTest.java
@@ -47,7 +47,7 @@ public class BruteForceHammingDescriptorMatcherTest extends OpenCVTestCase {
         Mat descriptors = new Mat();
 
         FeatureDetector detector = FeatureDetector.create(FeatureDetector.FAST);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"BriefDescriptorExtractor", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"BriefDescriptorExtractor", DEFAULT_FACTORY, null, null);
 
         detector.detect(img, keypoints);
         extractor.compute(img, keypoints, descriptors);
@@ -240,7 +240,7 @@ public class BruteForceHammingDescriptorMatcherTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\n");
+        writeFile(filename, "%YAML:1.0\n---\n");
 
         matcher.read(filename);
         assertTrue(true);// BruteforceMatcher has no settings
@@ -255,7 +255,7 @@ public class BruteForceHammingDescriptorMatcherTest extends OpenCVTestCase {
 
         matcher.write(filename);
 
-        String truth = "%YAML 1.0\n---\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/BruteForceHammingLUTDescriptorMatcherTest.java b/modules/features2d/misc/java/test/BruteForceHammingLUTDescriptorMatcherTest.java
index 977a3c1c25..67ceb0b60f 100644
--- a/modules/features2d/misc/java/test/BruteForceHammingLUTDescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/BruteForceHammingLUTDescriptorMatcherTest.java
@@ -46,7 +46,7 @@ public class BruteForceHammingLUTDescriptorMatcherTest extends OpenCVTestCase {
         Mat descriptors = new Mat();
 
         FeatureDetector detector = FeatureDetector.create(FeatureDetector.FAST);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"BriefDescriptorExtractor", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"BriefDescriptorExtractor", DEFAULT_FACTORY, null, null);
 
         detector.detect(img, keypoints);
         extractor.compute(img, keypoints, descriptors);
@@ -235,7 +235,7 @@ public class BruteForceHammingLUTDescriptorMatcherTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\n");
+        writeFile(filename, "%YAML:1.0\n---\n");
 
         matcher.read(filename);
         assertTrue(true);// BruteforceMatcher has no settings
@@ -250,7 +250,7 @@ public class BruteForceHammingLUTDescriptorMatcherTest extends OpenCVTestCase {
 
         matcher.write(filename);
 
-        String truth = "%YAML 1.0\n---\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/BruteForceL1DescriptorMatcherTest.java b/modules/features2d/misc/java/test/BruteForceL1DescriptorMatcherTest.java
index e450de099e..9115d40376 100644
--- a/modules/features2d/misc/java/test/BruteForceL1DescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/BruteForceL1DescriptorMatcherTest.java
@@ -36,8 +36,8 @@ public class BruteForceL1DescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint();
         Mat descriptors = new Mat();
 
-        Feature2D detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         setProperty(detector, "extended", "boolean", true);
         setProperty(detector, "hessianThreshold", "double", 8000);
@@ -64,7 +64,7 @@ public class BruteForceL1DescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint(new KeyPoint(50, 50, 16, 0, 20000, 1, -1), new KeyPoint(42, 42, 16, 160, 10000, 1, -1));
         Mat descriptors = new Mat();
 
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         extractor.compute(img, keypoints, descriptors);
 
@@ -246,7 +246,7 @@ public class BruteForceL1DescriptorMatcherTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\n");
+        writeFile(filename, "%YAML:1.0\n---\n");
 
         matcher.read(filename);
         assertTrue(true);// BruteforceMatcher has no settings
@@ -261,7 +261,7 @@ public class BruteForceL1DescriptorMatcherTest extends OpenCVTestCase {
 
         matcher.write(filename);
 
-        String truth = "%YAML 1.0\n---\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/BruteForceSL2DescriptorMatcherTest.java b/modules/features2d/misc/java/test/BruteForceSL2DescriptorMatcherTest.java
index 2d30229656..ec87dfab48 100644
--- a/modules/features2d/misc/java/test/BruteForceSL2DescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/BruteForceSL2DescriptorMatcherTest.java
@@ -42,8 +42,8 @@ public class BruteForceSL2DescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint();
         Mat descriptors = new Mat();
 
-        Feature2D detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         setProperty(detector, "hessianThreshold", "double", 8000);
         setProperty(detector, "nOctaves", "int", 3);
@@ -69,7 +69,7 @@ public class BruteForceSL2DescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint(new KeyPoint(50, 50, 16, 0, 20000, 1, -1), new KeyPoint(42, 42, 16, 160, 10000, 1, -1));
         Mat descriptors = new Mat();
 
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         extractor.compute(img, keypoints, descriptors);
 
@@ -258,7 +258,7 @@ public class BruteForceSL2DescriptorMatcherTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\n");
+        writeFile(filename, "%YAML:1.0\n---\n");
 
         matcher.read(filename);
         assertTrue(true);// BruteforceMatcher has no settings
@@ -273,7 +273,7 @@ public class BruteForceSL2DescriptorMatcherTest extends OpenCVTestCase {
 
         matcher.write(filename);
 
-        String truth = "%YAML 1.0\n---\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/DynamicDENSEFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicDENSEFeatureDetectorTest.java
deleted file mode 100644
index 75042abe4f..0000000000
--- a/modules/features2d/misc/java/test/DynamicDENSEFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicDENSEFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicFASTFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicFASTFeatureDetectorTest.java
deleted file mode 100644
index 5313e27965..0000000000
--- a/modules/features2d/misc/java/test/DynamicFASTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicFASTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicGFTTFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicGFTTFeatureDetectorTest.java
deleted file mode 100644
index d2410f059b..0000000000
--- a/modules/features2d/misc/java/test/DynamicGFTTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicGFTTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicHARRISFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicHARRISFeatureDetectorTest.java
deleted file mode 100644
index c1162c61c3..0000000000
--- a/modules/features2d/misc/java/test/DynamicHARRISFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicHARRISFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicMSERFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicMSERFeatureDetectorTest.java
deleted file mode 100644
index a3dd24495f..0000000000
--- a/modules/features2d/misc/java/test/DynamicMSERFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicMSERFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicORBFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicORBFeatureDetectorTest.java
deleted file mode 100644
index 69889bcd59..0000000000
--- a/modules/features2d/misc/java/test/DynamicORBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicORBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicSIFTFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicSIFTFeatureDetectorTest.java
deleted file mode 100644
index 6152c1c379..0000000000
--- a/modules/features2d/misc/java/test/DynamicSIFTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicSIFTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicSIMPLEBLOBFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicSIMPLEBLOBFeatureDetectorTest.java
deleted file mode 100644
index 57c46b14d1..0000000000
--- a/modules/features2d/misc/java/test/DynamicSIMPLEBLOBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicSIMPLEBLOBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicSTARFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicSTARFeatureDetectorTest.java
deleted file mode 100644
index 6ca04fe778..0000000000
--- a/modules/features2d/misc/java/test/DynamicSTARFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicSTARFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/DynamicSURFFeatureDetectorTest.java b/modules/features2d/misc/java/test/DynamicSURFFeatureDetectorTest.java
deleted file mode 100644
index e3f4c6664b..0000000000
--- a/modules/features2d/misc/java/test/DynamicSURFFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class DynamicSURFFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/FASTFeatureDetectorTest.java b/modules/features2d/misc/java/test/FASTFeatureDetectorTest.java
index 6fd35dfdd5..091f4a7b50 100644
--- a/modules/features2d/misc/java/test/FASTFeatureDetectorTest.java
+++ b/modules/features2d/misc/java/test/FASTFeatureDetectorTest.java
@@ -83,14 +83,14 @@ public class FASTFeatureDetectorTest extends OpenCVTestCase {
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
 
-        writeFile(filename, "%YAML 1.0\n---\nthreshold: 130\nnonmaxSuppression: 1\n");
+        writeFile(filename, "%YAML:1.0\n---\nthreshold: 130\nnonmaxSuppression: 1\n");
         detector.read(filename);
 
         MatOfKeyPoint keypoints1 = new MatOfKeyPoint();
 
         detector.detect(grayChess, keypoints1);
 
-        writeFile(filename, "%YAML 1.0\n---\nthreshold: 150\nnonmaxSuppression: 1\n");
+        writeFile(filename, "%YAML:1.0\n---\nthreshold: 150\nnonmaxSuppression: 1\n");
         detector.read(filename);
 
         MatOfKeyPoint keypoints2 = new MatOfKeyPoint();
@@ -139,8 +139,8 @@ public class FASTFeatureDetectorTest extends OpenCVTestCase {
 
         detector.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.FAST\"\nnonmaxSuppression: 1\nthreshold: 10\ntype: 2\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.FAST\"\nnonmaxSuppression: 1\nthreshold: 10\ntype: 2\n";
+        String truth = "%YAML:1.0\n---\n";
         String data = readFile(filename);
 
         //Log.d("qqq", "\"" + data + "\"");
diff --git a/modules/features2d/misc/java/test/Features2dTest.java b/modules/features2d/misc/java/test/Features2dTest.java
index e7185da542..20bfd75ac5 100644
--- a/modules/features2d/misc/java/test/Features2dTest.java
+++ b/modules/features2d/misc/java/test/Features2dTest.java
@@ -77,11 +77,11 @@ public class Features2dTest extends OpenCVTestCase {
 
     public void testPTOD()
     {
-        String detectorCfg = "%YAML 1.0\n---\nhessianThreshold: 4000.\noctaves: 3\noctaveLayers: 4\nupright: 0\n";
-        String extractorCfg = "%YAML 1.0\n---\nnOctaves: 4\nnOctaveLayers: 2\nextended: 0\nupright: 0\n";
+        String detectorCfg = "%YAML:1.0\n---\nhessianThreshold: 4000.\noctaves: 3\noctaveLayers: 4\nupright: 0\n";
+        String extractorCfg = "%YAML:1.0\n---\nnOctaves: 4\nnOctaveLayers: 2\nextended: 0\nupright: 0\n";
 
-        Feature2D detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
         DescriptorMatcher matcher = DescriptorMatcher.create(DescriptorMatcher.BRUTEFORCE);
 
         String detectorCfgFile = OpenCVTestRunner.getTempFileName("yml");
diff --git a/modules/features2d/misc/java/test/FernGenericDescriptorMatcherTest.java b/modules/features2d/misc/java/test/FernGenericDescriptorMatcherTest.java
deleted file mode 100644
index 841abb51f7..0000000000
--- a/modules/features2d/misc/java/test/FernGenericDescriptorMatcherTest.java
+++ /dev/null
@@ -1,127 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class FernGenericDescriptorMatcherTest extends OpenCVTestCase {
-
-    public void testAdd() {
-        fail("Not yet implemented");
-    }
-
-    public void testClassifyMatListOfKeyPointMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testClassifyMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testClear() {
-        fail("Not yet implemented");
-    }
-
-    public void testCloneBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testClone() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testGetTrainImages() {
-        fail("Not yet implemented");
-    }
-
-    public void testGetTrainKeypoints() {
-        fail("Not yet implemented");
-    }
-
-    public void testIsMaskSupported() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchIntMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchIntMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchInt() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchIntListOfMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchIntListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchInt() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointMatListOfKeyPointListOfDMatchMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointMatListOfKeyPointListOfDMatch() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointListOfDMatchListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointListOfDMatch() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloatMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloatMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloatListOfMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloatListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testTrain() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/FlannBasedDescriptorMatcherTest.java b/modules/features2d/misc/java/test/FlannBasedDescriptorMatcherTest.java
index f40bc946da..238524608e 100644
--- a/modules/features2d/misc/java/test/FlannBasedDescriptorMatcherTest.java
+++ b/modules/features2d/misc/java/test/FlannBasedDescriptorMatcherTest.java
@@ -3,7 +3,6 @@ package org.opencv.test.features2d;
 import java.util.Arrays;
 import java.util.List;
 
-import org.opencv.core.Core;
 import org.opencv.core.CvException;
 import org.opencv.core.CvType;
 import org.opencv.core.Mat;
@@ -12,9 +11,7 @@ import org.opencv.core.MatOfKeyPoint;
 import org.opencv.core.Point;
 import org.opencv.core.Scalar;
 import org.opencv.core.DMatch;
-import org.opencv.features2d.DescriptorExtractor;
 import org.opencv.features2d.DescriptorMatcher;
-import org.opencv.features2d.FeatureDetector;
 import org.opencv.core.KeyPoint;
 import org.opencv.test.OpenCVTestCase;
 import org.opencv.test.OpenCVTestRunner;
@@ -49,7 +46,7 @@ public class FlannBasedDescriptorMatcherTest extends OpenCVTestCase {
             + "    <type>15</type>\n"
             + "    <value>1</value></_></searchParams>\n"
             + "</opencv_storage>\n";
-    static final String ymlParamsDefault = "%YAML 1.0\n---\n"
+    static final String ymlParamsDefault = "%YAML:1.0\n---\n"
             + "format: 3\n"
             + "indexParams:\n"
             + "   -\n"
@@ -73,7 +70,7 @@ public class FlannBasedDescriptorMatcherTest extends OpenCVTestCase {
             + "      name: sorted\n"
             + "      type: 15\n"
             + "      value: 1\n";
-    static final String ymlParamsModified = "%YAML 1.0\n---\n"
+    static final String ymlParamsModified = "%YAML:1.0\n---\n"
             + "format: 3\n"
             + "indexParams:\n"
             + "   -\n"
@@ -117,8 +114,8 @@ public class FlannBasedDescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint();
         Mat descriptors = new Mat();
 
-        Feature2D detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         setProperty(detector, "hessianThreshold", "double", 8000);
         setProperty(detector, "nOctaves", "int", 3);
@@ -143,7 +140,7 @@ public class FlannBasedDescriptorMatcherTest extends OpenCVTestCase {
         MatOfKeyPoint keypoints = new MatOfKeyPoint(new KeyPoint(50, 50, 16, 0, 20000, 1, -1), new KeyPoint(42, 42, 16, 160, 10000, 1, -1));
         Mat descriptors = new Mat();
 
-        Feature2D extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        Feature2D extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
 
         extractor.compute(img, keypoints, descriptors);
 
diff --git a/modules/features2d/misc/java/test/GridDENSEFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridDENSEFeatureDetectorTest.java
deleted file mode 100644
index 8f68e4a1b2..0000000000
--- a/modules/features2d/misc/java/test/GridDENSEFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridDENSEFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridFASTFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridFASTFeatureDetectorTest.java
deleted file mode 100644
index c72601ae90..0000000000
--- a/modules/features2d/misc/java/test/GridFASTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridFASTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridGFTTFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridGFTTFeatureDetectorTest.java
deleted file mode 100644
index 828e6397eb..0000000000
--- a/modules/features2d/misc/java/test/GridGFTTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridGFTTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridHARRISFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridHARRISFeatureDetectorTest.java
deleted file mode 100644
index 0e84cca829..0000000000
--- a/modules/features2d/misc/java/test/GridHARRISFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridHARRISFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridMSERFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridMSERFeatureDetectorTest.java
deleted file mode 100644
index 95fb73d801..0000000000
--- a/modules/features2d/misc/java/test/GridMSERFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridMSERFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridORBFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridORBFeatureDetectorTest.java
deleted file mode 100644
index 0d62c365ed..0000000000
--- a/modules/features2d/misc/java/test/GridORBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridORBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridSIFTFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridSIFTFeatureDetectorTest.java
deleted file mode 100644
index fd5b12c819..0000000000
--- a/modules/features2d/misc/java/test/GridSIFTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridSIFTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridSIMPLEBLOBFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridSIMPLEBLOBFeatureDetectorTest.java
deleted file mode 100644
index 1e0f537c9d..0000000000
--- a/modules/features2d/misc/java/test/GridSIMPLEBLOBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridSIMPLEBLOBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridSTARFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridSTARFeatureDetectorTest.java
deleted file mode 100644
index c22d2342f3..0000000000
--- a/modules/features2d/misc/java/test/GridSTARFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridSTARFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/GridSURFFeatureDetectorTest.java b/modules/features2d/misc/java/test/GridSURFFeatureDetectorTest.java
deleted file mode 100644
index d93df1bbba..0000000000
--- a/modules/features2d/misc/java/test/GridSURFFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class GridSURFFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/ORBDescriptorExtractorTest.java b/modules/features2d/misc/java/test/ORBDescriptorExtractorTest.java
index 11064276f5..1009e1bfd5 100644
--- a/modules/features2d/misc/java/test/ORBDescriptorExtractorTest.java
+++ b/modules/features2d/misc/java/test/ORBDescriptorExtractorTest.java
@@ -83,7 +83,7 @@ public class ORBDescriptorExtractorTest extends OpenCVTestCase {
         Mat descriptors = new Mat();
 
 //        String filename = OpenCVTestRunner.getTempFileName("yml");
-//        writeFile(filename, "%YAML 1.0\n---\nscaleFactor: 1.1\nnLevels: 3\nfirstLevel: 0\nedgeThreshold: 31\npatchSize: 31\n");
+//        writeFile(filename, "%YAML:1.0\n---\nscaleFactor: 1.1\nnLevels: 3\nfirstLevel: 0\nedgeThreshold: 31\npatchSize: 31\n");
 //        extractor.read(filename);
         extractor = ORB.create(500, 1.1f, 3, 31, 0, 2, ORB.HARRIS_SCORE, 31, 20);
 
@@ -115,8 +115,8 @@ public class ORBDescriptorExtractorTest extends OpenCVTestCase {
 
         extractor.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.ORB\"\nWTA_K: 2\nedgeThreshold: 31\nfirstLevel: 0\nnFeatures: 500\nnLevels: 8\npatchSize: 31\nscaleFactor: 1.2000000476837158e+00\nscoreType: 0\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.ORB\"\nWTA_K: 2\nedgeThreshold: 31\nfirstLevel: 0\nnFeatures: 500\nnLevels: 8\npatchSize: 31\nscaleFactor: 1.2000000476837158e+00\nscoreType: 0\n";
+        String truth = "%YAML:1.0\n---\n";
         String actual = readFile(filename);
         actual = actual.replaceAll("e\\+000", "e+00"); // NOTE: workaround for different platforms double representation
         assertEquals(truth, actual);
diff --git a/modules/features2d/misc/java/test/OneWayGenericDescriptorMatcherTest.java b/modules/features2d/misc/java/test/OneWayGenericDescriptorMatcherTest.java
deleted file mode 100644
index 1d66957479..0000000000
--- a/modules/features2d/misc/java/test/OneWayGenericDescriptorMatcherTest.java
+++ /dev/null
@@ -1,127 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class OneWayGenericDescriptorMatcherTest extends OpenCVTestCase {
-
-    public void testAdd() {
-        fail("Not yet implemented");
-    }
-
-    public void testClassifyMatListOfKeyPointMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testClassifyMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testClear() {
-        fail("Not yet implemented");
-    }
-
-    public void testCloneBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testClone() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testGetTrainImages() {
-        fail("Not yet implemented");
-    }
-
-    public void testGetTrainKeypoints() {
-        fail("Not yet implemented");
-    }
-
-    public void testIsMaskSupported() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchIntMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchIntMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchInt() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchIntListOfMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchIntListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testKnnMatchMatListOfKeyPointListOfListOfDMatchInt() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointMatListOfKeyPointListOfDMatchMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointMatListOfKeyPointListOfDMatch() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointListOfDMatchListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testMatchMatListOfKeyPointListOfDMatch() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloatMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloatMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointMatListOfKeyPointListOfListOfDMatchFloat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloatListOfMatBoolean() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloatListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRadiusMatchMatListOfKeyPointListOfListOfDMatchFloat() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testTrain() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/OpponentBRIEFDescriptorExtractorTest.java b/modules/features2d/misc/java/test/OpponentBRIEFDescriptorExtractorTest.java
deleted file mode 100644
index 7007da8a8b..0000000000
--- a/modules/features2d/misc/java/test/OpponentBRIEFDescriptorExtractorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class OpponentBRIEFDescriptorExtractorTest extends OpenCVTestCase {
-
-    public void testComputeListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testComputeMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorSize() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorType() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/OpponentORBDescriptorExtractorTest.java b/modules/features2d/misc/java/test/OpponentORBDescriptorExtractorTest.java
deleted file mode 100644
index ee63e379c3..0000000000
--- a/modules/features2d/misc/java/test/OpponentORBDescriptorExtractorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class OpponentORBDescriptorExtractorTest extends OpenCVTestCase {
-
-    public void testComputeListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testComputeMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorSize() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorType() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/OpponentSIFTDescriptorExtractorTest.java b/modules/features2d/misc/java/test/OpponentSIFTDescriptorExtractorTest.java
deleted file mode 100644
index 2429582cf3..0000000000
--- a/modules/features2d/misc/java/test/OpponentSIFTDescriptorExtractorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class OpponentSIFTDescriptorExtractorTest extends OpenCVTestCase {
-
-    public void testComputeListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testComputeMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorSize() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorType() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/OpponentSURFDescriptorExtractorTest.java b/modules/features2d/misc/java/test/OpponentSURFDescriptorExtractorTest.java
deleted file mode 100644
index cbfcd2d9b4..0000000000
--- a/modules/features2d/misc/java/test/OpponentSURFDescriptorExtractorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class OpponentSURFDescriptorExtractorTest extends OpenCVTestCase {
-
-    public void testComputeListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testComputeMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorSize() {
-        fail("Not yet implemented");
-    }
-
-    public void testDescriptorType() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidDENSEFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidDENSEFeatureDetectorTest.java
deleted file mode 100644
index 31be53a009..0000000000
--- a/modules/features2d/misc/java/test/PyramidDENSEFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidDENSEFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidFASTFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidFASTFeatureDetectorTest.java
deleted file mode 100644
index 90447f16fe..0000000000
--- a/modules/features2d/misc/java/test/PyramidFASTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidFASTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidGFTTFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidGFTTFeatureDetectorTest.java
deleted file mode 100644
index d660f34303..0000000000
--- a/modules/features2d/misc/java/test/PyramidGFTTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidGFTTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidHARRISFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidHARRISFeatureDetectorTest.java
deleted file mode 100644
index 92f534b43e..0000000000
--- a/modules/features2d/misc/java/test/PyramidHARRISFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidHARRISFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidMSERFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidMSERFeatureDetectorTest.java
deleted file mode 100644
index 865c30dff9..0000000000
--- a/modules/features2d/misc/java/test/PyramidMSERFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidMSERFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidORBFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidORBFeatureDetectorTest.java
deleted file mode 100644
index 71ca5e0980..0000000000
--- a/modules/features2d/misc/java/test/PyramidORBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidORBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidSIFTFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidSIFTFeatureDetectorTest.java
deleted file mode 100644
index 6327c00677..0000000000
--- a/modules/features2d/misc/java/test/PyramidSIFTFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidSIFTFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidSIMPLEBLOBFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidSIMPLEBLOBFeatureDetectorTest.java
deleted file mode 100644
index 94a0ba6707..0000000000
--- a/modules/features2d/misc/java/test/PyramidSIMPLEBLOBFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidSIMPLEBLOBFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidSTARFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidSTARFeatureDetectorTest.java
deleted file mode 100644
index 6adc93ed99..0000000000
--- a/modules/features2d/misc/java/test/PyramidSTARFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidSTARFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/PyramidSURFFeatureDetectorTest.java b/modules/features2d/misc/java/test/PyramidSURFFeatureDetectorTest.java
deleted file mode 100644
index 0e7b341959..0000000000
--- a/modules/features2d/misc/java/test/PyramidSURFFeatureDetectorTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.opencv.test.features2d;
-
-import org.opencv.test.OpenCVTestCase;
-
-public class PyramidSURFFeatureDetectorTest extends OpenCVTestCase {
-
-    public void testCreate() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPoint() {
-        fail("Not yet implemented");
-    }
-
-    public void testDetectMatListOfKeyPointMat() {
-        fail("Not yet implemented");
-    }
-
-    public void testEmpty() {
-        fail("Not yet implemented");
-    }
-
-    public void testRead() {
-        fail("Not yet implemented");
-    }
-
-    public void testWrite() {
-        fail("Not yet implemented");
-    }
-
-}
diff --git a/modules/features2d/misc/java/test/SIFTDescriptorExtractorTest.java b/modules/features2d/misc/java/test/SIFTDescriptorExtractorTest.java
index a5c2713345..2c1ac7ca01 100644
--- a/modules/features2d/misc/java/test/SIFTDescriptorExtractorTest.java
+++ b/modules/features2d/misc/java/test/SIFTDescriptorExtractorTest.java
@@ -29,7 +29,7 @@ public class SIFTDescriptorExtractorTest extends OpenCVTestCase {
     @Override
     protected void setUp() throws Exception {
         super.setUp();
-        extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SIFT", ALGORITHM_FACTORY_NAME, null, null);
+        extractor = createClassInstance(XFEATURES2D+"SIFT", DEFAULT_FACTORY, null, null);
         keypoint = new KeyPoint(55.775577545166016f, 44.224422454833984f, 16, 9.754629f, 8617.863f, 1, -1);
         matSize = 100;
         truth = new Mat(1, 128, CvType.CV_32FC1) {
@@ -99,8 +99,8 @@ public class SIFTDescriptorExtractorTest extends OpenCVTestCase {
 
         extractor.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.SIFT\"\ncontrastThreshold: 4.0000000000000001e-02\nedgeThreshold: 10.\nnFeatures: 0\nnOctaveLayers: 3\nsigma: 1.6000000000000001e+00\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.SIFT\"\ncontrastThreshold: 4.0000000000000001e-02\nedgeThreshold: 10.\nnFeatures: 0\nnOctaveLayers: 3\nsigma: 1.6000000000000001e+00\n";
+        String truth = "%YAML:1.0\n---\n";
         String actual = readFile(filename);
         actual = actual.replaceAll("e([+-])0(\\d\\d)", "e$1$2"); // NOTE: workaround for different platforms double representation
         assertEquals(truth, actual);
diff --git a/modules/features2d/misc/java/test/STARFeatureDetectorTest.java b/modules/features2d/misc/java/test/STARFeatureDetectorTest.java
index df90d60935..327084211b 100644
--- a/modules/features2d/misc/java/test/STARFeatureDetectorTest.java
+++ b/modules/features2d/misc/java/test/STARFeatureDetectorTest.java
@@ -43,7 +43,7 @@ public class STARFeatureDetectorTest extends OpenCVTestCase {
 
     protected void setUp() throws Exception {
         super.setUp();
-        detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"StarDetector", ALGORITHM_FACTORY_NAME, null, null);
+        detector = createClassInstance(XFEATURES2D+"StarDetector", DEFAULT_FACTORY, null, null);
         matSize = 200;
         truth = new KeyPoint[] {
                 new KeyPoint( 95,  80, 22, -1, 31.5957f, 0, -1),
@@ -101,7 +101,7 @@ public class STARFeatureDetectorTest extends OpenCVTestCase {
         detector.detect(img, keypoints1);
 
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\nmaxSize: 45\nresponseThreshold: 150\nlineThresholdProjected: 10\nlineThresholdBinarized: 8\nsuppressNonmaxSize: 5\n");
+        writeFile(filename, "%YAML:1.0\n---\nmaxSize: 45\nresponseThreshold: 150\nlineThresholdProjected: 10\nlineThresholdBinarized: 8\nsuppressNonmaxSize: 5\n");
         detector.read(filename);
 
         MatOfKeyPoint keypoints2 = new MatOfKeyPoint();
@@ -125,8 +125,8 @@ public class STARFeatureDetectorTest extends OpenCVTestCase {
 
         detector.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.STAR\"\nlineThresholdBinarized: 8\nlineThresholdProjected: 10\nmaxSize: 45\nresponseThreshold: 30\nsuppressNonmaxSize: 5\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.STAR\"\nlineThresholdBinarized: 8\nlineThresholdProjected: 10\nmaxSize: 45\nresponseThreshold: 30\nsuppressNonmaxSize: 5\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/SURFDescriptorExtractorTest.java b/modules/features2d/misc/java/test/SURFDescriptorExtractorTest.java
index 88c82ee0b3..35131ee254 100644
--- a/modules/features2d/misc/java/test/SURFDescriptorExtractorTest.java
+++ b/modules/features2d/misc/java/test/SURFDescriptorExtractorTest.java
@@ -30,7 +30,7 @@ public class SURFDescriptorExtractorTest extends OpenCVTestCase {
 
         Class[] cParams = {double.class, int.class, int.class, boolean.class, boolean.class};
         Object[] oValues = {100, 2, 4, true, false};
-        extractor = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, cParams, oValues);
+        extractor = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, cParams, oValues);
 
         matSize = 100;
     }
@@ -89,7 +89,7 @@ public class SURFDescriptorExtractorTest extends OpenCVTestCase {
 
     public void testRead() {
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\nnOctaves: 4\nnOctaveLayers: 2\nextended: 1\nupright: 0\n");
+        writeFile(filename, "%YAML:1.0\n---\nnOctaves: 4\nnOctaveLayers: 2\nextended: 1\nupright: 0\n");
 
         extractor.read(filename);
 
@@ -111,8 +111,8 @@ public class SURFDescriptorExtractorTest extends OpenCVTestCase {
 
         extractor.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.SURF\"\nextended: 1\nhessianThreshold: 100.\nnOctaveLayers: 2\nnOctaves: 4\nupright: 0\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.SURF\"\nextended: 1\nhessianThreshold: 100.\nnOctaveLayers: 2\nnOctaves: 4\nupright: 0\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/features2d/misc/java/test/SURFFeatureDetectorTest.java b/modules/features2d/misc/java/test/SURFFeatureDetectorTest.java
index 1a52adac37..f15426cdb8 100644
--- a/modules/features2d/misc/java/test/SURFFeatureDetectorTest.java
+++ b/modules/features2d/misc/java/test/SURFFeatureDetectorTest.java
@@ -53,7 +53,7 @@ public class SURFFeatureDetectorTest extends OpenCVTestCase {
     @Override
     protected void setUp() throws Exception {
         super.setUp();
-        detector = createAlgorythmInstance(XFEATURES2D_PACKAGE_NAME+"SURF", ALGORITHM_FACTORY_NAME, null, null);
+        detector = createClassInstance(XFEATURES2D+"SURF", DEFAULT_FACTORY, null, null);
         matSize = 100;
         truth = new KeyPoint[] {
                 new KeyPoint(55.775578f, 55.775578f, 16, 80.245735f, 8617.8633f, 0, -1),
@@ -143,7 +143,7 @@ public class SURFFeatureDetectorTest extends OpenCVTestCase {
         detector.detect(cross, keypoints1);
 
         String filename = OpenCVTestRunner.getTempFileName("yml");
-        writeFile(filename, "%YAML 1.0\n---\nhessianThreshold: 8000.\noctaves: 3\noctaveLayers: 4\nupright: 0\n");
+        writeFile(filename, "%YAML:1.0\n---\nhessianThreshold: 8000.\noctaves: 3\noctaveLayers: 4\nupright: 0\n");
         detector.read(filename);
 
         MatOfKeyPoint keypoints2 = new MatOfKeyPoint();
@@ -167,8 +167,8 @@ public class SURFFeatureDetectorTest extends OpenCVTestCase {
 
         detector.write(filename);
 
-//        String truth = "%YAML 1.0\n---\nname: \"Feature2D.SURF\"\nextended: 0\nhessianThreshold: 100.\nnOctaveLayers: 3\nnOctaves: 4\nupright: 0\n";
-        String truth = "%YAML 1.0\n---\n";
+//        String truth = "%YAML:1.0\n---\nname: \"Feature2D.SURF\"\nextended: 0\nhessianThreshold: 100.\nnOctaveLayers: 3\nnOctaves: 4\nupright: 0\n";
+        String truth = "%YAML:1.0\n---\n";
         assertEquals(truth, readFile(filename));
     }
 
diff --git a/modules/imgproc/misc/java/test/ImgprocTest.java b/modules/imgproc/misc/java/test/ImgprocTest.java
index 0b06152b3c..e619d016c6 100644
--- a/modules/imgproc/misc/java/test/ImgprocTest.java
+++ b/modules/imgproc/misc/java/test/ImgprocTest.java
@@ -1116,7 +1116,7 @@ public class ImgprocTest extends OpenCVTestCase {
 
         Imgproc.HoughLinesP(img, lines, 1, 3.1415926/180, 100);
 
-        assertEquals(2, lines.cols());
+        assertEquals(2, lines.rows());
 
         /*
         Log.d("HoughLinesP", "lines=" + lines);
@@ -1407,14 +1407,14 @@ public class ImgprocTest extends OpenCVTestCase {
     }
 
     public void testMinEnclosingCircle() {
-        MatOfPoint2f points = new MatOfPoint2f(new Point(0, 0), new Point(-1, 0), new Point(0, -1), new Point(1, 0), new Point(0, 1));
+        MatOfPoint2f points = new MatOfPoint2f(new Point(0, 0), new Point(-100, 0), new Point(0, -100), new Point(100, 0), new Point(0, 100));
         Point actualCenter = new Point();
         float[] radius = new float[1];
 
         Imgproc.minEnclosingCircle(points, actualCenter, radius);
 
         assertEquals(new Point(0, 0), actualCenter);
-        assertEquals(1.03f, radius[0], EPS);
+        assertEquals(100.0f, radius[0], 1.0);
     }
 
     public void testMomentsMat() {
diff --git a/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java b/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java
index 071a9a786d..54bb79ec1e 100644
--- a/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java
+++ b/modules/java/android_test/src/org/opencv/test/OpenCVTestCase.java
@@ -34,8 +34,8 @@ public class OpenCVTestCase extends TestCase {
 
     protected static boolean isTestCaseEnabled = true;
 
-    protected static final String XFEATURES2D_PACKAGE_NAME = "org.opencv.xfeatures2d.";
-    protected static final String ALGORITHM_FACTORY_NAME = "create";
+    protected static final String XFEATURES2D = "org.opencv.xfeatures2d.";
+    protected static final String DEFAULT_FACTORY = "create";
 
     protected static final int matSize = 10;
     protected static final double EPS = 0.001;
@@ -467,63 +467,50 @@ public class OpenCVTestCase extends TestCase {
         }
     }
 
-    protected <T> T createAlgorythmInstance(String cname, String factoryName, Class cParams[], Object oValues[]) {
-        T algorithm = null;
+    protected <T> T createClassInstance(String cname, String factoryName, Class cParams[], Object oValues[]) {
+        T instance = null;
 
         assertFalse("Class name should not be empty", "".equals(cname));
 
         String message="";
-        int step=0;
         try {
             Class algClass = getClassForName(cname);
-            step=1;
             Method factory = null;
 
             if(cParams!=null && cParams.length>0) {
-                step=2;
                 if(!"".equals(factoryName)) {
-                    step=3;
                     factory = algClass.getDeclaredMethod(factoryName, cParams);
-                    algorithm = (T) factory.invoke(null, oValues);
-                    step=4;
+                    instance = (T) factory.invoke(null, oValues);
                 }
                 else {
-                    step=5;
-                    algorithm = (T) algClass.getConstructor(cParams).newInstance(oValues);
-                    step=6;
+                    instance = (T) algClass.getConstructor(cParams).newInstance(oValues);
                 }
             }
             else {
-                step=7;
                 if(!"".equals(factoryName)) {
-                    step=8;
                     factory = algClass.getDeclaredMethod(factoryName);
-                    algorithm = (T) factory.invoke(null);
-                    step=9;
+                    instance = (T) factory.invoke(null);
                 }
                 else {
-                    step=10;
-                    algorithm = (T) algClass.getConstructor().newInstance();
-                    step=11;
+                    instance = (T) algClass.getConstructor().newInstance();
                 }
             }
         }
         catch(Exception ex) {
-            message = TAG + " :: " + "could not instantiate " + cname + "! step " + step;
+            message = TAG + " :: " + "could not instantiate " + cname + "! Exception: " + ex.getMessage();
         }
 
-        assertTrue(message, algorithm!=null);
+        assertTrue(message, instance!=null);
 
-        return algorithm;
+        return instance;
     }
 
-    protected <T> void setProperty(T algorythm, String propertyName, String propertyType, Object propertyValue) {
+    protected <T> void setProperty(T instance, String propertyName, String propertyType, Object propertyValue) {
         String message = "";
         try {
             String smethod = "set" + propertyName.substring(0,1).toUpperCase() + propertyName.substring(1);
-    //        System.out.println("Setting field " + p.getPname() + "/" + smethod + "/" + p.getValue());
-            Method setter = algorythm.getClass().getMethod(smethod, getClassForName(propertyType));
-            setter.invoke(algorythm, propertyValue);
+            Method setter = instance.getClass().getMethod(smethod, getClassForName(propertyType));
+            setter.invoke(instance, propertyValue);
         }
         catch(Exception ex) {
             message = "Error when setting property [" + propertyName + "]: " + ex.getMessage();
diff --git a/modules/java/pure_test/src/org/opencv/test/OpenCVTestCase.java b/modules/java/pure_test/src/org/opencv/test/OpenCVTestCase.java
index 0a958a1b4a..98b1448fe3 100644
--- a/modules/java/pure_test/src/org/opencv/test/OpenCVTestCase.java
+++ b/modules/java/pure_test/src/org/opencv/test/OpenCVTestCase.java
@@ -32,8 +32,8 @@ public class OpenCVTestCase extends TestCase {
 
     protected static boolean isTestCaseEnabled = true;
 
-    protected static final String XFEATURES2D_PACKAGE_NAME = "org.opencv.xfeatures2d.";
-    protected static final String ALGORITHM_FACTORY_NAME = "create";
+    protected static final String XFEATURES2D = "org.opencv.xfeatures2d.";
+    protected static final String DEFAULT_FACTORY = "create";
 
     protected static final int matSize = 10;
     protected static final double EPS = 0.001;
@@ -493,63 +493,50 @@ public class OpenCVTestCase extends TestCase {
         }
     }
 
-    protected <T> T createAlgorythmInstance(String cname, String factoryName, Class cParams[], Object oValues[]) {
-        T algorithm = null;
+    protected <T> T createClassInstance(String cname, String factoryName, Class cParams[], Object oValues[]) {
+        T instance = null;
 
         assertFalse("Class name should not be empty", "".equals(cname));
 
         String message="";
-        int step=0;
         try {
             Class algClass = getClassForName(cname);
-            step=1;
             Method factory = null;
 
             if(cParams!=null && cParams.length>0) {
-                step=2;
                 if(!"".equals(factoryName)) {
-                    step=3;
                     factory = algClass.getDeclaredMethod(factoryName, cParams);
-                    algorithm = (T) factory.invoke(null, oValues);
-                    step=4;
+                    instance = (T) factory.invoke(null, oValues);
                 }
                 else {
-                    step=5;
-                    algorithm = (T) algClass.getConstructor(cParams).newInstance(oValues);
-                    step=6;
+                    instance = (T) algClass.getConstructor(cParams).newInstance(oValues);
                 }
             }
             else {
-                step=7;
                 if(!"".equals(factoryName)) {
-                    step=8;
                     factory = algClass.getDeclaredMethod(factoryName);
-                    algorithm = (T) factory.invoke(null);
-                    step=9;
+                    instance = (T) factory.invoke(null);
                 }
                 else {
-                    step=10;
-                    algorithm = (T) algClass.getConstructor().newInstance();
-                    step=11;
+                    instance = (T) algClass.getConstructor().newInstance();
                 }
             }
         }
         catch(Exception ex) {
-            message = TAG + " :: " + "could not instantiate " + cname + "! step " + step;
+            message = TAG + " :: " + "could not instantiate " + cname + "! Exception: " + ex.getMessage();
         }
 
-        assertTrue(message, algorithm!=null);
+        assertTrue(message, instance!=null);
 
-        return algorithm;
+        return instance;
     }
 
-    protected <T> void setProperty(T algorythm, String propertyName, String propertyType, Object propertyValue) {
+    protected <T> void setProperty(T instance, String propertyName, String propertyType, Object propertyValue) {
         String message = "";
         try {
             String smethod = "set" + propertyName.substring(0,1).toUpperCase() + propertyName.substring(1);
-    //        System.out.println("Setting field " + p.getPname() + "/" + smethod + "/" + p.getValue());
-            Method setter = algorythm.getClass().getMethod(smethod, getClassForName(propertyType));
-            setter.invoke(algorythm, propertyValue);
+            Method setter = instance.getClass().getMethod(smethod, getClassForName(propertyType));
+            setter.invoke(instance, propertyValue);
         }
         catch(Exception ex) {
             message = "Error when setting property [" + propertyName + "]: " + ex.getMessage();
-- 
2.18.0