From b71792251c2d11f762073df3edf06ca019f97739 Mon Sep 17 00:00:00 2001 From: Satoshi Ishiyama Date: Sun, 24 May 2020 16:08:04 +0900 Subject: [PATCH] allow uuid object on uuid validators --- src/wtforms/validators.py | 2 +- tests/test_validators.py | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/wtforms/validators.py b/src/wtforms/validators.py index 2d6bea23b..497b6561b 100644 --- a/src/wtforms/validators.py +++ b/src/wtforms/validators.py @@ -521,7 +521,7 @@ def __call__(self, form, field): if message is None: message = field.gettext("Invalid UUID.") try: - uuid.UUID(field.data) + uuid.UUID(str(field.data)) except ValueError: raise ValidationError(message) diff --git a/tests/test_validators.py b/tests/test_validators.py index dd4613cf2..f1b5dded0 100644 --- a/tests/test_validators.py +++ b/tests/test_validators.py @@ -1,5 +1,6 @@ import decimal import re +import uuid import pytest @@ -300,7 +301,11 @@ def test_bad_mac_raises(mac_addr_val, dummy_form, dummy_field): @pytest.mark.parametrize( "uuid_val", - ["2bc1c94f-0deb-43e9-92a1-4775189ec9f8", "2bc1c94f0deb43e992a14775189ec9f8"], + [ + "2bc1c94f-0deb-43e9-92a1-4775189ec9f8", + "2bc1c94f0deb43e992a14775189ec9f8", + uuid.uuid4(), + ], ) def test_valid_uuid_passes(uuid_val, dummy_form, dummy_field): """