From 586b24968665b4c1d6d3bf4e4cd22461202b15fa Mon Sep 17 00:00:00 2001 From: Bertrand Lallau Date: Tue, 24 May 2016 17:51:30 +0200 Subject: [PATCH] Use oslo_utils.is_int_like support oslo_utils library provides is_int_like method Closes-Bug: #1585925 Change-Id: Ib3af95cc96d9874933785f23f39e138aaa6e1f68 --- magnum/common/utils.py | 8 -------- magnum/db/sqlalchemy/api.py | 4 ++-- magnum/objects/bay.py | 4 ++-- magnum/objects/baymodel.py | 4 ++-- magnum/objects/x509keypair.py | 4 ++-- magnum/tests/unit/common/test_utils.py | 21 --------------------- 6 files changed, 8 insertions(+), 37 deletions(-) diff --git a/magnum/common/utils.py b/magnum/common/utils.py index 919258e3ef..b0c4eb6ff7 100644 --- a/magnum/common/utils.py +++ b/magnum/common/utils.py @@ -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') diff --git a/magnum/db/sqlalchemy/api.py b/magnum/db/sqlalchemy/api.py index 4f76c9502b..7befb91cd6 100644 --- a/magnum/db/sqlalchemy/api.py +++ b/magnum/db/sqlalchemy/api.py @@ -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) diff --git a/magnum/objects/bay.py b/magnum/objects/bay.py index 8bb7ab73de..bde96b284c 100644 --- a/magnum/objects/bay.py +++ b/magnum/objects/bay.py @@ -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) diff --git a/magnum/objects/baymodel.py b/magnum/objects/baymodel.py index ac7749e24b..47e556ad35 100644 --- a/magnum/objects/baymodel.py +++ b/magnum/objects/baymodel.py @@ -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) diff --git a/magnum/objects/x509keypair.py b/magnum/objects/x509keypair.py index ca5e813bab..2267653ccd 100644 --- a/magnum/objects/x509keypair.py +++ b/magnum/objects/x509keypair.py @@ -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) diff --git a/magnum/tests/unit/common/test_utils.py b/magnum/tests/unit/common/test_utils.py index 9d48f8b4b6..951bd06073 100644 --- a/magnum/tests/unit/common/test_utils.py +++ b/magnum/tests/unit/common/test_utils.py @@ -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):