Do not cast float to int in utils module

Change-Id: I008cc1f058c8d28741b3172fb4e48dc5a2e4791d
This commit is contained in:
Lin Yang 2018-12-18 14:59:01 -08:00
parent c805d7540e
commit 6b10bf9391
2 changed files with 7 additions and 0 deletions

View File

@ -34,3 +34,7 @@ class UtilsTestCase(testtools.TestCase):
self.assertEqual(1, rsd_lib_utils.num_or_none('1'))
self.assertEqual(10, rsd_lib_utils.num_or_none('10.0'))
self.assertEqual(12.5, rsd_lib_utils.num_or_none('12.5'))
self.assertEqual(0, rsd_lib_utils.num_or_none(0))
self.assertEqual(1, rsd_lib_utils.num_or_none(1))
self.assertEqual(10, rsd_lib_utils.num_or_none(10.0))
self.assertEqual(12.5, rsd_lib_utils.num_or_none(12.5))

View File

@ -31,6 +31,9 @@ def num_or_none(x):
if x is None:
return None
if isinstance(x, (int, float)):
return x
try:
return int(x)
except ValueError: