Skip to content

Commit de2c780

Browse files
committed
Fix litle bugs
1 parent 86453d2 commit de2c780

File tree

5 files changed

+15
-43
lines changed

5 files changed

+15
-43
lines changed

pygithub3/core/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,15 +37,15 @@ def user(self):
3737
return self.config.get('user')
3838

3939
@user.setter
40-
def set_user(self, user):
40+
def user(self, user):
4141
self.config['user'] = user
4242

4343
@property
4444
def repo(self):
4545
return self.config.get('repo')
4646

4747
@repo.setter
48-
def set_repo(self, repo):
48+
def repo(self, repo):
4949
self.config['repo'] = repo
5050

5151
def set_credentials(self, login, password):

pygithub3/requests/__init__.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,6 @@ def clean_body(self):
5858
def clean_uri(self):
5959
return None
6060

61-
@property
62-
def resource(self):
63-
return self.resource
64-
6561
def __getattr__(self, name):
6662
return self.args.get(name)
6763

pygithub3/requests/users/emails.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,24 @@
33

44
import re
55

6-
from . import Request
6+
from . import Request, ValidationError
77

88

99
class List(Request):
1010

11-
uri = 'users/emails'
11+
uri = 'user/emails'
1212

1313

1414
class Add(Request):
1515

1616
uri = 'user/emails'
1717

1818
def clean_body(self):
19-
2019
def is_email(email):
2120
return re.match(r'.*', email) # TODO: email regex ;)
21+
if not self.body:
22+
raise ValidationError("'%s' request needs emails"
23+
% (self.__class__.__name__))
2224

2325
return filter(is_email, self.body)
2426

pygithub3/requests/users/user.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,11 @@ class Update(Request):
2222
resource = User
2323
uri = 'user'
2424
body_schema = (
25-
'name', 'email', 'blog', 'company', 'location','hireable', 'bio')
25+
'name', 'email', 'blog', 'company', 'location', 'hireable', 'bio')
26+
27+
def clean_body(self):
28+
if not self.body:
29+
raise ValidationError("'%s' request needs data. You can use "
30+
"'%s' keys" % (self.__class__.__name__,
31+
self.body_schema))
32+
return self.body

pygithub3/tests/test_errors.py

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,3 @@
11
#!/usr/bin/env python
22
# -*- encoding: utf-8 -*-
33

4-
from unittest import TestCase
5-
from requests.exceptions import HTTPError
6-
from core import client
7-
import errors
8-
import json
9-
10-
class TestErrorsWithoutAuth(TestCase):
11-
"""docstring for TestRequestsLibrary"""
12-
13-
def setUp(self):
14-
self.client = client.Client()
15-
16-
def test_malformed_url(self):
17-
self.assertRaises(HTTPError, self.client.request, 'get', 'fake')
18-
19-
class TestErrorsAuthenticated(TestCase):
20-
"""docstring for TestErrorsAuthenticaed"""
21-
22-
def setUp(self):
23-
self.client = client.Client(
24-
login='pygit',
25-
password='pygithub3'
26-
)
27-
28-
def test_400_parsing_json(self):
29-
data = 'strinf'
30-
self.assertRaises(errors.BadRequest, self.client.request,
31-
'post', 'user/repos', data=data)
32-
33-
def test_400_json_hash(self):
34-
data = json.dumps({'names': 'david'})
35-
with self.assertRaises(errors.UnprocessableEntity) as cm:
36-
self.client.request('post', 'user/repos', data=data)

0 commit comments

Comments
 (0)