Implement stargazers (issue #70)

This commit is contained in:
Vincent Jacques
2012-09-08 01:40:22 +02:00
parent 696e198c18
commit 5d67293676
13 changed files with 410 additions and 6 deletions
+42
View File
@@ -173,6 +173,15 @@ class AuthenticatedUser( GithubObject.GithubObject ):
None
)
def add_to_starred( self, starred ):
assert isinstance( starred, Repository.Repository ), starred
headers, data = self._requester.requestAndCheck(
"PUT",
"/user/starred/" + starred._identity,
None,
None
)
def add_to_watched( self, watched ):
assert isinstance( watched, Repository.Repository ), watched
headers, data = self._requester.requestAndCheck(
@@ -496,6 +505,20 @@ class AuthenticatedUser( GithubObject.GithubObject ):
data
)
def get_starred( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"/user/starred",
None,
None
)
return PaginatedList.PaginatedList(
Repository.Repository,
self._requester,
headers,
data
)
def get_starred_gists( self ):
headers, data = self._requester.requestAndCheck(
"GET",
@@ -534,6 +557,16 @@ class AuthenticatedUser( GithubObject.GithubObject ):
)
return status == 204
def has_in_starred( self, starred ):
assert isinstance( starred, Repository.Repository ), starred
status, headers, data = self._requester.requestRaw(
"GET",
"/user/starred/" + starred._identity,
None,
None
)
return status == 204
def has_in_watched( self, watched ):
assert isinstance( watched, Repository.Repository ), watched
status, headers, data = self._requester.requestRaw(
@@ -563,6 +596,15 @@ class AuthenticatedUser( GithubObject.GithubObject ):
None
)
def remove_from_starred( self, starred ):
assert isinstance( starred, Repository.Repository ), starred
headers, data = self._requester.requestAndCheck(
"DELETE",
"/user/starred/" + starred._identity,
None,
None
)
def remove_from_watched( self, watched ):
assert isinstance( watched, Repository.Repository ), watched
headers, data = self._requester.requestAndCheck(
+14
View File
@@ -314,6 +314,20 @@ class NamedUser( GithubObject.GithubObject ):
data
)
def get_starred( self ):
headers, data = self._requester.requestAndCheck(
"GET",
self.url + "/starred",
None,
None
)
return PaginatedList.PaginatedList(
Repository.Repository,
self._requester,
headers,
data
)
def get_watched( self ):
headers, data = self._requester.requestAndCheck(
"GET",
+14
View File
@@ -964,6 +964,20 @@ class Repository( GithubObject.GithubObject ):
data
)
def get_stargazers( self ):
headers, data = self._requester.requestAndCheck(
"GET",
self.url + "/stargazers",
None,
None
)
return PaginatedList.PaginatedList(
NamedUser.NamedUser,
self._requester,
headers,
data
)
def get_tags( self ):
headers, data = self._requester.requestAndCheck(
"GET",