Newer
Older
""" This module tests all our quiz models"""
from .models import Sport, Criterion
class SportModelTest(TestCase):
def setUp(self):
self.name = "HIIT"
self.url = "https://www.buchsys.de/fu-berlin/angebote/aktueller_zeitraum/_HIIT_" \
"-_High_Intensity_Interval_Training___HOME.html "
name=self.name,
url=self.url,
)
def test_sport_can_be_created(self):
""" New sport is written to the database """
test_sport = Sport.objects.first()
self.assertEqual(test_sport.name, self.name)
self.assertEqual(test_sport.url, self.url)
class CriterionRatingTest(TestCase):
"""Tests the Relation between Sport and Criterion"""
def setUp(self):
self.name = "HIIT"
self.url = "https://www.buchsys.de/fu-berlin/angebote/aktueller_zeitraum/_HIIT_" \
"-_High_Intensity_Interval_Training___HOME.html "
name=self.name,
url=self.url,
)
self.criterion = Criterion(name="Einzelsport")
self.criterion.save()
def test_can_rate_criterion_for_sport(self):
""" A rating for a specific criterion can be added to a sport """
self.test_sport.rate(self.criterion, 10)
self.assertEqual(self.test_sport.criteria_ratings.first(), self.criterion)
self.assertEqual(self.test_sport.get_rating(self.criterion), 10)
class CriterionModelTest(TestCase):
def test_criterion_can_be_created(self):
"""New criterion is saved to the db"""
Criterion(name=name).save()
test_criterion=Criterion.objects.first()
self.assertEqual(test_criterion.name, name)