Use oslo_utils.is_int_like support

oslo_utils library provides is_int_like method

Closes-Bug: #1585925
Change-Id: Ib3af95cc96d9874933785f23f39e138aaa6e1f68
This commit is contained in:
Bertrand Lallau 2016-05-24 17:51:30 +02:00
parent 1740f79a0a
commit 586b249686
6 changed files with 8 additions and 37 deletions

View File

@ -190,14 +190,6 @@ def delete_if_exists(pathname):
raise
def is_int_like(val):
"""Check if a value looks like an int."""
try:
return str(int(val)) == str(val)
except Exception:
return False
def is_valid_boolstr(val):
"""Check if the provided string is a valid bool string or not."""
boolstrs = ('true', 'false', 'yes', 'no', 'y', 'n', '1', '0')

View File

@ -18,13 +18,13 @@ from oslo_config import cfg
from oslo_db import exception as db_exc
from oslo_db.sqlalchemy import session as db_session
from oslo_db.sqlalchemy import utils as db_utils
from oslo_utils import strutils
from oslo_utils import timeutils
from oslo_utils import uuidutils
from sqlalchemy.orm.exc import MultipleResultsFound
from sqlalchemy.orm.exc import NoResultFound
from magnum.common import exception
from magnum.common import utils
from magnum.db import api
from magnum.db.sqlalchemy import models
from magnum.i18n import _
@ -78,7 +78,7 @@ def add_identity_filter(query, value):
:param value: Value for filtering results by.
:return: Modified query.
"""
if utils.is_int_like(value):
if strutils.is_int_like(value):
return query.filter_by(id=value)
elif uuidutils.is_uuid_like(value):
return query.filter_by(uuid=value)

View File

@ -13,11 +13,11 @@
# License for the specific language governing permissions and limitations
# under the License.
from oslo_utils import strutils
from oslo_utils import uuidutils
from oslo_versionedobjects import fields
from magnum.common import exception
from magnum.common import utils
from magnum.db import api as dbapi
from magnum.objects import base
from magnum.objects import baymodel
@ -95,7 +95,7 @@ class Bay(base.MagnumPersistentObject, base.MagnumObject,
:param context: Security context
:returns: a :class:`Bay` object.
"""
if utils.is_int_like(bay_id):
if strutils.is_int_like(bay_id):
return cls.get_by_id(context, bay_id)
elif uuidutils.is_uuid_like(bay_id):
return cls.get_by_uuid(context, bay_id)

View File

@ -10,11 +10,11 @@
# License for the specific language governing permissions and limitations
# under the License.
from oslo_utils import strutils
from oslo_utils import uuidutils
from oslo_versionedobjects import fields
from magnum.common import exception
from magnum.common import utils
from magnum.db import api as dbapi
from magnum.objects import base
from magnum.objects import fields as m_fields
@ -92,7 +92,7 @@ class BayModel(base.MagnumPersistentObject, base.MagnumObject,
:param context: Security context
:returns: a :class:`BayModel` object.
"""
if utils.is_int_like(baymodel_id):
if strutils.is_int_like(baymodel_id):
return cls.get_by_id(context, baymodel_id)
elif uuidutils.is_uuid_like(baymodel_id):
return cls.get_by_uuid(context, baymodel_id)

View File

@ -10,11 +10,11 @@
# License for the specific language governing permissions and limitations
# under the License.
from oslo_utils import strutils
from oslo_utils import uuidutils
from oslo_versionedobjects import fields
from magnum.common import exception
from magnum.common import utils
from magnum.db import api as dbapi
from magnum.objects import base
@ -65,7 +65,7 @@ class X509KeyPair(base.MagnumPersistentObject, base.MagnumObject,
:param context: Security context
:returns: a :class:`X509KeyPair` object.
"""
if utils.is_int_like(x509keypair_id):
if strutils.is_int_like(x509keypair_id):
return cls.get_by_id(context, x509keypair_id)
elif uuidutils.is_uuid_like(x509keypair_id):
return cls.get_by_uuid(context, x509keypair_id)

View File

@ -497,27 +497,6 @@ class MkfsTestCase(base.TestCase):
'ext4', '/my/block/dev', 'ext4-vol')
class IntLikeTestCase(base.TestCase):
def test_is_int_like(self):
self.assertTrue(utils.is_int_like(1))
self.assertTrue(utils.is_int_like("1"))
self.assertTrue(utils.is_int_like("514"))
self.assertTrue(utils.is_int_like("0"))
self.assertFalse(utils.is_int_like(1.1))
self.assertFalse(utils.is_int_like("1.1"))
self.assertFalse(utils.is_int_like("1.1.1"))
self.assertFalse(utils.is_int_like(None))
self.assertFalse(utils.is_int_like("0."))
self.assertFalse(utils.is_int_like("aaaaaa"))
self.assertFalse(utils.is_int_like("...."))
self.assertFalse(utils.is_int_like("1g"))
self.assertFalse(
utils.is_int_like("0cc3346e-9fef-4445-abe6-5d2b2690ec64"))
self.assertFalse(utils.is_int_like("a1"))
class TempFilesTestCase(base.TestCase):
def test_tempdir(self):