add testcases
This commit is contained in:
@@ -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")
|
||||
|
||||
BIN
fet2020/members/tests/files/peter.jpg
Normal file
BIN
fet2020/members/tests/files/peter.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.9 KiB |
Reference in New Issue
Block a user