Merge "Add acl_rule missing property"

This commit is contained in:
Zuul 2019-03-09 00:04:34 +00:00 committed by Gerrit Code Review
commit 9ae58e8368
2 changed files with 17 additions and 19 deletions

View File

@ -25,40 +25,38 @@ from rsd_lib import utils as rsd_lib_utils
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)
class IPSourceField(base.CompositeField): class IPConditionTypeField(base.CompositeField):
ipv4_address = base.Field('IPv4Address') ipv4_address = base.Field('IPv4Address')
mask = base.Field('Mask') mask = base.Field('Mask')
class MACSourceField(base.CompositeField): class MACConditionTypeField(base.CompositeField):
address = base.Field('Address') mac_address = base.Field('Address')
mask = base.Field('Mask', adapter=rsd_lib_utils.num_or_none) mask = base.Field('Mask')
class VLANIdField(base.CompositeField): class VlanIdConditionTypeField(base.CompositeField):
id = base.Field('Id', adapter=rsd_lib_utils.num_or_none) id = base.Field('Id', adapter=rsd_lib_utils.num_or_none)
mask = base.Field('Mask', adapter=rsd_lib_utils.num_or_none) mask = base.Field('Mask', adapter=rsd_lib_utils.num_or_none)
class L4SourcePortField(base.CompositeField): class PortConditionTypeField(base.CompositeField):
port = base.Field('Port', adapter=rsd_lib_utils.num_or_none) port = base.Field('Port', adapter=rsd_lib_utils.num_or_none)
mask = base.Field('Mask', adapter=rsd_lib_utils.num_or_none) mask = base.Field('Mask', adapter=rsd_lib_utils.num_or_none)
class ConditionField(base.CompositeField): class ConditionTypeField(base.CompositeField):
ip_source = IPSourceField('IPSource') ip_source = IPConditionTypeField('IPSource')
ip_destination = base.Field('IPDestination') ip_destination = IPConditionTypeField('IPDestination')
mac_source = MACSourceField('MACSource') mac_source = MACConditionTypeField('MACSource')
mac_destination = base.Field('MACDestination') mac_destination = MACConditionTypeField('MACDestination')
vlan_id = VLANIdField('VLANId') vlan_id = VlanIdConditionTypeField('VLANId')
l4_source_port = L4SourcePortField('L4SourcePort') l4_source_port = PortConditionTypeField('L4SourcePort')
l4_destination_port = base.Field('L4DestinationPort', l4_destination_port = PortConditionTypeField('L4DestinationPort')
adapter=rsd_lib_utils.num_or_none) l4_protocol = base.Field('L4Protocol', adapter=rsd_lib_utils.num_or_none)
l4_protocol = base.Field('L4Protocol')
class ACLRule(base.ResourceBase): class ACLRule(base.ResourceBase):
identity = base.Field('Id') identity = base.Field('Id')
"""The acl rule identity string""" """The acl rule identity string"""
@ -86,7 +84,7 @@ class ACLRule(base.ResourceBase):
mirror_type = base.Field('MirrorType') mirror_type = base.Field('MirrorType')
"""The acl rule mirror type""" """The acl rule mirror type"""
condition = ConditionField('Condition') condition = ConditionTypeField('Condition')
"""The acl rule condition field""" """The acl rule condition field"""
oem = base.Field('Oem') oem = base.Field('Oem')

View File

@ -59,7 +59,7 @@ class ACLRuleTestCase(testtools.TestCase):
self.acl_rule_inst.condition.ip_source.mask) self.acl_rule_inst.condition.ip_source.mask)
self.assertEqual(None, self.acl_rule_inst.condition.ip_destination) self.assertEqual(None, self.acl_rule_inst.condition.ip_destination)
self.assertEqual('00:11:22:33:44:55', self.assertEqual('00:11:22:33:44:55',
self.acl_rule_inst.condition.mac_source.address) self.acl_rule_inst.condition.mac_source.mac_address)
self.assertEqual(None, self.acl_rule_inst.condition.mac_source.mask) self.assertEqual(None, self.acl_rule_inst.condition.mac_source.mask)
self.assertEqual(1088, self.acl_rule_inst.condition.vlan_id.id) self.assertEqual(1088, self.acl_rule_inst.condition.vlan_id.id)
self.assertEqual(4095, self.assertEqual(4095,