diff options
author | 2011-11-14 00:46:46 +0100 | |
---|---|---|
committer | 2011-11-14 00:47:24 +0100 | |
commit | 0664d60525f03ba5cbeee080b3d69a4f79bd249a (patch) | |
tree | 57016551b9a78823423df61f9d6ee3d5499765be /github3/tests/user_handler_test.py | |
parent | Added user and limit in all User handler methods (diff) | |
download | python-github3-0664d60525f03ba5cbeee080b3d69a4f79bd249a.tar.xz python-github3-0664d60525f03ba5cbeee080b3d69a4f79bd249a.zip |
Complete anonymous User handler test
Diffstat (limited to 'github3/tests/user_handler_test.py')
-rw-r--r-- | github3/tests/user_handler_test.py | 84 |
1 files changed, 80 insertions, 4 deletions
diff --git a/github3/tests/user_handler_test.py b/github3/tests/user_handler_test.py index 9eb3708..ef57925 100644 --- a/github3/tests/user_handler_test.py +++ b/github3/tests/user_handler_test.py @@ -5,10 +5,17 @@ from unittest import TestCase from mock import Mock, patch from github3 import api from fixtures import * -from github3.models.user import User, AuthUser +from github3.models import User, AuthUser, Repo, Gist, Org from github3.exceptions import * +class TestAuthUserHandler(TestCase): + """ Test private api about user logged """ + + def setUp(self): + pass + + class TestUserHandler(TestCase): """ Test public api about users """ @@ -51,8 +58,77 @@ class TestUserHandler(TestCase): @patch.object(api.Github, '_request') def test_get_followers(self, request): response = request.return_value - response.headers = {'link': GET_LINK} # 5 pages - response.content = self.gh._parser.dumps(GET_FOLLOWERS) + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_USERS) # 2 users followers = list(self.handler.get_followers('test')) + request.assert_called_with('GET', 'users/test/followers', page=5) self.assertIsInstance(followers[0], User) - pass + self.assertEquals(len(followers), 10) + followers = list(self.handler.get_followers('test', limit=2)) + self.assertEquals(len(followers), 2) + self.assertEquals(followers[0].login, 'octocat') + + @patch.object(api.Github, '_request') + def test_get_following(self, request): + response = request.return_value + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_USERS) # 2 users + following = list(self.handler.get_following('test')) + request.assert_called_with('GET', 'users/test/following', page=5) + self.assertIsInstance(following[0], User) + self.assertEquals(len(following), 10) + following = list(self.handler.get_following('test', limit=2)) + self.assertEquals(len(following), 2) + + @patch.object(api.Github, '_request') + def test_get_repos(self, request): + response = request.return_value + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_REPOS) # 1 repo + repos = list(self.handler.get_repos('test')) + request.assert_called_with('GET', 'users/test/repos', page=5) + self.assertIsInstance(repos[0], Repo) + self.assertEquals(len(repos), 5) + repos = list(self.handler.get_repos('test', limit=2)) + self.assertEquals(len(repos), 2) + self.assertIsInstance(repos[0].owner, User) + + @patch.object(api.Github, '_request') + def test_get_watched(self, request): + response = request.return_value + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_REPOS) # 1 repo + watched = list(self.handler.get_watched('test')) + request.assert_called_with('GET', 'users/test/watched', page=5) + self.assertIsInstance(watched[0], Repo) + self.assertEquals(len(watched), 5) + watched = list(self.handler.get_watched('test', limit=2)) + self.assertEquals(len(watched), 2) + + @patch.object(api.Github, '_request') + def test_get_orgs(self, request): + response = request.return_value + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_ORGS) # 1 repo + orgs = list(self.handler.get_orgs('test')) + request.assert_called_with('GET', 'users/test/orgs', page=5) + self.assertIsInstance(orgs[0], Org) + self.assertEquals(len(orgs), 5) + orgs = list(self.handler.get_orgs('test', limit=2)) + self.assertEquals(len(orgs), 2) + self.assertEquals(orgs[0].login, 'github') + + @patch.object(api.Github, '_request') + def test_get_gists(self, request): + response = request.return_value + response.headers = {'link': GET_LINK} + response.content = self.gh._parser.dumps(GET_SHORT_GISTS) # 1 repo + gists = list(self.handler.get_gists('test')) + request.assert_called_with('GET', 'users/test/gists', page=5) + self.assertIsInstance(gists[0], Gist) + self.assertEquals(len(gists), 5) + gists = list(self.handler.get_gists('test', limit=2)) + self.assertEquals(len(gists), 2) + self.assertIsInstance(gists[0].files, dict) + from github3.models.gists import File + self.assertIsInstance(gists[0].files['ring.erl'], File) |