summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDustin Neighly <neighlyd@gmail.com>2019-04-08 11:17:05 -0700
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-04-19 08:54:23 +0200
commit49fb3f5f3ed8b37f2ae02d0fdc6980c4152c58e3 (patch)
tree69666257678c6038e87f4545d69427eadf41ef26
parent753580ecd17de62fa8ab9cd43c4cd0b986f9e348 (diff)
Fixed #30341 -- Added support for the furlong unit in Distance.
-rw-r--r--django/contrib/gis/measure.py2
-rw-r--r--docs/ref/contrib/gis/measure.txt1
-rw-r--r--docs/releases/3.0.txt3
-rw-r--r--tests/gis_tests/test_measure.py7
4 files changed, 12 insertions, 1 deletions
diff --git a/django/contrib/gis/measure.py b/django/contrib/gis/measure.py
index 3bb23d9b64..9cb2db83a2 100644
--- a/django/contrib/gis/measure.py
+++ b/django/contrib/gis/measure.py
@@ -233,6 +233,7 @@ class Distance(MeasureBase):
'clarke_link': 0.201166195164,
'fathom': 1.8288,
'ft': 0.3048,
+ 'furlong': 201.168,
'german_m': 1.0000135965,
'gold_coast_ft': 0.304799710181508,
'indian_yd': 0.914398530744,
@@ -280,6 +281,7 @@ class Distance(MeasureBase):
'Chain (Benoit)': 'chain_benoit',
'Chain (Sears)': 'chain_sears',
'Foot (International)': 'ft',
+ 'Furrow Long': 'furlong',
'German legal metre': 'german_m',
'Gold Coast foot': 'gold_coast_ft',
'Indian yard': 'indian_yd',
diff --git a/docs/ref/contrib/gis/measure.txt b/docs/ref/contrib/gis/measure.txt
index d85ebab31b..ddf091e05d 100644
--- a/docs/ref/contrib/gis/measure.txt
+++ b/docs/ref/contrib/gis/measure.txt
@@ -93,6 +93,7 @@ Unit Attribute Full name or alias(es)
``clarke_link`` Clarke's link
``fathom`` Fathom
``rod`` Rod
+``furlong`` Furlong, Furrow Long
``nm`` Nautical Mile
``nm_uk`` Nautical Mile (UK)
``german_m`` German legal metre
diff --git a/docs/releases/3.0.txt b/docs/releases/3.0.txt
index 7e32da32fa..b279f9a451 100644
--- a/docs/releases/3.0.txt
+++ b/docs/releases/3.0.txt
@@ -75,6 +75,9 @@ Minor features
* Added the :class:`~django.contrib.gis.db.models.functions.GeometryDistance`
function, supported on PostGIS.
+* Added support for the ``furlong`` unit in
+ :class:`~django.contrib.gis.measure.Distance`.
+
:mod:`django.contrib.messages`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/tests/gis_tests/test_measure.py b/tests/gis_tests/test_measure.py
index fb812b03d1..8c468139e7 100644
--- a/tests/gis_tests/test_measure.py
+++ b/tests/gis_tests/test_measure.py
@@ -138,10 +138,15 @@ class DistanceTest(unittest.TestCase):
self.assertEqual(repr(d1), 'Distance(m=100.0)')
self.assertEqual(repr(d2), 'Distance(km=3.5)')
+ def test_furlong(self):
+ d = D(m=201.168)
+ self.assertEqual(d.furlong, 1)
+
def test_unit_att_name(self):
"Testing the `unit_attname` class method"
unit_tuple = [('Yard', 'yd'), ('Nautical Mile', 'nm'), ('German legal metre', 'german_m'),
- ('Indian yard', 'indian_yd'), ('Chain (Sears)', 'chain_sears'), ('Chain', 'chain')]
+ ('Indian yard', 'indian_yd'), ('Chain (Sears)', 'chain_sears'), ('Chain', 'chain'),
+ ('Furrow Long', 'furlong')]
for nm, att in unit_tuple:
with self.subTest(nm=nm):
self.assertEqual(att, D.unit_attname(nm))