From 949592df49007497e97333946a7c481b1f14b6f6 Mon Sep 17 00:00:00 2001
From: Calum Mackervoy <c.mackervoy@gmail.com>
Date: Mon, 11 Jan 2021 21:21:47 +0000
Subject: [PATCH] update: no cache on TotalVotes serializer

---
 djangoldp_polls/serializers.py       |  1 +
 djangoldp_polls/tests/tests_votes.py | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/djangoldp_polls/serializers.py b/djangoldp_polls/serializers.py
index 7bf3e45..93cdf90 100644
--- a/djangoldp_polls/serializers.py
+++ b/djangoldp_polls/serializers.py
@@ -5,6 +5,7 @@ from djangoldp_polls.models import PollOption
 
 class PollOptionSerializer(LDPSerializer):
     total_votes = serializers.SerializerMethodField()
+    with_cache = False
 
     class Meta:
         model = PollOption
diff --git a/djangoldp_polls/tests/tests_votes.py b/djangoldp_polls/tests/tests_votes.py
index 5827435..c95ccc0 100644
--- a/djangoldp_polls/tests/tests_votes.py
+++ b/djangoldp_polls/tests/tests_votes.py
@@ -37,6 +37,16 @@ class PermissionsTestCase(APITestCase):
             'chosenOption': {'@id': option.urlid}
         }
 
+    def test_get_total_votes_cache(self):
+        self.setUpPoll()
+        response = self.client.get('/polloptions/{}/'.format(self.poll_option_a.pk))
+        self.assertFalse('total_votes' in response.data)
+
+        response = self.client.get('/polls/total_votes/{}/'.format(self.poll.pk))
+        print(str(response.data))
+        self.assertTrue('total_votes' in response.data['ldp:contains'][0])
+        self.assertTrue('total_votes' in response.data['ldp:contains'][1])
+
     def test_can_vote_view(self):
         # I should be able to vote
         self.setUpPoll()
-- 
GitLab