from __future__ import unicode_literals from django import forms from django.test import TestCase from .models import UUIDPK class UUIDPKForm(forms.ModelForm): class Meta: model = UUIDPK fields = '__all__' class ModelFormBaseTest(TestCase): def test_create_save_error(self): form = UUIDPKForm({}) self.assertFalse(form.is_valid()) msg = "The UUIDPK could not be created because the data didn't validate." with self.assertRaisesMessage(ValueError, msg): form.save() def test_update_save_error(self): obj = UUIDPK.objects.create(name='foo') form = UUIDPKForm({}, instance=obj) self.assertFalse(form.is_valid()) msg = "The UUIDPK could not be changed because the data didn't validate." with self.assertRaisesMessage(ValueError, msg): form.save()