Add TwitterRevokeView tests

This commit is contained in:
Sonny Bakker 2020-09-25 21:00:33 +02:00
parent 885a0a52b7
commit ef7997d3bc
2 changed files with 53 additions and 1 deletions

View file

@ -273,3 +273,56 @@ class RedditRevokeRedirectViewTestCase(TestCase):
self.assertEquals(self.user.reddit_access_token, "jadajadajada") self.assertEquals(self.user.reddit_access_token, "jadajadajada")
self.assertEquals(self.user.reddit_refresh_token, "jadajadajada") self.assertEquals(self.user.reddit_refresh_token, "jadajadajada")
class TwitterRevokeRedirectView(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.post")
self.mocked_post = self.patch.start()
def tearDown(self):
patch.stopall()
def test_simple(self):
self.user.twitter_oauth_token = "jadajadajada"
self.user.twitter_oauth_token_secret = "jadajadajada"
self.user.save()
response = self.client.get(reverse("accounts:twitter-revoke"))
self.assertRedirects(response, reverse("accounts:integrations"))
self.user.refresh_from_db()
self.assertIsNone(self.user.twitter_oauth_token)
self.assertIsNone(self.user.twitter_oauth_token_secret)
def test_no_authorized_account(self):
self.user.twitter_oauth_token = None
self.user.twitter_oauth_token_secret = None
self.user.save()
response = self.client.get(reverse("accounts:twitter-revoke"))
self.assertRedirects(response, reverse("accounts:integrations"))
self.mocked_post.assert_not_called()
def test_stream_exception(self):
self.user.twitter_oauth_token = "jadajadajada"
self.user.twitter_oauth_token_secret = "jadajadajada"
self.user.save()
self.mocked_post.side_effect = StreamException
response = self.client.get(reverse("accounts:twitter-revoke"))
self.assertRedirects(response, reverse("accounts:integrations"))
self.user.refresh_from_db()
self.assertEquals(self.user.twitter_oauth_token, "jadajadajada")
self.assertEquals(self.user.twitter_oauth_token_secret, "jadajadajada")

View file

@ -175,7 +175,6 @@ class RedditRevokeRedirectView(RedirectView):
return response return response
# TODO write tests
class TwitterRevokeRedirectView(RedirectView): class TwitterRevokeRedirectView(RedirectView):
url = reverse_lazy("accounts:integrations") url = reverse_lazy("accounts:integrations")