Fixed bogus word merge in english

Also, added a first unit test. Gotta start somewhere.

Fixes #8.
This commit is contained in:
Virgil Dupras
2014-03-14 10:25:25 -04:00
parent f5db0adfe3
commit b1b5803c20
4 changed files with 25 additions and 1 deletions

View File

@@ -49,7 +49,7 @@ class Num2Word_EN(lang_EU.Num2Word_EU):
def merge(self, (ltext, lnum), (rtext, rnum)): def merge(self, (ltext, lnum), (rtext, rnum)):
if lnum == 1 and rnum < 100: if lnum == 1 and rnum < 100:
return (rtext, rnum + lnum) return (rtext, rnum)
elif 100 > lnum > rnum : elif 100 > lnum > rnum :
return ("%s-%s"%(ltext, rtext), lnum + rnum) return ("%s-%s"%(ltext, rtext), lnum + rnum)
elif lnum >= 100 > rnum: elif lnum >= 100 > rnum:

View File

@@ -27,5 +27,6 @@ setup(
keywords=' number word numbers words convert conversion i18n localisation localization internationalisation internationalization', keywords=' number word numbers words convert conversion i18n localisation localization internationalisation internationalization',
url='https://github.com/savoirfairelinux/num2words', url='https://github.com/savoirfairelinux/num2words',
packages=find_packages(), packages=find_packages(),
test_suite='tests',
use_2to3=True, use_2to3=True,
) )

0
tests/__init__.py Normal file
View File

23
tests/test_en.py Normal file
View File

@@ -0,0 +1,23 @@
# Copyright (c) 2013, Savoir-faire Linux inc. All Rights Reserved.
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
from unittest import TestCase
from num2words import num2words
class Num2WordsENTest(TestCase):
def test_and_join_199(self):
# ref https://github.com/savoirfairelinux/num2words/issues/8
self.assertEqual(num2words(199), "one hundred and ninety-nine")