| # Copyright (C) 2010 Google Inc. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| __author__ = 'ade@google.com' |
| |
| import buzz_gae_client |
| import unittest |
| |
| class BuzzGaeClientTest(unittest.TestCase): |
| def test_can_build_client(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| self.assertNotEquals(None, client) |
| |
| def test_can_get_request_token(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| callback_url = 'http://example.com' |
| request_token = client.get_request_token(callback_url) |
| self.assertTrue(request_token['oauth_token'] is not None) |
| self.assertTrue(request_token['oauth_token_secret'] is not None) |
| self.assertEquals(request_token['oauth_callback_confirmed'], 'true') |
| |
| def test_can_generate_authorisation_url(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| callback_url = 'http://example.com' |
| request_token = client.get_request_token(callback_url) |
| authorisation_url = client.generate_authorisation_url(request_token) |
| self.assertTrue(authorisation_url is not None) |
| self.assertTrue(authorisation_url.startswith('https://www.google.com/buzz/api/auth/OAuthAuthorizeToken?scope=')) |
| |
| # TODO(ade) this test can't work outside of the AppEngine environment. Find an equivalent that works. |
| def _test_can_upgrade_tokens(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| callback_url = 'http://example.com' |
| request_token = client.get_request_token(callback_url) |
| oauth_verifier = 'some verifier' |
| |
| consumer_key = 'anonymous' |
| consumer_secret = 'anonymous' |
| usable_token = client.upgrade_to_access_token(request_token, oauth_verifier) |
| self.assertTrue(usable_token is not None) |
| self.assertEquals(consumer_key, usable_token['consumer_key']) |
| self.assertEquals(consumer_secret, usable_token['consumer_secret']) |
| self.assertTrue(usable_token['access_token'] is not None) |
| |
| def test_can_build_apiary_client_with_access_token(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| oauth_parameters = {} |
| oauth_parameters['oauth_token'] = '' |
| oauth_parameters['oauth_token_secret'] = '' |
| oauth_parameters['consumer_key'] = '' |
| oauth_parameters['consumer_secret'] = '' |
| api_client = client.build_api_client(oauth_parameters) |
| self.assertTrue(api_client is not None) |
| |
| def test_can_fetch_activites_from_buzz(self): |
| client = buzz_gae_client.BuzzGaeClient() |
| api_client = client.build_api_client() |
| count = 9 |
| activities = api_client.activities().list(userId='googlebuzz', scope='@self', max_results=count)['items'] |
| self.assertEquals(count, len(activities)) |
| |
| if __name__ == '__main__': |
| unittest.main() |