Permalink
Showing with 10 additions and 2 deletions.
  1. +5 −2 django/contrib/gis/gdal/geometries.py
  2. +5 −0 django/contrib/gis/gdal/tests/test_geom.py
View
7 django/contrib/gis/gdal/geometries.py
@@ -180,11 +180,14 @@ def __xor__(self, other):
def __eq__(self, other):
"Is this Geometry equal to the other?"
- return self.equals(other)
+ if isinstance(other, OGRGeometry):
+ return self.equals(other)
+ else:
+ return False
def __ne__(self, other):
"Tests for inequality."
- return not self.equals(other)
+ return not (self == other)
def __str__(self):
"WKT is used for the string representation."
View
5 django/contrib/gis/gdal/tests/test_geom.py
@@ -481,6 +481,11 @@ def test18_ogrgeometry_transform_workaround(self):
self.assertEqual(3, geom[0].coord_dim)
self.assertEqual(wkt_3d, geom.wkt)
+ def test19_equivalence_regression(self):
+ "Testing equivalence methods with non-OGRGeometry instances."
+ self.assertNotEqual(None, OGRGeometry('POINT(0 0)'))
+ self.assertEqual(False, OGRGeometry('LINESTRING(0 0, 1 1)') == 3)
+
def suite():
s = unittest.TestSuite()
s.addTest(unittest.makeSuite(OGRGeomTest))

0 comments on commit 7d5c7df

Please sign in to comment.