Skip to content

Commit 37681d4

Browse files
authored
Merge pull request #187 from CitrineInformatics/maintain/unit-exponents-issue
Correct fractional power formatting issue for units
2 parents b625aee + 2689f26 commit 37681d4

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

gemd/units/impl.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -81,11 +81,11 @@ def _format_clean(unit, registry, **options):
8181

8282
if p == 1:
8383
numerator.append(u)
84-
elif p > 1:
84+
elif p > 0:
8585
numerator.append(f"{u} ** {p}")
8686
elif p == -1:
8787
denominator.append(u)
88-
elif p < -1:
88+
elif p < 0:
8989
denominator.append(f"{u} ** {-p}")
9090

9191
if len(numerator) == 0:

gemd/units/tests/test_parser.py

+9
Original file line numberDiff line numberDiff line change
@@ -142,3 +142,12 @@ def test_punctuation():
142142
assert parse_units('N.m') == parse_units('N * m')
143143
with pytest.raises(UndefinedUnitError):
144144
parse_units('mol : mol')
145+
146+
147+
def test_exponents():
148+
"""SPT-874 fractional exponents were being treated as zero."""
149+
megapascals = parse_units("MPa")
150+
sqrt_megapascals = parse_units('MPa^0.5')
151+
assert megapascals in sqrt_megapascals
152+
assert sqrt_megapascals == parse_units(f"{megapascals} / {sqrt_megapascals}")
153+
assert parse_units('MPa^1.5') == parse_units(f"{megapascals} * {sqrt_megapascals}")

setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
setup(name='gemd',
5-
version='1.13.4',
5+
version='1.13.5',
66
url='http://github.com/CitrineInformatics/gemd-python',
77
description="Python binding for Citrine's GEMD data model",
88
author='Citrine Informatics',

0 commit comments

Comments
 (0)