Skip to content

Commit a08a214

Browse files
committed
Fix tests after refactoring the review admin
1 parent 7abc975 commit a08a214

File tree

1 file changed

+20
-68
lines changed

1 file changed

+20
-68
lines changed

backend/reviews/tests/test_admin.py

Lines changed: 20 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -184,13 +184,8 @@ def test_grants_review_scores(rf, scores, avg):
184184
score=all_scores[-1],
185185
)
186186

187-
request = rf.get("/")
188-
request.user = users[5]
189-
190-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
191-
response = admin._review_grants_recap_view(request, review_session)
192-
context_data = response.context_data
193-
items = context_data["items"]
187+
adapter = get_review_adapter(review_session)
188+
items = adapter.get_recap_items_queryset(review_session).all()
194189
grant_to_check = next(item for item in items if item.id == grant_1.id)
195190

196191
assert grant_to_check.id == grant_1.id
@@ -403,9 +398,7 @@ def test_review_start_view(rf, mocker):
403398
)
404399

405400

406-
def test_save_review_grants_updates_grant_and_creates_reimbursements(rf, mocker):
407-
mock_messages = mocker.patch("reviews.admin.messages")
408-
401+
def test_save_review_grants_updates_grant_and_creates_reimbursements(rf):
409402
user = UserFactory(is_staff=True, is_superuser=True)
410403
conference = ConferenceFactory()
411404

@@ -460,15 +453,8 @@ def test_save_review_grants_updates_grant_and_creates_reimbursements(rf, mocker)
460453
request = rf.post("/", data=post_data)
461454
request.user = user
462455

463-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
464-
response = admin._review_grants_recap_view(request, review_session)
465-
466-
# Should redirect after successful save
467-
assert response.status_code == 302
468-
assert (
469-
response.url
470-
== f"/admin/reviews/reviewsession/{review_session.id}/review/recap/"
471-
)
456+
adapter = get_review_adapter(review_session)
457+
adapter.process_recap_post(request, review_session)
472458

473459
# Refresh grants from database
474460
grant_1.refresh_from_db()
@@ -517,14 +503,8 @@ def test_save_review_grants_updates_grant_and_creates_reimbursements(rf, mocker)
517503
change_message=f"[Review Session] Reimbursement {accommodation_category.name} added.",
518504
).exists()
519505

520-
mock_messages.success.assert_called_once()
521-
522-
523-
def test_save_review_grants_update_grants_status_to_rejected_removes_reimbursements(
524-
rf, mocker
525-
):
526-
mocker.patch("reviews.admin.messages")
527506

507+
def test_save_review_grants_update_grants_status_to_rejected_removes_reimbursements(rf):
528508
user = UserFactory(is_staff=True, is_superuser=True)
529509
conference = ConferenceFactory()
530510

@@ -581,15 +561,9 @@ def test_save_review_grants_update_grants_status_to_rejected_removes_reimburseme
581561
request = rf.post("/", data=post_data)
582562
request.user = user
583563

584-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
585-
response = admin._review_grants_recap_view(request, review_session)
564+
adapter = get_review_adapter(review_session)
565+
adapter.process_recap_post(request, review_session)
586566

587-
# Should redirect after successful save
588-
assert response.status_code == 302
589-
assert (
590-
response.url
591-
== f"/admin/reviews/reviewsession/{review_session.id}/review/recap/"
592-
)
593567
grant_1.refresh_from_db()
594568

595569
assert grant_1.pending_status == Grant.Status.rejected
@@ -605,9 +579,7 @@ def test_save_review_grants_update_grants_status_to_rejected_removes_reimburseme
605579
).exists()
606580

607581

608-
def test_save_review_grants_modify_reimbursements(rf, mocker):
609-
mocker.patch("reviews.admin.messages")
610-
582+
def test_save_review_grants_modify_reimbursements(rf):
611583
user = UserFactory(is_staff=True, is_superuser=True)
612584
conference = ConferenceFactory()
613585

@@ -664,15 +636,8 @@ def test_save_review_grants_modify_reimbursements(rf, mocker):
664636
request = rf.post("/", data=post_data)
665637
request.user = user
666638

667-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
668-
response = admin._review_grants_recap_view(request, review_session)
669-
670-
# Should redirect after successful save
671-
assert response.status_code == 302
672-
assert (
673-
response.url
674-
== f"/admin/reviews/reviewsession/{review_session.id}/review/recap/"
675-
)
639+
adapter = get_review_adapter(review_session)
640+
adapter.process_recap_post(request, review_session)
676641

677642
grant_1.refresh_from_db()
678643

@@ -702,12 +667,9 @@ def test_save_review_grants_modify_reimbursements(rf, mocker):
702667
).exists()
703668

704669

705-
def test_save_review_grants_waiting_list_does_not_create_reimbursments(rf, mocker):
706-
mock_messages = mocker.patch("reviews.admin.messages")
707-
670+
def test_save_review_grants_waiting_list_does_not_create_reimbursements(rf):
708671
user = UserFactory(is_staff=True, is_superuser=True)
709672
conference = ConferenceFactory()
710-
711673
# Create reimbursement categories
712674
travel_category = GrantReimbursementCategoryFactory(
713675
conference=conference,
@@ -754,15 +716,8 @@ def test_save_review_grants_waiting_list_does_not_create_reimbursments(rf, mocke
754716
request = rf.post("/", data=post_data)
755717
request.user = user
756718

757-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
758-
response = admin._review_grants_recap_view(request, review_session)
759-
760-
# Should redirect after successful save
761-
assert response.status_code == 302
762-
assert (
763-
response.url
764-
== f"/admin/reviews/reviewsession/{review_session.id}/review/recap/"
765-
)
719+
adapter = get_review_adapter(review_session)
720+
adapter.process_recap_post(request, review_session)
766721

767722
# Refresh grants from database
768723
grant_1.refresh_from_db()
@@ -779,16 +734,13 @@ def test_save_review_grants_waiting_list_does_not_create_reimbursments(rf, mocke
779734
# Verify log entries were created
780735
assert (
781736
LogEntry.objects.filter(object_id=grant_1.id).count() == 1
782-
) # 1 pending_status change, 2 reimbursement additions
737+
) # 1 pending_status change
783738
assert (
784739
LogEntry.objects.filter(object_id=grant_2.id).count() == 1
785-
) # 1 pending_status change, 3 reimbursement additions
786-
mock_messages.success.assert_called_once()
740+
) # 1 pending_status change
787741

788742

789-
def test_save_review_grants_two_times_does_not_create_duplicate_log_entries(rf, mocker):
790-
mocker.patch("reviews.admin.messages")
791-
743+
def test_save_review_grants_two_times_does_not_create_duplicate_log_entries(rf):
792744
user = UserFactory(is_staff=True, is_superuser=True)
793745
conference = ConferenceFactory()
794746

@@ -830,9 +782,9 @@ def test_save_review_grants_two_times_does_not_create_duplicate_log_entries(rf,
830782
request = rf.post("/", data=post_data)
831783
request.user = user
832784

833-
admin = ReviewSessionAdmin(ReviewSession, AdminSite())
834-
admin._review_grants_recap_view(request, review_session) # First save
835-
admin._review_grants_recap_view(request, review_session) # Second save
785+
adapter = get_review_adapter(review_session)
786+
adapter.process_recap_post(request, review_session) # First save
787+
adapter.process_recap_post(request, review_session) # Second save
836788

837789
grant_1.refresh_from_db()
838790

0 commit comments

Comments
 (0)