[geos-commits] r2810 - trunk/tests/unit/capi
svn_geos at osgeo.org
svn_geos at osgeo.org
Tue Dec 8 12:40:03 EST 2009
Author: strk
Date: 2009-12-08 12:39:59 -0500 (Tue, 08 Dec 2009)
New Revision: 2810
Modified:
trunk/tests/unit/capi/GEOSPreparedGeometryTest.cpp
Log:
Add test with Prepared linestrings, for the sake of testing the leak reported in ticket #305
Modified: trunk/tests/unit/capi/GEOSPreparedGeometryTest.cpp
===================================================================
--- trunk/tests/unit/capi/GEOSPreparedGeometryTest.cpp 2009-12-06 01:05:24 UTC (rev 2809)
+++ trunk/tests/unit/capi/GEOSPreparedGeometryTest.cpp 2009-12-08 17:39:59 UTC (rev 2810)
@@ -78,10 +78,6 @@
geom1_ = GEOSGeomFromWKT("POLYGON EMPTY");
prepGeom1_ = GEOSPrepare(geom1_);
- // ownership NOT transferred to prepGeom1, despite
- // docs say so
- //geom1_ = 0;
-
ensure(0 != prepGeom1_);
}
@@ -98,10 +94,6 @@
geom2_ = GEOSGeomFromWKT("POLYGON((2 2, 2 3, 3 3, 3 2, 2 2))");
prepGeom1_ = GEOSPrepare(geom1_);
- // ownership NOT transferred to prepGeom1, despite
- // docs say so
- //geom1_ = 0;
-
ensure(0 != prepGeom1_);
int ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_);
@@ -121,10 +113,6 @@
geom2_ = GEOSGeomFromWKT("POLYGON((0 0, 0 10, 10 10, 10 0, 0 0))");
prepGeom1_ = GEOSPrepare(geom1_);
- // ownership NOT transferred to prepGeom1, despite
- // docs say so
- //geom1_ = 0;
-
ensure(0 != prepGeom1_);
int ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_);
@@ -132,6 +120,25 @@
}
+ // Test PreparedIntersects
+ // Also used as a linestring leakage reported
+ // by http://trac.osgeo.org/geos/ticket/305
+ //
+ template<>
+ template<>
+ void object::test<4>()
+ {
+ geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 10)");
+ geom2_ = GEOSGeomFromWKT("LINESTRING(0 10, 10 0)");
+ prepGeom1_ = GEOSPrepare(geom1_);
+
+ ensure(0 != prepGeom1_);
+
+ int ret = GEOSPreparedIntersects(prepGeom1_, geom2_);
+ ensure_equals(ret, 1);
+
+ }
+
// TODO: add lots of more tests
} // namespace tut
More information about the geos-commits
mailing list