test_thread_poll_api.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import json
  2. from django.urls import reverse
  3. from misago.categories.models import Category
  4. from misago.threads import testutils
  5. from misago.users.testutils import AuthenticatedUserTestCase
  6. class ThreadPollApiTestCase(AuthenticatedUserTestCase):
  7. def setUp(self):
  8. super().setUp()
  9. self.category = Category.objects.get(slug='first-category')
  10. self.thread = testutils.post_thread(self.category, poster=self.user)
  11. self.api_link = reverse(
  12. 'misago:api:thread-poll-list', kwargs={
  13. 'thread_pk': self.thread.pk,
  14. }
  15. )
  16. def post(self, url, data=None):
  17. return self.client.post(url, json.dumps(data or {}), content_type='application/json')
  18. def put(self, url, data=None):
  19. return self.client.put(url, json.dumps(data or {}), content_type='application/json')
  20. def mock_poll(self):
  21. self.poll = self.thread.poll = testutils.post_poll(self.thread, self.user)
  22. self.api_link = reverse(
  23. 'misago:api:thread-poll-detail',
  24. kwargs={
  25. 'thread_pk': self.thread.pk,
  26. 'pk': self.poll.pk,
  27. }
  28. )