Skip to content

Commit 0090627

Browse files
committed
Do not cast 0 as None for z and m coordinates
1 parent c790886 commit 0090627

File tree

3 files changed

+18
-3
lines changed

3 files changed

+18
-3
lines changed

postgis/point.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ def __init__(self, x, y=None, z=None, m=None, srid=None):
1515
m = extra[0]
1616
self.x = float(x)
1717
self.y = float(y)
18-
self.z = int(z) if z else None
19-
self.m = int(m) if m else None
18+
self.z = int(z) if z is not None else None
19+
self.m = int(m) if m is not None else None
2020
if srid is not None:
2121
self.srid = srid
2222

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def list_modules(dirname):
4646
cmdclass = {'build_ext': build_ext}
4747

4848

49-
VERSION = (1, 0, 0)
49+
VERSION = (1, 0, 1)
5050

5151
setup(
5252
name='postgis',

tests/test_point.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,18 @@ def test_string_are_cast():
8383
assert point.x == 1.0
8484
assert point.y == 2.0
8585
assert point.z == 3
86+
87+
88+
def test_0_as_z_is_considered():
89+
point = Point(1, 2, 0)
90+
assert point.x == 1.0
91+
assert point.y == 2.0
92+
assert point.z == 0
93+
94+
95+
def test_0_as_m_is_considered():
96+
point = Point(1, 2, 3, 0)
97+
assert point.x == 1.0
98+
assert point.y == 2.0
99+
assert point.z == 3
100+
assert point.m == 0

0 commit comments

Comments
 (0)