Merge branch 'master' into romanian-issues-259

This commit is contained in:
Ernesto Rodriguez Ortiz
2019-10-25 18:36:11 -04:00
committed by GitHub
5 changed files with 116 additions and 5 deletions

View File

@@ -18,11 +18,11 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from . import (lang_AR, lang_CZ, lang_DE, lang_DK, lang_EN, lang_EN_IN, from . import (lang_AR, lang_CZ, lang_DE, lang_DK, lang_EN, lang_EN_IN,
lang_ES, lang_ES_CO, lang_ES_VE, lang_FI, lang_FR, lang_FR_BE, lang_ES, lang_ES_CO, lang_ES_NI, lang_ES_VE, lang_FI, lang_FR,
lang_FR_CH, lang_FR_DZ, lang_HE, lang_ID, lang_IT, lang_JA, lang_FR_BE, lang_FR_CH, lang_FR_DZ, lang_HE, lang_ID, lang_IT,
lang_KN, lang_KO, lang_LT, lang_LV, lang_NL, lang_NO, lang_PL, lang_JA, lang_KN, lang_KO, lang_LT, lang_LV, lang_NL, lang_NO,
lang_PT, lang_PT_BR, lang_RO, lang_RU, lang_SL, lang_SR, lang_PL, lang_PT, lang_PT_BR, lang_RO, lang_RU, lang_SL,
lang_TH, lang_TR, lang_UK, lang_VI) lang_SR, lang_TH, lang_TR, lang_UK, lang_VI)
CONVERTER_CLASSES = { CONVERTER_CLASSES = {
'ar': lang_AR.Num2Word_AR(), 'ar': lang_AR.Num2Word_AR(),
@@ -37,6 +37,7 @@ CONVERTER_CLASSES = {
'fi': lang_FI.Num2Word_FI(), 'fi': lang_FI.Num2Word_FI(),
'es': lang_ES.Num2Word_ES(), 'es': lang_ES.Num2Word_ES(),
'es_CO': lang_ES_CO.Num2Word_ES_CO(), 'es_CO': lang_ES_CO.Num2Word_ES_CO(),
'es_NI': lang_ES_NI.Num2Word_ES_NI(),
'es_VE': lang_ES_VE.Num2Word_ES_VE(), 'es_VE': lang_ES_VE.Num2Word_ES_VE(),
'id': lang_ID.Num2Word_ID(), 'id': lang_ID.Num2Word_ID(),
'ja': lang_JA.Num2Word_JA(), 'ja': lang_JA.Num2Word_JA(),

33
num2words/lang_ES_NI.py Normal file
View File

@@ -0,0 +1,33 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2003, Taro Ogawa. All Rights Reserved.
# 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 __future__ import print_function, unicode_literals
from .lang_ES import Num2Word_ES
class Num2Word_ES_NI(Num2Word_ES):
CURRENCY_FORMS = {
'NIO': (('córdoba', 'córdobas'), ('centavo', 'centavos')),
}
def to_currency(self, val, currency='NIO', cents=True, separator=' con',
adjective=False):
result = super(Num2Word_ES, self).to_currency(
val, currency=currency, cents=cents, separator=separator,
adjective=adjective)
return result.replace("uno", "un")

View File

@@ -107,6 +107,12 @@ class Num2Word_RU(Num2Word_Base):
'USD': ( 'USD': (
('доллар', 'доллара', 'долларов'), ('цент', 'цента', 'центов') ('доллар', 'доллара', 'долларов'), ('цент', 'цента', 'центов')
), ),
'UAH': (
('гривна', 'гривны', 'гривен'), ('копейка', 'копейки', 'копеек')
),
'KZT': (
('тенге', 'тенге', 'тенге'), ('тиын', 'тиына', 'тиынов')
),
} }
def setup(self): def setup(self):

29
tests/test_errors.py Normal file
View File

@@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2003, Taro Ogawa. All Rights Reserved.
# 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 __future__ import unicode_literals
from unittest import TestCase
from num2words import num2words
class Num2WordsErrorsTest(TestCase):
def test_NotImplementedError(self):
with self.assertRaises(NotImplementedError):
num2words(100, lang="lalala")

42
tests/test_es_ni.py Normal file
View File

@@ -0,0 +1,42 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2003, Taro Ogawa. All Rights Reserved.
# 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 __future__ import unicode_literals
from num2words import num2words
from . import test_es
TEST_NIO = (
(1.0, 'un córdoba con cero centavos'),
(2.0, 'dos córdobas con cero centavos'),
(8.0, 'ocho córdobas con cero centavos'),
(12.0, 'doce córdobas con cero centavos'),
(21.0, 'veintiun córdobas con cero centavos'),
(81.25, 'ochenta y un córdobas con veinticinco centavos'),
(100.00, 'cien córdobas con cero centavos'),
)
class Num2WordsESNITest(test_es.Num2WordsESTest):
def test_currency(self):
for test in TEST_NIO:
self.assertEqual(
num2words(test[0], lang='es_NI', to='currency'),
test[1]
)