Compute the total number of hours spent in a course
This commit is contained in:
parent
63c46f6e6e
commit
a612503bf5
|
@ -330,6 +330,12 @@ class Course(Markdownizable, Temporizable):
|
|||
"""
|
||||
return time_diff(self.hour_begin, self.hour_end)
|
||||
|
||||
@property
|
||||
def total_number_of_hours(self) -> timedelta:
|
||||
"""Retourne le temps total a été consacré à ce cours
|
||||
"""
|
||||
return self.get_number_of_real_occurrences * self.number_of_hours
|
||||
|
||||
@property
|
||||
def get_number_of_planned_occurrences(self):
|
||||
return self.get_total_occurence()
|
||||
|
|
|
@ -73,6 +73,23 @@ class TestCourse(TestCase):
|
|||
|
||||
self.assertEqual(course.get_number_of_real_occurrences, 0)
|
||||
|
||||
def test_total_number_of_hours_should_be_39_times_3(self):
|
||||
"""Vérifie que le nombre total d'heures consacrées est bien égal à 39 séances * 3h
|
||||
|
||||
Remarks:
|
||||
39 séances * 3h = 117h = 4 jours + 21h = timedelta(days=3, seconds=75600) :-)
|
||||
"""
|
||||
course = Course.objects.create(
|
||||
iso_day_number=2,
|
||||
datebegin=datetime(2021, 1, 1),
|
||||
dateend=datetime(2021, 9, 30),
|
||||
hour_begin=time(hour=19, minute=0),
|
||||
hour_end=time(hour=22, minute=0),
|
||||
club=self.club
|
||||
)
|
||||
|
||||
self.assertEqual(course.total_number_of_hours, timedelta(days=4, seconds=75600))
|
||||
|
||||
def test_number_of_real_occurrences_should_be_21(self):
|
||||
course = Course.objects.create(
|
||||
iso_day_number=2,
|
||||
|
|
Loading…
Reference in New Issue