Skip to content
Snippets Groups Projects
Commit e6f4612f authored by Piotr Gawron's avatar Piotr Gawron
Browse files

unit tests for add subject form validation

parent 75cecbe0
No related branches found
No related tags found
No related merge requests found
...@@ -20,6 +20,7 @@ def validate_subject_nd_number(self): ...@@ -20,6 +20,7 @@ def validate_subject_nd_number(self):
class SubjectAddForm(ModelForm): class SubjectAddForm(ModelForm):
date_born = forms.DateField(label='Date of birth', date_born = forms.DateField(label='Date of birth',
required = False,
widget=forms.SelectDateWidget(years=YEAR_CHOICES) widget=forms.SelectDateWidget(years=YEAR_CHOICES)
) )
......
...@@ -151,6 +151,7 @@ class Subject(models.Model): ...@@ -151,6 +151,7 @@ class Subject(models.Model):
year_of_diagnosis = models.IntegerField( year_of_diagnosis = models.IntegerField(
default=0, default=0,
null=True, null=True,
blank=True,
verbose_name='Year of diagnosis (YYYY)' verbose_name='Year of diagnosis (YYYY)'
) )
......
from django.test import TestCase from django.test import TestCase
from web.forms import SubjectAddForm
from web.models import Subject
# Create your tests here. class SubjectAddFormTests(TestCase):
def test_validation(self):
form_data = {'first_name': 'name',
'last_name': 'name',
'status' : Subject.STATUS_CHOICES_NOT_CONTACTED,
'sex' : Subject.SEX_CHOICES_MALE,
'country' : 'Luxembourg'
}
form = SubjectAddForm(data=form_data)
form.is_valid()
self.assertTrue(form.is_valid())
def test_invalid(self):
form_data = {'first_name': 'name',
'last_name': 'name',
'status' : Subject.STATUS_CHOICES_NOT_CONTACTED,
'sex' : Subject.SEX_CHOICES_MALE,
'country' : 'Luxembourg',
'screening_number' : '123'
}
form = SubjectAddForm(data=form_data)
form.is_valid()
self.assertTrue(form.is_valid())
form.save()
form2 = SubjectAddForm(data=form_data)
validation_status = form2.is_valid()
self.assertFalse(validation_status)
self.assertTrue("screening_number" in form2.errors)
def test_invalid_2(self):
form_data = {'first_name': 'name',
'last_name': 'name',
'status' : Subject.STATUS_CHOICES_NOT_CONTACTED,
'sex' : Subject.SEX_CHOICES_MALE,
'country' : 'Luxembourg',
'nd_number' : '123'
}
form = SubjectAddForm(data=form_data)
form.is_valid()
self.assertTrue(form.is_valid())
form.save()
form2 = SubjectAddForm(data=form_data)
validation_status = form2.is_valid()
self.assertFalse(validation_status)
self.assertTrue("nd_number" in form2.errors)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment