1. import uuid
    
  2. 
    
  3. from django.core.exceptions import ValidationError
    
  4. from django.forms import UUIDField
    
  5. from django.test import SimpleTestCase
    
  6. 
    
  7. 
    
  8. class UUIDFieldTest(SimpleTestCase):
    
  9.     def test_uuidfield_1(self):
    
  10.         field = UUIDField()
    
  11.         value = field.clean("550e8400e29b41d4a716446655440000")
    
  12.         self.assertEqual(value, uuid.UUID("550e8400e29b41d4a716446655440000"))
    
  13. 
    
  14.     def test_clean_value_with_dashes(self):
    
  15.         field = UUIDField()
    
  16.         value = field.clean("550e8400-e29b-41d4-a716-446655440000")
    
  17.         self.assertEqual(value, uuid.UUID("550e8400e29b41d4a716446655440000"))
    
  18. 
    
  19.     def test_uuidfield_2(self):
    
  20.         field = UUIDField(required=False)
    
  21.         self.assertIsNone(field.clean(""))
    
  22.         self.assertIsNone(field.clean(None))
    
  23. 
    
  24.     def test_uuidfield_3(self):
    
  25.         field = UUIDField()
    
  26.         with self.assertRaisesMessage(ValidationError, "Enter a valid UUID."):
    
  27.             field.clean("550e8400")
    
  28. 
    
  29.     def test_uuidfield_4(self):
    
  30.         field = UUIDField()
    
  31.         value = field.prepare_value(uuid.UUID("550e8400e29b41d4a716446655440000"))
    
  32.         self.assertEqual(value, "550e8400-e29b-41d4-a716-446655440000")