From 2ca98971e1d51e3449e32314ca0342e5776506d4 Mon Sep 17 00:00:00 2001 From: Eyosiyas Bereketab Date: Wed, 10 Aug 2022 09:34:03 +0300 Subject: [PATCH] Add additional test case --- num2words/lang_AM.py | 19 ++++++------------- tests/test_am.py | 4 ++++ 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/num2words/lang_AM.py b/num2words/lang_AM.py index 3efd9c2..77922db 100644 --- a/num2words/lang_AM.py +++ b/num2words/lang_AM.py @@ -60,7 +60,7 @@ class Num2Word_AM(lang_EU.Num2Word_EU): 'ስምንት': 'ስምንተኛ', 'ዘጠኝ': 'ዘጠነኛ', 'አሥር': 'አሥረኛ', - 'አሥራ አንድ': 'አሥራ አንድ', + 'አሥራ አንድ': 'አሥራ አንደኛ', 'አሥራ ሁለት': 'አሥራ ሁለተኛ', 'አሥራ ሦስት': 'አሥራ ሦስተኛ', 'አሥራ አራት': 'አሥራ አራተኛ', @@ -77,10 +77,6 @@ class Num2Word_AM(lang_EU.Num2Word_EU): return self.to_cardinal_float(value) out = '' - if value < 0: - value = abs(value) - out = self.negword - if value >= self.MAXVAL: raise OverflowError(self.errmsg_toobig % (value, self.MAXVAL)) @@ -95,14 +91,13 @@ class Num2Word_AM(lang_EU.Num2Word_EU): ltext, lnum = lpair rtext, rnum = rpair if lnum == 1 and rnum < 100: - return (rtext, rnum) + return rtext, rnum elif 100 > lnum > rnum: - return ('%s %s' % (ltext, rtext), lnum + rnum) + return '%s %s' % (ltext, rtext), lnum + rnum elif lnum >= 100 > rnum: - return ('%s %s' % (ltext, rtext), lnum + rnum) + return '%s %s' % (ltext, rtext), lnum + rnum elif rnum > lnum: - return ('%s %s' % (ltext, rtext), lnum * rnum) - return ('%s, %s' % (ltext, rtext), lnum + rnum) + return '%s %s' % (ltext, rtext), lnum * rnum def to_ordinal(self, value): self.verify_ordinal(value) @@ -112,9 +107,7 @@ class Num2Word_AM(lang_EU.Num2Word_EU): try: lastword = self.ords[lastword] except KeyError: - if lastword[-1] == 'y': - lastword = lastword[:-1] + 'ie' - lastword += 'th' + lastword += 'ኛ' lastwords[-1] = self.title(lastword) outwords[-1] = ' '.join(lastwords) return ' '.join(outwords) diff --git a/tests/test_am.py b/tests/test_am.py index 460ca6e..58709c3 100644 --- a/tests/test_am.py +++ b/tests/test_am.py @@ -42,6 +42,10 @@ class Num2WordsAMTest(TestCase): num2words(22, lang='am', to='ordinal'), 'ሃያ ሁለተኛ' ) + self.assertEqual( + num2words(10000, lang='am', to='ordinal'), + 'አሥር ሺህኛ' + ) def test_to_ordinal_num(self): self.assertEqual(num2words(10, lang='am', to='ordinal_num'), '10ኛ')