Skip to content

Commit b393327

Browse files
authored
Correct redeeming users count in RewardPointRedemptionEvents overview (#2404)
* don't use redemptions_by_user * add redemption_event_list template test
1 parent ba791ab commit b393327

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

evap/rewards/templates/rewards_reward_point_redemption_event_list.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<td>{{ event.date }}</td>
2020
<td>{{ event.redeem_end_date }}</td>
2121
<td>{{ event.name }}</td>
22-
<td><span class="fas fa-user"></span> {{ event.redemptions_by_user|length }}</td>
22+
<td><span class="fas fa-user"></span> {{ event.users_with_redeemed_points|length }}</td>
2323
<td class="d-flex justify-content-end gap-1">
2424
<a href="{% url 'rewards:reward_point_redemption_event_export' event.id %}" class="btn btn-sm btn-primary" data-bs-toggle="tooltip" data-bs-placement="top" title="{% translate 'Export Redemptions' %}"><span class="fas fa-download"></span></a>
2525
<a href="{% url 'rewards:reward_point_redemption_event_edit' event.id %}" class="btn btn-sm btn-secondary" data-bs-toggle="tooltip" data-bs-placement="top" title="{% translate 'Edit' %}"><span class="fas fa-pencil"></span></a>

evap/rewards/tests/test_views.py

+22-3
Original file line numberDiff line numberDiff line change
@@ -119,11 +119,30 @@ class TestEventsView(WebTestStaffModeWith200Check):
119119
url = reverse("rewards:reward_point_redemption_events")
120120

121121
@classmethod
122-
def setUpTestData(cls):
123-
cls.test_users = [make_manager()]
122+
def setUpTestData(cls) -> None:
123+
cls.manager = make_manager()
124+
cls.test_users = [cls.manager]
124125

126+
cls.redemption_event1 = baker.make(RewardPointRedemptionEvent, redeem_end_date=date.today() + timedelta(days=1))
125127
baker.make(RewardPointRedemptionEvent, redeem_end_date=date.today() + timedelta(days=1))
126-
baker.make(RewardPointRedemptionEvent, redeem_end_date=date.today() + timedelta(days=1))
128+
129+
def test_redemption_event_list(self) -> None:
130+
quantity = 2
131+
baker.make(
132+
RewardPointRedemption,
133+
event=self.redemption_event1,
134+
value=1,
135+
_quantity=quantity,
136+
)
137+
response = self.app.get(self.url, user=self.test_users[0])
138+
139+
self.assertInHTML(
140+
f'<td>{self.redemption_event1.name}</td><td><span class="fas fa-user"></span>{quantity}</td>', response.text
141+
)
142+
self.assertContains(response, str(self.redemption_event1.redeem_end_date))
143+
self.assertContains(response, str(self.redemption_event1.date))
144+
145+
self.assertInHTML('<td><span class="fas fa-user"></span>0</td>', response.text)
127146

128147

129148
class TestEventCreateView(WebTestStaffMode):

0 commit comments

Comments
 (0)