diff --git a/quantulum3/_lang/en_US/speak.py b/quantulum3/_lang/en_US/speak.py index de40fca..68236c7 100644 --- a/quantulum3/_lang/en_US/speak.py +++ b/quantulum3/_lang/en_US/speak.py @@ -37,6 +37,10 @@ def unit_to_spoken(unit, count=1): # derived unit denominator_dimensions = [i for i in unit.dimensions if i["power"] > 0] denominator_string = parser.name_from_dimensions(denominator_dimensions, lang) - plural_denominator_string = load.pluralize(denominator_string) + if denominator_string: + plural_denominator_string = load.pluralize(denominator_string) + else: + # in case the denominator is empty, its plural is, too + plural_denominator_string = denominator_string unit_string = unit.name.replace(denominator_string, plural_denominator_string) return unit_string diff --git a/quantulum3/tests/test_hypothesis.py b/quantulum3/tests/test_hypothesis.py index 5cc0f66..c7d25b4 100644 --- a/quantulum3/tests/test_hypothesis.py +++ b/quantulum3/tests/test_hypothesis.py @@ -6,7 +6,7 @@ import unittest -from hypothesis import given, settings +from hypothesis import example, given, settings from hypothesis import strategies as st from .. import parser as p @@ -30,6 +30,7 @@ def test_extract_spellout_values(self, s, lang): p.extract_spellout_values(s, lang=lang) @given(st.text(), multilang_strategy) + @example("0/B", "en_US") @settings(deadline=None) def test_inline_parse_and_expand(self, s, lang): # Just assert that this does not throw any exceptions