112 lines
3.6 KiB
Python
112 lines
3.6 KiB
Python
from django.test import TestCase
|
|
from jarvis.objective.models import (
|
|
Educative,
|
|
Skill,
|
|
max_even_if_none,
|
|
TouchPosition,
|
|
Routine,
|
|
RoutineSkill,
|
|
)
|
|
|
|
|
|
class ToolsModels(TestCase):
|
|
def setUp(self):
|
|
""" """
|
|
touch_position_1 = TouchPosition.objects.create(
|
|
long_label="debout", short_label="debout", is_default=True
|
|
)
|
|
touch_position_2 = TouchPosition.objects.create(
|
|
long_label="quadrupédique", short_label="4 patte", is_default=False
|
|
)
|
|
educ_1 = Educative.objects.create(
|
|
long_label="1/2 vrille", short_label="1/2T", difficulty=0.1, level=1, rank=1
|
|
)
|
|
educ_3 = Educative.objects.create(
|
|
long_label="4 pattes", short_label="4P", difficulty=0.1, level=1, rank=1
|
|
)
|
|
skill_1 = Skill.objects.create(
|
|
long_label="Salto arrière groupé",
|
|
short_label="Arrière o",
|
|
rotation_type=2,
|
|
notation="4.-o",
|
|
rotation=4,
|
|
twist=0,
|
|
departure=touch_position_1,
|
|
landing=touch_position_1,
|
|
difficulty=0.5,
|
|
)
|
|
skill_2 = Skill.objects.create(
|
|
long_label="Barani groupé",
|
|
short_label="Barani o",
|
|
rotation_type=2,
|
|
notation=".41o",
|
|
rotation=4,
|
|
twist=1,
|
|
departure=touch_position_1,
|
|
landing=touch_position_1,
|
|
difficulty=0.5,
|
|
)
|
|
routine_1 = Routine.objects.create(
|
|
long_label="BOT Bronze",
|
|
short_label="Bronze",
|
|
is_active=True,
|
|
is_competitive=True,
|
|
)
|
|
routine_skill_1 = RoutineSkill.objects.create(
|
|
routine=routine_1, skill=skill_1, rank=1
|
|
)
|
|
routine_skill_1 = RoutineSkill.objects.create(
|
|
routine=routine_1, skill=skill_2, rank=2
|
|
)
|
|
|
|
def test_max_even_if_none(self):
|
|
self.assertEqual(max_even_if_none(None, None), 0)
|
|
self.assertEqual(max_even_if_none(1, None), 1)
|
|
self.assertEqual(max_even_if_none(1, 2), 2)
|
|
self.assertEqual(max_even_if_none(None, 2), 2)
|
|
|
|
def test_touch_position_to_string(self):
|
|
touch_position = TouchPosition.objects.get(long_label="debout")
|
|
self.assertEqual(str(touch_position), touch_position.long_label)
|
|
|
|
def test_touch_position_get_default_position(self):
|
|
# result =
|
|
pass
|
|
|
|
def test_educative_to_string(self):
|
|
educ_1 = Educative.objects.get(long_label="1/2 vrille")
|
|
self.assertEqual(
|
|
str(educ_1),
|
|
educ_1.long_label
|
|
+ " ("
|
|
+ educ_1.short_label
|
|
+ " - "
|
|
+ str(educ_1.difficulty)
|
|
+ ")",
|
|
)
|
|
|
|
def test_skill_to_string(self):
|
|
skill_1 = Skill.objects.get(long_label="Salto arrière groupé")
|
|
self.assertEqual(
|
|
str(skill_1), skill_1.long_label + " (" + skill_1.notation + ")"
|
|
)
|
|
|
|
def test_routine_to_string(self):
|
|
routine_1 = Routine.objects.get(long_label="BOT Bronze")
|
|
self.assertEqual(
|
|
str(routine_1), routine_1.long_label + " (" + routine_1.short_label + ")"
|
|
)
|
|
|
|
def test_routine_skill_to_string(self):
|
|
routine_1 = Routine.objects.get(long_label="BOT Bronze")
|
|
skill_1 = Skill.objects.get(long_label="Salto arrière groupé")
|
|
routine_skill_1 = RoutineSkill.objects.get(routine=routine_1, skill=skill_1)
|
|
self.assertEqual(
|
|
str(routine_skill_1),
|
|
str(routine_skill_1.rank)
|
|
+ " - "
|
|
+ routine_skill_1.routine.short_label
|
|
+ " : "
|
|
+ routine_skill_1.skill.short_label,
|
|
)
|