add testcases

This commit is contained in:
2021-03-07 23:53:01 +00:00
parent bad0eab3f5
commit 6f8cde2a9b
2 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,120 @@
import os
from django.core.files.uploadedfile import SimpleUploadedFile
from django.test import TestCase
from .models import Member, Job, JobGroup
from .forms import MemberForm, JobForm, JobGroupForm
class MemberTestCase(TestCase):
def setUp(self):
member = Member()
member.firstname = "Peter"
member.surname = "Traunmüller"
member.nickname = "Pet"
member.mailaccount = "peter@fet.at"
member.role = "A"
member.save()
def test_member(self):
member = Member.objects.get(firstname="Peter")
self.assertEqual(member.__str__(), "Peter Traunmüller")
self.assertEqual(member.role, "A")
class MemberFormTestCase(TestCase):
def test_form(self):
image = SimpleUploadedFile(
name="peter.jpg",
content=open(
os.path.join(os.path.dirname(__file__), "tests/files/peter.jpg"), "rb"
).read(),
content_type="image/jpeg",
)
form = MemberForm(
data={
"firstname": "Peter",
"surname": "Traunmüller",
"nickname": "Pet",
"mailaccount": "peter@fet.at",
"role": "A",
},
files={"image": image},
)
self.assertTrue(form.is_valid())
form.save()
member = Member.objects.get(firstname="Peter")
self.assertEqual(member.__str__(), "Peter Traunmüller")
def test_form_error_no_image(self):
form = MemberForm(
data={
"firstname": "Peter",
"surname": "Traunmüller",
"nickname": "Pet",
"mailaccount": "peter@fet.at",
"role": "A",
},
)
self.assertFalse(form.is_valid())
self.assertEqual(form.errors.as_data()['__all__'][0].message, "Es fehlt das Profilbild.")
class JobGroupFormTestCase(TestCase):
def test_form(self):
form = JobGroupForm(
data={
"name": "Studienkommission ET",
"shortterm": "Stuko ET",
},
)
self.assertTrue(form.is_valid())
form.save()
job_group = JobGroup.objects.get(name="Studienkommission ET")
self.assertEqual(job_group.__str__(), "Studienkommission ET")
self.assertEqual(job_group.slug, "stuko-et")
def test_form_error_slug(self):
form = JobGroupForm(
data={
"name": "Studienkommission ET",
"shortterm": "Stuko ET",
},
)
self.assertTrue(form.is_valid())
form.save()
job_group = JobGroup.objects.get(name="Studienkommission ET")
self.assertEqual(job_group.__str__(), "Studienkommission ET")
self.assertNotEqual(job_group.slug, "stuko et")
class JobFormTestCase(TestCase):
def test_form(self):
job_group = JobGroup()
job_group.name = "Studienkommission ET"
job_group.shortterm = "Stuko ET"
job_group.save()
form = JobForm(
data={
"name": "Studienkommission Master",
"shortterm": "Stuko Master",
"job_group": job_group,
},
)
self.assertTrue(form.is_valid())
form.save()
job = Job.objects.get(name="Studienkommission Master")
self.assertEqual(job.__str__(), "Stuko Master")
self.assertEqual(job.slug, "stuko-master")

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB