Add reddit refresh token view tests

This commit is contained in:
Sonny Bakker 2020-09-18 21:25:15 +02:00
parent 1fd4b60710
commit eb661b8abc
2 changed files with 49 additions and 2 deletions

View file

@ -1,3 +1,4 @@
from unittest import skip
from unittest.mock import patch
from urllib.parse import urlencode
from uuid import uuid4
@ -122,3 +123,51 @@ class RedditTemplateViewTestCase(TestCase):
self.assertEquals(self.user.reddit_refresh_token, None)
self.assertEquals(cache.get(f"{self.user.email}-reddit-auth"), self.state)
class RedditTokenRedirectViewTestCase(TestCase):
def setUp(self):
self.user = UserFactory(email="test@test.nl", password="test")
self.client.force_login(self.user)
self.patch = patch("newsreader.accounts.views.integrations.RedditTokenTask")
self.mocked_task = self.patch.start()
def tearDown(self):
cache.clear()
def test_simple(self):
response = self.client.get(reverse("accounts:reddit-refresh"))
self.assertRedirects(response, reverse("accounts:integrations"))
self.mocked_task.delay.assert_called_once_with(self.user.pk)
self.assertEquals(1, cache.get(f"{self.user.email}-reddit-refresh"))
def test_not_active(self):
cache.set(f"{self.user.email}-reddit-refresh", 1)
response = self.client.get(reverse("accounts:reddit-refresh"))
self.assertRedirects(response, reverse("accounts:integrations"))
self.mocked_task.delay.assert_not_called()
class RedditRevokeRedirectViewTestCase(TestCase):
@skip("Not implemented")
def test_simple(self):
pass
@skip("Not implemented")
def test_no_refresh_token(self):
pass
@skip("Not implemented")
def test_unsuccessful_response(self):
pass
@skip("Not implemented")
def test_stream_exception(self):
pass

View file

@ -100,7 +100,6 @@ class RedditTemplateView(TemplateView):
)
# TODO add tests
class RedditTokenRedirectView(RedirectView):
url = reverse_lazy("accounts:integrations")
@ -120,7 +119,6 @@ class RedditTokenRedirectView(RedirectView):
return response
# TODO add tests
class RedditRevokeRedirectView(RedirectView):
url = reverse_lazy("accounts:integrations")