Newer
Older
from django.test import TestCase
from django.forms import ValidationError

Carlos Vega
committed
from web.tests.functions import get_test_study, create_study_subject
from web.forms.study_forms import StudyEditForm
from web.models.study import Study
from web.models.study_subject import StudySubject
class StudyFormTests(TestCase):
def test_study_default_regex(self):
# this will add a studysubject with a NDnumber
StudySubject.objects.all().delete()
create_study_subject(nd_number='ND0001')
form = StudyEditForm()

Carlos Vega
committed
form.instance = get_test_study()
# set default regex
nd_number_study_subject_regex_default = Study._meta.get_field(
'nd_number_study_subject_regex').get_default()
form.cleaned_data = {
'nd_number_study_subject_regex': nd_number_study_subject_regex_default}
self.assertTrue(form.clean()['nd_number_study_subject_regex'] == nd_number_study_subject_regex_default)
# test wrong regex
form = StudyEditForm()

Carlos Vega
committed
form.instance = get_test_study()
nd_number_study_subject_regex_default = r'^nd\d{5}$'
form.cleaned_data = {
'nd_number_study_subject_regex': nd_number_study_subject_regex_default}
def test_study_other_regex(self):
StudySubject.objects.all().delete()
# this will add a studysubject with a NDnumber
create_study_subject(nd_number='nd00001')
form = StudyEditForm()

Carlos Vega
committed
form.instance = get_test_study()
# test new regex
nd_number_study_subject_regex_default = r'^nd\d{5}$'
form.cleaned_data = {
'nd_number_study_subject_regex': nd_number_study_subject_regex_default}
self.assertTrue(form.clean()['nd_number_study_subject_regex']
== nd_number_study_subject_regex_default)