def test_get_request_token(self): """ Test that we get a valid request token. """ token = twitter.get_twitter_request_token() self.assertEqual(token.get_callback_url(), settings.TWITTER_CALLBACK_URL) redirect_url = twitter.get_twitter_redirect_url() args = urlparse.parse_qs(urlparse.urlparse(redirect_url).query) self.assertEqual(token.callback, args["oauth_callback"][0]) response, content = httplib2.Http().request(redirect_url) self.assertEqual(response.status, 200)
def test_get_twitter_redirect_url(self): """ Test that we get a properly signed redirect URL. """ # overwriting settings request_token = oauth2.Token(key="foobar", secret="foobarfoobar") request_token.set_callback(settings.TWITTER_CALLBACK_URL) redirect_url = twitter.get_twitter_redirect_url(request_token) parts = urlparse.urlparse(redirect_url) args = urlparse.parse_qs(parts.query) test_args = {"oauth_token": [request_token.key,], "oauth_callback": ["http://localhost/foobar",]} test_path = "/oauth/authorize" self.assertEqual(args, test_args) self.assertEqual(parts.path, test_path)
def get_redirect_url(self, **kwargs): """ Generate the twitter redirect url """ return twitter.get_twitter_redirect_url()