Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit1a6e62d

Browse files
committed
More tests!
1 parent826f7f0 commit1a6e62d

File tree

4 files changed

+74
-4
lines changed

4 files changed

+74
-4
lines changed

‎github3/github.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ def create_gist(self, description, files, public=True):
102102
json=self._json(self._post(url,dumps(new_gist)),201)
103103
returnGist(json,self)ifjsonelseNone
104104

105+
@requires_auth
105106
defcreate_issue(self,
106107
owner,
107108
repository,
@@ -165,6 +166,7 @@ def create_key(self, title, key):
165166
created=Key(json,self)
166167
returncreated
167168

169+
@requires_auth
168170
defcreate_repo(self,
169171
name,
170172
description='',
@@ -217,6 +219,7 @@ def delete_key(self, key_id):
217219
returnkey.delete()
218220
returnFalse# (No coverage)
219221

222+
@requires_auth
220223
deffollow(self,login):
221224
"""Make the authenticated user follow login.
222225

‎mock_tests/json/key

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"url": "https://api.github.com/user/keys/4", "verified": true, "id": 495863, "key": "...", "title": "key"}

‎mock_tests/test_github.py

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66

77

88
classTestGitHub(TestCase):
9+
# This is needed due to the structure of @patch_request
10+
__name__='TestGitHub'
11+
912
defsetUp(self):
1013
self.g=github3.GitHub()
1114

@@ -42,10 +45,11 @@ def test_create_gist(self, request):
4245
expect(g).isinstance(github3.gists.Gist)
4346
assertrequest.calledisTrue
4447

45-
@patch_request
48+
@patch_request('post')
4649
deftest_create_issue(self,request):
4750
request.return_value=generate_response('issue',201)
4851

52+
self.g.login('user','password')
4953
i=self.g.create_issue(None,None,None)
5054
assertiisNone
5155
assertrequest.calledisFalse
@@ -55,8 +59,67 @@ def test_create_issue(self, request):
5559
assertrequest.calledisFalse
5660

5761
withpatch.object(github3.GitHub,'repository')asrepo:
58-
repo.return_value=github3.repos.Repository(load(path('repo')))
62+
repo.return_value=github3.repos.Repository(load(path('repo')),
63+
self.g)
5964
i=self.g.create_issue('user','repo','Title')
6065

6166
expect(i).isinstance(github3.issues.Issue)
6267
assertrequest.calledisTrue
68+
69+
@patch_request
70+
deftest_create_key(self,request):
71+
request.return_value=generate_response('key',201)
72+
73+
k=self.g.create_key(None,None)
74+
assertkisNone
75+
assertrequest.calledisFalse
76+
77+
self.g.login('user','password')
78+
k=self.g.create_key('Name','Key')
79+
expect(k).isinstance(github3.users.Key)
80+
assertrequest.calledisTrue
81+
82+
@patch_request
83+
deftest_create_repo(self,request):
84+
request.return_value=generate_response('repository',201)
85+
self.g.login('user','password')
86+
r=self.g.create_repo('Repository')
87+
expect(r).isinstance(github3.repos.Repository)
88+
assertrequest.calledisTrue
89+
90+
@patch_request
91+
deftest_delete_key(self,request):
92+
request.return_value=generate_response(None,204)
93+
94+
self.g.login('user','password')
95+
withpatch.object(github3.github.GitHub,'key')askey:
96+
key.return_value=github3.users.Key(load(path('key')),self.g)
97+
assertself.g.delete_key(10)isTrue
98+
99+
assertrequest.calledisTrue
100+
101+
@patch_request
102+
deftest_follow(self,request):
103+
request.return_value=generate_response(None,204)
104+
105+
withexpect.raises(github3.GitHubError):
106+
self.g.follow('sigmavirus24')
107+
108+
self.g.login('user','password')
109+
assertself.g.follow(None)isFalse
110+
assertself.g.follow('sigmavirus24')isTrue
111+
assertrequest.calledisTrue
112+
113+
@patch_request
114+
deftest_key(self,request):
115+
request.return_value=generate_response('key')
116+
117+
withexpect.raises(github3.GitHubError):
118+
self.g.key(10)
119+
120+
self.g.login('user','password')
121+
assertself.g.key(-1)isNone
122+
assertrequest.calledisFalse
123+
124+
expect(self.g.key(10)).isinstance(github3.users.Key)
125+
assertrequest.calledisTrue

‎mock_tests/utils.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,11 @@ def generate_response(path_name, status_code=200, encoding='utf-8'):
88
r=requests.Response()
99
r.status_code=status_code
1010
r.encoding=encoding
11-
content=path(path_name)
12-
r.raw=BytesIO(content.read().encode())
11+
ifpath_name:
12+
content=path(path_name)
13+
r.raw=BytesIO(content.read().encode())
14+
else:
15+
r.raw=BytesIO()
1316
returnr
1417

1518

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp