|
11 | 11 | from conferences.tests.factories import ConferenceFactory, ConferenceVoucherFactory |
12 | 12 | from grants.admin import ( |
13 | 13 | confirm_pending_status, |
| 14 | + GrantAdmin, |
14 | 15 | GrantReimbursementAdmin, |
15 | 16 | create_grant_vouchers, |
16 | 17 | mark_rejected_and_send_email, |
@@ -703,3 +704,52 @@ def test_delete_reimbursement_from_admin_logs_audit_log_entry(rf, admin_user): |
703 | 704 | object_id=grant.id, |
704 | 705 | change_message=f"Reimbursement removed: {reimbursement.category.name}", |
705 | 706 | ).exists() |
| 707 | + |
| 708 | + |
| 709 | +def test_save_grant_in_admin_logs_audit_log_entry(rf, admin_user): |
| 710 | + grant = GrantFactory() |
| 711 | + request = rf.get("/") |
| 712 | + request.user = admin_user |
| 713 | + |
| 714 | + admin = GrantAdmin(Grant, AdminSite()) |
| 715 | + admin.save_model(request, grant, None, False) |
| 716 | + |
| 717 | + assert LogEntry.objects.filter( |
| 718 | + user=admin_user, |
| 719 | + object_id=grant.id, |
| 720 | + change_message="Grant created", |
| 721 | + ).exists() |
| 722 | + |
| 723 | + |
| 724 | +def test_save_grant_in_admin_logs_audit_log_entry_for_status_change(rf, admin_user): |
| 725 | + grant = GrantFactory(status=Grant.Status.pending) |
| 726 | + request = rf.get("/") |
| 727 | + request.user = admin_user |
| 728 | + |
| 729 | + admin = GrantAdmin(Grant, AdminSite()) |
| 730 | + grant.status = Grant.Status.confirmed |
| 731 | + admin.save_model(request, grant, None, True) |
| 732 | + |
| 733 | + assert LogEntry.objects.filter( |
| 734 | + user=admin_user, |
| 735 | + object_id=grant.id, |
| 736 | + change_message="Status changed from 'pending' to 'confirmed'", |
| 737 | + ).exists() |
| 738 | + |
| 739 | + |
| 740 | +def test_save_grant_in_admin_logs_audit_log_entry_for_pending_status_change( |
| 741 | + rf, admin_user |
| 742 | +): |
| 743 | + grant = GrantFactory(pending_status=Grant.Status.pending) |
| 744 | + request = rf.get("/") |
| 745 | + request.user = admin_user |
| 746 | + |
| 747 | + admin = GrantAdmin(Grant, AdminSite()) |
| 748 | + grant.pending_status = Grant.Status.confirmed |
| 749 | + admin.save_model(request, grant, None, True) |
| 750 | + |
| 751 | + assert LogEntry.objects.filter( |
| 752 | + user=admin_user, |
| 753 | + object_id=grant.id, |
| 754 | + change_message="Pending status changed from 'pending' to 'confirmed'", |
| 755 | + ).exists() |
0 commit comments