diff --git a/rest_framework/fields.py b/rest_framework/fields.py index f46edef1e..abebeb2ef 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -827,6 +827,8 @@ class UUIDField(Field): if not isinstance(data, uuid.UUID): try: if isinstance(data, six.integer_types): + # if isinstance(data, bool): + # self.fail('invalid', value=data) return uuid.UUID(int=data) elif isinstance(data, six.string_types): return uuid.UUID(hex=data) diff --git a/tests/test_fields.py b/tests/test_fields.py index 16221d4cc..da923da38 100644 --- a/tests/test_fields.py +++ b/tests/test_fields.py @@ -731,7 +731,8 @@ class TestUUIDField(FieldValues): } invalid_inputs = { '825d7aeb-05a9-45b5-a5b7': ['"825d7aeb-05a9-45b5-a5b7" is not a valid UUID.'], - (1, 2, 3): ['"(1, 2, 3)" is not a valid UUID.'] + (1, 2, 3): ['"(1, 2, 3)" is not a valid UUID.'], + True: ['"True" is not a valid UUID.'], } outputs = { uuid.UUID('825d7aeb-05a9-45b5-a5b7-05df87923cda'): '825d7aeb-05a9-45b5-a5b7-05df87923cda'