summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Smith <smithdc@gmail.com>2024-11-08 08:00:05 +0000
committernessita <124304+nessita@users.noreply.github.com>2025-07-21 22:23:29 -0300
commit14fc2e97036fc9d7acb55ada4f16f1aa3bdc5ec7 (patch)
tree1809dbc526129f7ecb5dd27df490042421cfe521
parent414253866b3671c6f5600a9c39b5709effe16cce (diff)
Improved consistency of GEOS error messages.
-rw-r--r--django/contrib/gis/geos/coordseq.py4
-rw-r--r--django/contrib/gis/geos/geometry.py6
-rw-r--r--django/contrib/gis/geos/polygon.py2
-rw-r--r--tests/gis_tests/geos_tests/test_coordseq.py2
-rw-r--r--tests/gis_tests/geos_tests/test_geos.py6
5 files changed, 11 insertions, 9 deletions
diff --git a/django/contrib/gis/geos/coordseq.py b/django/contrib/gis/geos/coordseq.py
index 484b53ab5f..a9ec4d2bf0 100644
--- a/django/contrib/gis/geos/coordseq.py
+++ b/django/contrib/gis/geos/coordseq.py
@@ -70,12 +70,12 @@ class GEOSCoordSeq(GEOSBase):
def _checkindex(self, index):
"Check the given index."
if not (0 <= index < self.size):
- raise IndexError("invalid GEOS Geometry index: %s" % index)
+ raise IndexError(f"Invalid GEOS Geometry index: {index}")
def _checkdim(self, dim):
"Check the given dimension."
if dim < 0 or dim > 2:
- raise GEOSException('invalid ordinate dimension "%d"' % dim)
+ raise GEOSException(f'Invalid ordinate dimension: "{dim:d}"')
def _get_x(self, index):
return capi.cs_getx(self.ptr, index, byref(c_double()))
diff --git a/django/contrib/gis/geos/geometry.py b/django/contrib/gis/geos/geometry.py
index 564b0be16e..477b7afa5e 100644
--- a/django/contrib/gis/geos/geometry.py
+++ b/django/contrib/gis/geos/geometry.py
@@ -353,7 +353,7 @@ class GEOSGeometryBase(GEOSBase):
two Geometries match the elements in pattern.
"""
if not isinstance(pattern, str) or len(pattern) > 9:
- raise GEOSException("invalid intersection matrix pattern")
+ raise GEOSException("Invalid intersection matrix pattern.")
return capi.geos_relatepattern(self.ptr, other.ptr, force_bytes(pattern))
def touches(self, other):
@@ -506,7 +506,9 @@ class GEOSGeometryBase(GEOSBase):
# source SRS.
srid = None
elif srid is None or srid < 0:
- raise GEOSException("Calling transform() with no SRID set is not supported")
+ raise GEOSException(
+ "Calling transform() with no SRID set is not supported."
+ )
# Creating an OGR Geometry, which is then transformed.
g = gdal.OGRGeometry(self._ogr_ptr(), srid)
diff --git a/django/contrib/gis/geos/polygon.py b/django/contrib/gis/geos/polygon.py
index 6f76b57005..9e8d30647b 100644
--- a/django/contrib/gis/geos/polygon.py
+++ b/django/contrib/gis/geos/polygon.py
@@ -103,7 +103,7 @@ class Polygon(GEOSGeometry):
param,
msg=(
"Parameter must be a sequence of LinearRings or objects that can "
- "initialize to LinearRings"
+ "initialize to LinearRings."
),
):
"Try to construct a ring from the given parameter."
diff --git a/tests/gis_tests/geos_tests/test_coordseq.py b/tests/gis_tests/geos_tests/test_coordseq.py
index 507a22d1a0..b6f5136dd1 100644
--- a/tests/gis_tests/geos_tests/test_coordseq.py
+++ b/tests/gis_tests/geos_tests/test_coordseq.py
@@ -9,7 +9,7 @@ class GEOSCoordSeqTest(SimpleTestCase):
with self.subTest(i):
self.assertEqual(coord_seq[i], (i, i))
for i in (-3, 10):
- msg = "invalid GEOS Geometry index: %s" % i
+ msg = f"Invalid GEOS Geometry index: {i}"
with self.subTest(i):
with self.assertRaisesMessage(IndexError, msg):
coord_seq[i]
diff --git a/tests/gis_tests/geos_tests/test_geos.py b/tests/gis_tests/geos_tests/test_geos.py
index 86ea2227fb..ac67d6ccad 100644
--- a/tests/gis_tests/geos_tests/test_geos.py
+++ b/tests/gis_tests/geos_tests/test_geos.py
@@ -679,7 +679,7 @@ class GEOSTest(SimpleTestCase, TestDataMixin):
# Testing polygon construction.
msg = (
"Parameter must be a sequence of LinearRings or "
- "objects that can initialize to LinearRings"
+ "objects that can initialize to LinearRings."
)
with self.assertRaisesMessage(TypeError, msg):
Polygon(0, [1, 2, 3])
@@ -804,7 +804,7 @@ class GEOSTest(SimpleTestCase, TestDataMixin):
def test_relate_pattern(self):
"Testing relate() and relate_pattern()."
g = fromstr("POINT (0 0)")
- msg = "invalid intersection matrix pattern"
+ msg = "Invalid intersection matrix pattern."
with self.assertRaisesMessage(GEOSException, msg):
g.relate_pattern(0, "invalid pattern, yo")
for rg in self.geometries.relate_geoms:
@@ -1289,7 +1289,7 @@ class GEOSTest(SimpleTestCase, TestDataMixin):
if isinstance(g, Point):
# IndexError is not raised in GEOS 3.8.0.
if geos_version_tuple() != (3, 8, 0):
- msg = "invalid GEOS Geometry index:"
+ msg = "Invalid GEOS Geometry index:"
with self.assertRaisesMessage(IndexError, msg):
g.x
elif isinstance(g, Polygon):