[geos-commits] r2392 - trunk/tests/xmltester

svn_geos at osgeo.org svn_geos at osgeo.org
Sat Apr 18 03:55:02 EDT 2009


Author: strk
Date: 2009-04-18 03:55:02 -0400 (Sat, 18 Apr 2009)
New Revision: 2392

Modified:
   trunk/tests/xmltester/XMLTester.cpp
Log:
Use BufferResultMatcher for buffer operations. No failures.


Modified: trunk/tests/xmltester/XMLTester.cpp
===================================================================
--- trunk/tests/xmltester/XMLTester.cpp	2009-04-18 07:49:38 UTC (rev 2391)
+++ trunk/tests/xmltester/XMLTester.cpp	2009-04-18 07:55:02 UTC (rev 2392)
@@ -725,20 +725,7 @@
 			success=1;
 			do
 			{
-#if USE_BUFFER_RESULT_MATCHER
-				geos::xmltester::BufferResultMatcher matcher;
-				if ( ! matcher.isBufferResultMatch(*gRealRes,
-				                                   *gRes,
-					                           dist) )
-				{
-					success=0;
-					break;
-				}
-#endif
 
-				// TODO: Is a buffer always an area ?
-				// 	 we might check geometry type..
-
 				if ( gRes->getGeometryTypeId() != gRealRes->getGeometryTypeId() )
 				{
 					std::cerr << "Expected result is of type "
@@ -750,12 +737,7 @@
 					break;
 				}
 
-				if ( gRes->isEmpty() && gRealRes->isEmpty() )
-				{
-					// Success !
-					break;
-				}
-
+				// Is a buffer always an area ?
 				if ( gRes->getDimension() != 2 )
 				{
 					std::cerr << "Don't know how to validate "
@@ -765,33 +747,16 @@
 						<< std::endl;
 				}
 				
-				double expectedArea = gRes->getArea();
 
-				/// Allow area difference being at most
-				/// 1/1000 of the area of the expected result.
-				double areatol = expectedArea / 1e3;
-
-				GeomAutoPtr gDiff = BinaryOp(gRes.get(), gRealRes.get(),
-					overlayOp(OverlayOp::opSYMDIFFERENCE));
-
-				double areaDiff = gDiff->getArea();
-				if ( areaDiff > areatol )
+				geos::xmltester::BufferResultMatcher matcher;
+				if ( ! matcher.isBufferResultMatch(*gRealRes,
+				                                   *gRes,
+					                           dist) )
 				{
-					std::cerr << "Area of difference between "
-						<< "obtained and expected: "
-						<< areaDiff << " - Tolerated diff: "
-						<< areatol << std::endl;
+std::cerr << "BufferResultMatcher FAILED" << std::endl;
 					success=0;
 					break;
 				}
-				else
-				{
-					std::cerr << "Area of difference between "
-						<< "obtained and expected: "
-						<< areaDiff << " - Tolerated diff: "
-						<< areatol << " (SUCCESS!)"
-						<< std::endl;
-				}
 
 			}
 			while (0);
@@ -834,8 +799,6 @@
 			success=1;
 			do
 			{
-				// TODO: Is a buffer always an area ?
-				// 	 we might check geometry type..
 
 				if ( gRes->getGeometryTypeId() != gRealRes->getGeometryTypeId() )
 				{
@@ -848,12 +811,7 @@
 					break;
 				}
 
-				if ( gRes->isEmpty() && gRealRes->isEmpty() )
-				{
-					// Success !
-					break;
-				}
-
+				// Is a buffer always an area ?
 				if ( gRes->getDimension() != 2 )
 				{
 					std::cerr << "Don't know how to validate "
@@ -863,33 +821,16 @@
 						<< std::endl;
 				}
 				
-				double expectedArea = gRes->getArea();
 
-				/// Allow area difference being at most
-				/// 1/1000 of the area of the expected result.
-				double areatol = expectedArea / 1e3;
-
-				GeomAutoPtr gDiff = BinaryOp(gRes.get(), gRealRes.get(),
-					overlayOp(OverlayOp::opSYMDIFFERENCE));
-
-				double areaDiff = gDiff->getArea();
-				if ( areaDiff > areatol )
+				geos::xmltester::BufferResultMatcher matcher;
+				if ( ! matcher.isBufferResultMatch(*gRealRes,
+				                                   *gRes,
+					                           dist) )
 				{
-					std::cerr << "Area of difference between "
-						<< "obtained and expected: "
-						<< areaDiff << " - Tolerated diff: "
-						<< areatol << std::endl;
+std::cerr << "BufferResultMatcher FAILED" << std::endl;
 					success=0;
 					break;
 				}
-				else
-				{
-					std::cerr << "Area of difference between "
-						<< "obtained and expected: "
-						<< areaDiff << " - Tolerated diff: "
-						<< areatol << " (SUCCESS!)"
-						<< std::endl;
-				}
 
 			}
 			while (0);



More information about the geos-commits mailing list