summaryrefslogtreecommitdiffstats
path: root/engagements/tests/test_models.py
blob: f5afbb857d02392a411374c907425d25a4a12944 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import pytest
from django.test import TestCase

from engagements.utils import populate_database


class TestModels(TestCase):
    @classmethod
    def setUpTestData(cls):
        cls.data = populate_database()

    @pytest.mark.django_db
    def test_check_all_dcs(self):
        dscs = self.data.get("sub_instruments")
        self.assertEqual(dscs[0].title, "DSC 1 - Title 1")

    @pytest.mark.django_db
    def test_effort_by_type(self):
        e = self.data["engagements"][0]
        total_planning = sum([x.effort_total_planned_hours() for x in e.effort.filter(effort_type="PLANNING")])
        total_travel = sum([x.effort_total_planned_hours() for x in e.effort.filter(effort_type="TRAVEL")])
        total_regulation = sum([x.effort_total_planned_hours() for x in e.effort.filter(effort_type="REGULATION")])
        assert total_planning == 4.25
        assert total_regulation == 0
        assert total_travel == 1

    @pytest.mark.skip(reason="Not implemented until I get my head round effort calculations")
    def test_total_effort_for_engagement(self):
        e = self.data["engagements"][0]
        assert e.total_effort() == 5.25