Add FlowDirectionAndAnyEnumField common type
This common type is going to be used by QoS min PPS, which supports not only '[e|i]gress' direction, but also 'any'. Related-Bug: #1922237 See-Also: https://review.opendev.org/785236 Change-Id: I8666db65ad337bd7b003453fce9ffbaa76a7d291
This commit is contained in:
parent
83b6727dad
commit
ec29bdf065
|
@ -162,6 +162,11 @@ class FlowDirectionEnumField(obj_fields.AutoTypedField):
|
||||||
AUTO_TYPE = obj_fields.Enum(valid_values=lib_constants.VALID_DIRECTIONS)
|
AUTO_TYPE = obj_fields.Enum(valid_values=lib_constants.VALID_DIRECTIONS)
|
||||||
|
|
||||||
|
|
||||||
|
class FlowDirectionAndAnyEnumField(obj_fields.AutoTypedField):
|
||||||
|
AUTO_TYPE = obj_fields.Enum(
|
||||||
|
valid_values=lib_constants.VALID_DIRECTIONS_AND_ANY)
|
||||||
|
|
||||||
|
|
||||||
class IpamAllocationStatusEnumField(obj_fields.AutoTypedField):
|
class IpamAllocationStatusEnumField(obj_fields.AutoTypedField):
|
||||||
AUTO_TYPE = obj_fields.Enum(
|
AUTO_TYPE = obj_fields.Enum(
|
||||||
valid_values=lib_constants.VALID_IPAM_ALLOCATION_STATUSES)
|
valid_values=lib_constants.VALID_IPAM_ALLOCATION_STATUSES)
|
||||||
|
|
|
@ -184,6 +184,21 @@ class FlowDirectionEnumFieldTest(test_base.BaseTestCase, TestField):
|
||||||
self.assertEqual("'%s'" % in_val, self.field.stringify(in_val))
|
self.assertEqual("'%s'" % in_val, self.field.stringify(in_val))
|
||||||
|
|
||||||
|
|
||||||
|
class FlowDirectionAndAnyEnumFieldTest(test_base.BaseTestCase, TestField):
|
||||||
|
def setUp(self):
|
||||||
|
super(FlowDirectionAndAnyEnumFieldTest, self).setUp()
|
||||||
|
self.field = common_types.FlowDirectionAndAnyEnumField()
|
||||||
|
self.coerce_good_values = [
|
||||||
|
(val, val) for val in const.VALID_DIRECTIONS_AND_ANY]
|
||||||
|
self.coerce_bad_values = ['test', '8', 10, []]
|
||||||
|
self.to_primitive_values = self.coerce_good_values
|
||||||
|
self.from_primitive_values = self.coerce_good_values
|
||||||
|
|
||||||
|
def test_stringify(self):
|
||||||
|
for in_val, out_val in self.coerce_good_values:
|
||||||
|
self.assertEqual("'%s'" % in_val, self.field.stringify(in_val))
|
||||||
|
|
||||||
|
|
||||||
class DomainNameFieldTest(test_base.BaseTestCase, TestField):
|
class DomainNameFieldTest(test_base.BaseTestCase, TestField):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DomainNameFieldTest, self).setUp()
|
super(DomainNameFieldTest, self).setUp()
|
||||||
|
|
Loading…
Reference in New Issue