@@ -187,6 +187,66 @@ def test_process_invitation_letter_request_accomodation_doc_with_no_accommodatio
187187 assert output .pages [0 ].extract_text () == "Thisisasampleticket pdf"
188188
189189
190+ @override_settings (PRETIX_API = "https://pretix/api/" )
191+ def test_process_invitation_letter_request_renders_total_grantee_reimbursement_amount (
192+ mock_ticket_present ,
193+ ):
194+ config = InvitationLetterConferenceConfigFactory ()
195+ InvitationLetterDocumentFactory (
196+ invitation_letter_conference_config = config ,
197+ document = None ,
198+ dynamic_document = {
199+ "header" : {"content" : "header" , "margin" : "0" , "align" : "top-left" },
200+ "footer" : {"content" : "footer" , "margin" : "0" , "align" : "bottom-left" },
201+ "page_layout" : {"margin" : "0" },
202+ "pages" : [
203+ {
204+ "content" : "Reimbursement: {{total_grantee_reimbursement_amount}}"
205+ },
206+ ],
207+ },
208+ )
209+
210+ request = InvitationLetterRequestFactory (
211+ conference = config .conference , nationality = "Italian"
212+ )
213+ mock_ticket_present (request )
214+
215+ grant = GrantFactory (
216+ conference = config .conference ,
217+ user = request .requester ,
218+ )
219+ GrantReimbursementFactory (
220+ grant = grant ,
221+ category__conference = config .conference ,
222+ category__ticket = True ,
223+ granted_amount = Decimal ("100" ),
224+ )
225+ GrantReimbursementFactory (
226+ grant = grant ,
227+ category__conference = config .conference ,
228+ category__travel = True ,
229+ granted_amount = Decimal ("500" ),
230+ )
231+ GrantReimbursementFactory (
232+ grant = grant ,
233+ category__conference = config .conference ,
234+ category__accommodation = True ,
235+ granted_amount = Decimal ("200" ),
236+ )
237+
238+ process_invitation_letter_request (invitation_letter_request_id = request .id )
239+
240+ request .refresh_from_db ()
241+
242+ assert request .status == InvitationLetterRequestStatus .PROCESSED
243+
244+ output = PdfReader (request .invitation_letter .open ())
245+ assert output .get_num_pages () == 2
246+ assert output .pages [0 ].extract_text () == "Reimbursement: 700 \n header\n footer"
247+ assert output .pages [1 ].extract_text () == "Thisisasampleticket pdf"
248+
249+
190250@override_settings (PRETIX_API = "https://pretix/api/" )
191251def test_process_invitation_letter_request_with_doc_only_for_accommodation (
192252 mock_ticket_present ,
0 commit comments