fix flake8 problems

This commit is contained in:
hamidreza kalbasi
2021-01-25 10:34:01 +03:30
committed by Willem Van Onsem
parent 3d2fa184cf
commit 464f9ed7af
2 changed files with 25 additions and 18 deletions

View File

@@ -17,7 +17,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA # MA 02110-1301 USA
import re
from decimal import Decimal from decimal import Decimal
from math import floor from math import floor
@@ -76,6 +75,7 @@ farsiFracBig = ["", "هزارم", "میلیونیم", "میلیاردیم"]
farsiSeperator = ' و ' farsiSeperator = ' و '
class Num2Word_FA(object): class Num2Word_FA(object):
errmsg_too_big = "Too large" errmsg_too_big = "Too large"
max_num = 10 ** 36 max_num = 10 ** 36
@@ -100,7 +100,6 @@ class Num2Word_FA(object):
post = int(floor(post)) post = int(floor(post))
return pre, post, self.precision return pre, post, self.precision
def cardinal3(self, number): def cardinal3(self, number):
if (number < 19): if (number < 19):
return farsiOnes[number] return farsiOnes[number]
@@ -130,11 +129,11 @@ class Num2Word_FA(object):
res = yx + farsiSeperator + res res = yx + farsiSeperator + res
return res return res
def fractional(self, number, l): def fractional(self, number, level):
if (number == 5): if (number == 5):
return "نیم" return "نیم"
x = self.cardinalPos(number) x = self.cardinalPos(number)
ld3, lm3 = divmod(l, 3) ld3, lm3 = divmod(level, 3)
ltext = (farsiFrac[lm3] + " " + farsiFracBig[ld3]).strip() ltext = (farsiFrac[lm3] + " " + farsiFracBig[ld3]).strip()
return x + " " + ltext return x + " " + ltext
@@ -158,9 +157,9 @@ class Num2Word_FA(object):
return "منفی " + self.to_cardinal(-number) return "منفی " + self.to_cardinal(-number)
if (number == 0): if (number == 0):
return "صفر" return "صفر"
x, y, l = self.float2tuple(number) x, y, level = self.float2tuple(number)
if y == 0: if y == 0:
return self.cardinalPos(x) return self.cardinalPos(x)
if x == 0: if x == 0:
return self.fractional(y, l) return self.fractional(y, level)
return self.cardinalPos(x) + farsiSeperator + self.fractional(y, l) return self.cardinalPos(x) + farsiSeperator + self.fractional(y, level)

View File

@@ -62,16 +62,21 @@ class Num2WordsFATest(TestCase):
self.assertEqual(num2words(-203, lang='fa'), "منفی دویست و سه") self.assertEqual(num2words(-203, lang='fa'), "منفی دویست و سه")
self.assertEqual( self.assertEqual(
num2words(1234567890, lang='fa'), num2words(1234567890, lang='fa'),
"یک میلیارد و دویست و سی و چهار میلیون و پانصد و شصت و هفت هزار و هشتصد و نود" "یک میلیارد و دویست و سی و چهار میلیون و"
" پانصد و شصت و هفت هزار و هشتصد و نود"
) )
def test_year(self): def test_year(self):
self.assertEqual(num2words(1398, lang='fa', to='year'), "هزار و سیصد و نود و هشت") self.assertEqual(num2words(1398, lang='fa', to='year'),
self.assertEqual(num2words(1399, lang='fa', to='year'), "هزار و سیصد و نود و نه") "هزار و سیصد و نود و هشت")
self.assertEqual(num2words(1400, lang='fa', to='year'), "هزار و چهارصد") self.assertEqual(num2words(1399, lang='fa', to='year'),
"هزار و سیصد و نود و نه")
self.assertEqual(
num2words(1400, lang='fa', to='year'), "هزار و چهارصد")
def test_currency(self): def test_currency(self):
self.assertEqual(num2words(1000, lang='fa', to='currency'), 'هزار تومان') self.assertEqual(
num2words(1000, lang='fa', to='currency'), 'هزار تومان')
self.assertEqual( self.assertEqual(
num2words(1500000, lang='fa', to='currency'), num2words(1500000, lang='fa', to='currency'),
'یک میلیون و پانصد هزار تومان' 'یک میلیون و پانصد هزار تومان'
@@ -86,9 +91,12 @@ class Num2WordsFATest(TestCase):
def test_cardinal_for_float_number(self): def test_cardinal_for_float_number(self):
self.assertEqual(num2words(12.5, lang='fa'), "دوازده و نیم") self.assertEqual(num2words(12.5, lang='fa'), "دوازده و نیم")
self.assertEqual(num2words(0.75, lang='fa'), "هفتاد و پنج صدم") self.assertEqual(num2words(0.75, lang='fa'), "هفتاد و پنج صدم")
self.assertEqual(num2words(12.51, lang='fa'), "دوازده و پنجاه و یک صدم") self.assertEqual(num2words(12.51, lang='fa'),
self.assertEqual(num2words(12.53, lang='fa'), "دوازده و پنجاه و سه صدم") "دوازده و پنجاه و یک صدم")
self.assertEqual(num2words(12.59, lang='fa'), "دوازده و پنجاه و نه صدم") self.assertEqual(num2words(12.53, lang='fa'),
"دوازده و پنجاه و سه صدم")
self.assertEqual(num2words(12.59, lang='fa'),
"دوازده و پنجاه و نه صدم")
self.assertEqual(num2words(0.000001, lang='fa'), "یک میلیونیم") self.assertEqual(num2words(0.000001, lang='fa'), "یک میلیونیم")
def test_overflow(self): def test_overflow(self):