From aa9e1980211cda32b234cc7a86d739175ada4ca8 Mon Sep 17 00:00:00 2001 From: Moshe Levi Date: Sat, 17 Jun 2017 12:05:10 +0300 Subject: [PATCH] Use versionedobjects PCIAddress field Change-Id: Ic3c6286728a07e3e68a24d034e4c48e8b2a4f582 --- os_vif/objects/fields.py | 20 -------------------- os_vif/objects/vif.py | 4 ++-- os_vif/tests/test_fields.py | 36 ------------------------------------ 3 files changed, 2 insertions(+), 58 deletions(-) delete mode 100755 os_vif/tests/test_fields.py diff --git a/os_vif/objects/fields.py b/os_vif/objects/fields.py index 14c1c7d6..4b13328a 100644 --- a/os_vif/objects/fields.py +++ b/os_vif/objects/fields.py @@ -12,27 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -import re - from oslo_versionedobjects import fields -import six - - -class PCIAddress(fields.FieldType): - - _REGEX = re.compile(r'^[0-9a-f]{4}:[0-9a-f]{2}:[0-1][0-9a-f].[0-7]$') - - @staticmethod - def coerce(obj, attr, value): - if isinstance(value, six.string_types): - newvalue = value.lower() - if PCIAddress._REGEX.match(newvalue): - return newvalue - raise ValueError("Malformed PCI address %s", value) - - -class PCIAddressField(fields.AutoTypedField): - AUTO_TYPE = PCIAddress() class VIFDirectMode(fields.Enum): diff --git a/os_vif/objects/vif.py b/os_vif/objects/vif.py index 0f812c3f..e1503669 100644 --- a/os_vif/objects/vif.py +++ b/os_vif/objects/vif.py @@ -107,7 +107,7 @@ class VIFDirect(VIFBase): 'vif_name': fields.StringField(), # The PCI address of the host device - 'dev_address': osv_fields.PCIAddressField(), + 'dev_address': fields.PCIAddressField(), # Port connection mode 'mode': osv_fields.VIFDirectModeField(), @@ -157,7 +157,7 @@ class VIFHostDevice(VIFBase): 'dev_type': osv_fields.VIFVIFHostDeviceDevTypeField(), # The PCI address of the host device - 'dev_address': osv_fields.PCIAddressField(), + 'dev_address': fields.PCIAddressField(), } diff --git a/os_vif/tests/test_fields.py b/os_vif/tests/test_fields.py deleted file mode 100755 index 37465088..00000000 --- a/os_vif/tests/test_fields.py +++ /dev/null @@ -1,36 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -from oslo_versionedobjects.tests import test_fields - -from os_vif.objects import fields - - -class TestPCIAddress(test_fields.TestField): - def setUp(self): - super(TestPCIAddress, self).setUp() - self.field = fields.PCIAddressField() - self.coerce_good_values = [ - ('0000:02:00.0', '0000:02:00.0'), - ('FFFF:FF:1F.7', 'ffff:ff:1f.7'), - ('fFfF:fF:1F.7', 'ffff:ff:1f.7'), - ] - self.coerce_bad_values = [ - '000:02:00.0', # Too short - '00000:02:00.0', # Too long - 'FFFF:FF:2F.7', # Bad slot - 'FFFF:GF:1F.7', # Bad octal - 1123123, # Number - {}, # dict - ] - self.to_primitive_values = self.coerce_good_values[0:1] - self.from_primitive_values = self.coerce_good_values[0:1]