mirror of
https://github.com/bblaz/num2words.git
synced 2025-12-06 14:52:25 +00:00
updated test case to increase coverage. raised NotImplementedError for options not implemented.
This commit is contained in:
@@ -96,22 +96,22 @@ class Num2Word_SV(lang_EU.Num2Word_EU):
|
|||||||
lastword_ending = self.ords[lastword[-3:]]
|
lastword_ending = self.ords[lastword[-3:]]
|
||||||
ending_length = 3
|
ending_length = 3
|
||||||
except KeyError:
|
except KeyError:
|
||||||
lastword += "de"
|
# lastword += "de"
|
||||||
lastword_first_part = self.title(lastword)[:-ending_length]
|
lastword_ending = "de"
|
||||||
|
if lastword_ending == 'de':
|
||||||
|
lastword_first_part = self.title(lastword)[:]
|
||||||
|
else:
|
||||||
|
lastword_first_part = self.title(lastword)[:-ending_length]
|
||||||
lastword_correct = lastword_first_part + lastword_ending
|
lastword_correct = lastword_first_part + lastword_ending
|
||||||
outwords[-1] = lastword_correct
|
outwords[-1] = lastword_correct
|
||||||
return " ".join(outwords)
|
return " ".join(outwords)
|
||||||
|
|
||||||
def to_ordinal_num(self, value):
|
def to_ordinal_num(self, value):
|
||||||
self.verify_ordinal(value)
|
raise NotImplementedError("'ordinal_num' is not implemented for swedish language")
|
||||||
return "%s%s" % (value, self.to_ordinal(value)[-2:])
|
|
||||||
|
|
||||||
def to_year(self, val, longval=True):
|
def to_year(self, val, longval=True):
|
||||||
if not (val // 100) % 10:
|
raise NotImplementedError("'year' is not implemented for swedish language")
|
||||||
return self.to_cardinal(val)
|
|
||||||
return self.to_splitnum(val, hightxt="hundra", jointxt="och",
|
|
||||||
longval=longval)
|
|
||||||
|
|
||||||
def to_currency(self, val, longval=True):
|
def to_currency(self, val, longval=True):
|
||||||
return self.to_splitnum(val, hightxt="krone/r", lowtxt="öre/n",
|
raise NotImplementedError("'currency' is not implemented for swedish language")
|
||||||
jointxt="och", longval=longval, cents=True)
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ from num2words import num2words
|
|||||||
|
|
||||||
class Num2WordsSVTest(TestCase):
|
class Num2WordsSVTest(TestCase):
|
||||||
def test_ordinal(self):
|
def test_ordinal(self):
|
||||||
|
self.assertEqual(num2words(14, to="ordinal", lang="sv"), "fjortonde")
|
||||||
self.assertEqual(num2words(1435, to="ordinal", lang="sv"), "etttusen fyrahundratrettiofemte")
|
self.assertEqual(num2words(1435, to="ordinal", lang="sv"), "etttusen fyrahundratrettiofemte")
|
||||||
self.assertEqual(num2words(32, to="ordinal", lang="sv"), "trettioandra")
|
self.assertEqual(num2words(32, to="ordinal", lang="sv"), "trettioandra")
|
||||||
self.assertEqual(num2words(1, to="ordinal", lang="sv"), "första")
|
self.assertEqual(num2words(1, to="ordinal", lang="sv"), "första")
|
||||||
@@ -44,3 +45,17 @@ class Num2WordsSVTest(TestCase):
|
|||||||
self.assertEqual(num2words(14004235000, to="cardinal", lang="sv"), "fjorton miljarder fyra miljoner tvåhundratrettiofemtusen")
|
self.assertEqual(num2words(14004235000, to="cardinal", lang="sv"), "fjorton miljarder fyra miljoner tvåhundratrettiofemtusen")
|
||||||
self.assertEqual(num2words(14004235, to="cardinal", lang="sv"), "fjorton miljoner fyratusen tvåhundratrettiofem")
|
self.assertEqual(num2words(14004235, to="cardinal", lang="sv"), "fjorton miljoner fyratusen tvåhundratrettiofem")
|
||||||
self.assertEqual(num2words(1.25, to="cardinal", lang="sv"), "ett komma två fem")
|
self.assertEqual(num2words(1.25, to="cardinal", lang="sv"), "ett komma två fem")
|
||||||
|
|
||||||
|
def test_not_implemented_options(self):
|
||||||
|
|
||||||
|
with self.assertRaises(NotImplementedError) as context:
|
||||||
|
num2words(1235, to="year", lang="sv")
|
||||||
|
self.assertTrue("'year' is not implemented for swedish language" in str(context.exception))
|
||||||
|
|
||||||
|
with self.assertRaises(NotImplementedError) as context:
|
||||||
|
num2words(1235, to="currency", lang="sv")
|
||||||
|
self.assertTrue("'currency' is not implemented for swedish language" in str(context.exception))
|
||||||
|
|
||||||
|
with self.assertRaises(NotImplementedError) as context:
|
||||||
|
num2words(1235, to="ordinal_num", lang="sv")
|
||||||
|
self.assertTrue("'ordinal_num' is not implemented for swedish language" in str(context.exception))
|
||||||
Reference in New Issue
Block a user