Merge "Fix issue with coercing valid_values to a tuple"
This commit is contained in:
commit
72dad26004
|
@ -293,7 +293,7 @@ class Enum(String):
|
|||
|
||||
@property
|
||||
def valid_values(self):
|
||||
return tuple(self._valid_values)
|
||||
return copy.copy(self._valid_values)
|
||||
|
||||
def coerce(self, obj, attr, value):
|
||||
if value not in self._valid_values:
|
||||
|
|
|
@ -55,7 +55,7 @@ class FakeEnumAlt(fields.Enum):
|
|||
PLATYPUS = "platypus"
|
||||
AARDVARK = "aardvark"
|
||||
|
||||
ALL = (FROG, PLATYPUS, AARDVARK)
|
||||
ALL = set([FROG, PLATYPUS, AARDVARK])
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
super(FakeEnumAlt, self).__init__(valid_values=FakeEnumAlt.ALL,
|
||||
|
@ -256,6 +256,10 @@ class TestBaseEnum(TestField):
|
|||
self.assertEqual(self.field.valid_values,
|
||||
FakeEnum.ALL)
|
||||
|
||||
def test_valid_values_keeps_type(self):
|
||||
self.assertIsInstance(self.field.valid_values, tuple)
|
||||
self.assertIsInstance(FakeEnumAltField().valid_values, set)
|
||||
|
||||
|
||||
class TestEnum(TestField):
|
||||
def setUp(self):
|
||||
|
|
Loading…
Reference in New Issue