Revision 9532290e
Added by Mikaël Ates over 12 years ago
calebasse/facturation/tests.py | ||
---|---|---|
15 | 15 |
from calebasse.personnes.models import Worker |
16 | 16 |
|
17 | 17 |
from list_acts import list_acts_for_billing_CAMSP, \ |
18 |
list_acts_for_billing_SESSAD |
|
18 |
list_acts_for_billing_SESSAD, list_acts_for_billing_CMPP
|
|
19 | 19 |
|
20 | 20 |
|
21 | 21 |
class FacturationTest(TestCase): |
... | ... | |
180 | 180 |
self.assertEqual(len(rejected[patient_a]), 2) |
181 | 181 |
self.assertEqual(missing_valid_notification, {}) |
182 | 182 |
self.assertEqual(len(selected[patient_a]), 3) |
183 |
|
|
184 |
def test_facturation_cmpp(self): |
|
185 |
service_cmpp = Service.objects.create(name='CMPP') |
|
186 |
|
|
187 |
patient_a = create_patient('a', 'A', service_cmpp, self.creator, date_selected=datetime(2020, 10, 1)) |
|
188 |
acts = [ EventAct.objects.create_patient_appointment(self.creator, 'RDV', patient_a, [self.therapist3], |
|
189 |
self.act_type, service_cmpp, start_datetime=datetime(2020, 10, i, 10, 15), |
|
190 |
end_datetime=datetime(2020, 10, i, 12, 20)) for i in range (1, 32)] |
|
191 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_ACCUEIL') |
|
192 |
automated_validation(datetime(2020, 10, 1), service_cmpp, self.creator) |
|
193 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
194 |
automated_validation(datetime(2020, 10, 2), service_cmpp, self.creator) |
|
195 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
196 |
automated_validation(datetime(2020, 10, 3), service_cmpp, self.creator) |
|
197 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
198 |
automated_validation(datetime(2020, 10, 4), service_cmpp, self.creator) |
|
199 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
200 |
automated_validation(datetime(2020, 10, 5), service_cmpp, self.creator) |
|
201 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
202 |
automated_validation(datetime(2020, 10, 6), service_cmpp, self.creator) |
|
203 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_DIAGNOSTIC') |
|
204 |
automated_validation(datetime(2020, 10, 7), service_cmpp, self.creator) |
|
205 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_TRAITEMENT') |
|
206 |
automated_validation(datetime(2020, 10, 8), service_cmpp, self.creator) |
|
207 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_TRAITEMENT') |
|
208 |
automated_validation(datetime(2020, 10, 9), service_cmpp, self.creator) |
|
209 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_TRAITEMENT') |
|
210 |
for i in range(10, 32): |
|
211 |
automated_validation(datetime(2020, 10, i), service_cmpp, self.creator) |
|
212 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_TRAITEMENT') |
|
213 |
|
|
214 |
acts_2 = [ EventAct.objects.create_patient_appointment(self.creator, 'RDV', patient_a, [self.therapist3], |
|
215 |
self.act_type, service_cmpp, start_datetime=datetime(2020, 11, i, 10, 15), |
|
216 |
end_datetime=datetime(2020, 11, i, 12, 20)) for i in range (1, 31)] |
|
217 |
for i in range(1, 31): |
|
218 |
automated_validation(datetime(2020, 11, i), service_cmpp, self.creator) |
|
219 |
self.assertEqual(patient_a.get_state().state_name, 'CMPP_STATE_TRAITEMENT') |
|
220 |
|
|
221 |
self.assertEqual(get_days_with_acts_not_locked(datetime(2020, 10, 1), datetime(2020, 11, 30)), []) |
|
222 |
|
|
223 |
acts = acts + acts_2 |
|
224 |
|
|
225 |
hct = CmppHealthCareTreatment(patient=patient_a, start_date=datetime(2020, 10, 7), author=self.creator) |
|
226 |
hct.save() |
|
227 |
hct.add_prolongation() |
|
228 |
billing_cmpp = list_acts_for_billing_CMPP(datetime(2020, 11, 30), service_cmpp) |
|
229 |
self.assertEqual(len(billing_cmpp[4][patient_a]), 6) |
|
230 |
self.assertEqual(len(billing_cmpp[5][patient_a]), 40) |
|
231 |
self.assertEqual(len(billing_cmpp[6][patient_a]), 15) |
Also available in: Unified diff
facturation: Add test for the act list for billing at the CMPP.