calebasse/calebasse/agenda/tests.py @ 5385fa7c
| ba34dc24 | Jérôme Schneider | """
|
|
This file demonstrates writing tests using the unittest module. These will pass
|
|||
when you run "manage.py test".
|
|||
Replace this with more appropriate tests for your application.
|
|||
"""
|
|||
| 2619e097 | Mikaël Ates | from datetime import datetime
|
|
| ba34dc24 | Jérôme Schneider | ||
from django.test import TestCase
|
|||
| 3a32be95 | Jérôme Schneider | from django.contrib.auth.models import User
|
|
| 84091f2c | Jérôme Schneider | from datetime import datetime, date
|
|
| 6da3eb09 | Jérôme Schneider | from dateutil import rrule
|
|
| ba34dc24 | Jérôme Schneider | ||
| e39efb4a | Jérôme Schneider | from calebasse.agenda.models import Occurrence, Event
|
|
from calebasse.actes.models import EventAct
|
|||
from calebasse.dossiers.models import PatientRecord
|
|||
| 2619e097 | Mikaël Ates | from calebasse.dossiers.models import create_patient
|
|
| 84091f2c | Jérôme Schneider | from calebasse.ressources.models import ActType, Service, WorkerType
|
|
from calebasse.personnes.models import Worker
|
|||
| ba34dc24 | Jérôme Schneider | ||
| 6da3eb09 | Jérôme Schneider | class EventTest(TestCase):
|
|
| 2619e097 | Mikaël Ates | def setUp(self):
|
|
self.creator = User.objects.create(username='John')
|
|||
| 6da3eb09 | Jérôme Schneider | ||
| 3a32be95 | Jérôme Schneider | def test_create_events(self):
|
|
| e39efb4a | Jérôme Schneider | event = Event.objects.create_event("test 1", 'un test', description='42 42',
|
|
| 6da3eb09 | Jérôme Schneider | start_datetime=datetime(2012, 10, 20, 13), end_datetime=datetime(2012, 10, 20, 14),
|
|
freq=rrule.WEEKLY, count=3)
|
|||
| 3a32be95 | Jérôme Schneider | self.assertEqual(str(event), 'test 1')
|
|
def test_create_appointments(self):
|
|||
| 2619e097 | Mikaël Ates | service_camsp = Service.objects.create(name='CAMSP')
|
|
patient = create_patient('Jean', 'Lepoulpe', service_camsp, self.creator, date_selected=datetime(2020, 10, 5))
|
|||
| 84091f2c | Jérôme Schneider | wtype = WorkerType.objects.create(name='ElDoctor', intervene=True)
|
|
therapist1 = Worker.objects.create(first_name='Bob', last_name='Leponge', type=wtype)
|
|||
therapist2 = Worker.objects.create(first_name='Jean', last_name='Valjean', type=wtype)
|
|||
therapist3 = Worker.objects.create(first_name='Pierre', last_name='PaulJacques', type=wtype)
|
|||
| 3a32be95 | Jérôme Schneider | act_type = ActType.objects.create(name='trepanation')
|
|
service = Service.objects.create(name='CMPP')
|
|||
| 2619e097 | Mikaël Ates | act_event = EventAct.objects.create_patient_appointment(self.creator, 'RDV avec M X', patient,
|
|
| e39efb4a | Jérôme Schneider | [therapist1, therapist2], act_type, service,
|
|
start_datetime=datetime(2020, 10, 2, 7, 15),
|
|||
| 11984ab3 | Jérôme Schneider | end_datetime=datetime(2020, 10, 2, 9, 20),
|
|
freq=rrule.WEEKLY, byweekday=rrule.FR, until=datetime(2040, 10, 2))
|
|||
| 2619e097 | Mikaël Ates | act_event2 = EventAct.objects.create_patient_appointment(self.creator, 'RDV avec M Y', patient, [therapist3],
|
|
| 11984ab3 | Jérôme Schneider | act_type, service, start_datetime=datetime(2020, 10, 2, 10, 15),
|
|
end_datetime=datetime(2020, 10, 2, 12, 20),
|
|||
freq=rrule.WEEKLY, byweekday=rrule.FR, until=datetime(2021, 10, 2))
|
|||
| 2619e097 | Mikaël Ates | self.assertEqual(str(act_event), 'Rdv le 2020-10-02 07:15:00 de Jean Lepoulpe avec Bob Leponge, Jean Valjean pour trepanation (1)')
|
|
| 11984ab3 | Jérôme Schneider | self.assertEqual(
|
|
str(Occurrence.objects.daily_occurrences(datetime(2020, 10, 8), [therapist2])),
|
|||
'[]'
|
|||
)
|
|||
self.assertEqual(
|
|||
str(Occurrence.objects.daily_occurrences(datetime(2020, 10, 9), [therapist2])),
|
|||
| e39efb4a | Jérôme Schneider | '[<Occurrence: RDV avec M X: 2020-10-09T07:15:00>]'
|
|
| 11984ab3 | Jérôme Schneider | )
|
|
self.assertEqual(
|
|||
str(Occurrence.objects.daily_occurrences(datetime(2020, 10, 9), [therapist3])),
|
|||
| e39efb4a | Jérôme Schneider | '[<Occurrence: RDV avec M Y: 2020-10-09T10:15:00>]'
|
|
| 11984ab3 | Jérôme Schneider | )
|
|
| 3a32be95 | Jérôme Schneider | ||
| 84091f2c | Jérôme Schneider | def test_create_holiday(self):
|
|
| e39efb4a | Jérôme Schneider | """docstring for test_create_event"""
|
|
| 84091f2c | Jérôme Schneider | wtype = WorkerType.objects.create(name='ElProfessor', intervene=True)
|
|
user = Worker.objects.create(first_name='Jean-Claude', last_name='Van Damme', type=wtype)
|
|||
event = Event.objects.create_holiday(date(2012, 12, 12), date(2012,12,30),
|
|||
[user], motive='tournage d\'un film')
|
|||
self.assertEqual(str(event), 'Conge')
|
|||
| e39efb4a | Jérôme Schneider | #event = user.event.occurrence_set.all()[0]
|
|
#self.assertEqual(event.end_time - event.start_time, timedelta(0, 7200))
|