@ -6,6 +6,7 @@
package github
package github
import (
import (
"encoding/json"
"fmt"
"fmt"
"net/http"
"net/http"
"reflect"
"reflect"
@ -18,6 +19,7 @@ func TestRepositoriesService_ListCollaborators(t *testing.T) {
mux . HandleFunc ( "/repos/o/r/collaborators" , func ( w http . ResponseWriter , r * http . Request ) {
mux . HandleFunc ( "/repos/o/r/collaborators" , func ( w http . ResponseWriter , r * http . Request ) {
testMethod ( t , r , "GET" )
testMethod ( t , r , "GET" )
testHeader ( t , r , "Accept" , mediaTypeOrgPermissionPreview )
testFormValues ( t , r , values { "page" : "2" } )
testFormValues ( t , r , values { "page" : "2" } )
fmt . Fprintf ( w , ` [ { "id":1}, { "id":2}] ` )
fmt . Fprintf ( w , ` [ { "id":1}, { "id":2}] ` )
} )
} )
@ -86,19 +88,29 @@ func TestRepositoriesService_AddCollaborator(t *testing.T) {
setup ( )
setup ( )
defer teardown ( )
defer teardown ( )
opt := & RepositoryAddCollaboratorOptions { Permission : "admin" }
mux . HandleFunc ( "/repos/o/r/collaborators/u" , func ( w http . ResponseWriter , r * http . Request ) {
mux . HandleFunc ( "/repos/o/r/collaborators/u" , func ( w http . ResponseWriter , r * http . Request ) {
v := new ( RepositoryAddCollaboratorOptions )
json . NewDecoder ( r . Body ) . Decode ( v )
testMethod ( t , r , "PUT" )
testMethod ( t , r , "PUT" )
testHeader ( t , r , "Accept" , mediaTypeOrgPermissionPreview )
if ! reflect . DeepEqual ( v , opt ) {
t . Errorf ( "Request body = %+v, want %+v" , v , opt )
}
w . WriteHeader ( http . StatusNoContent )
w . WriteHeader ( http . StatusNoContent )
} )
} )
_ , err := client . Repositories . AddCollaborator ( "o" , "r" , "u" )
_ , err := client . Repositories . AddCollaborator ( "o" , "r" , "u" , opt )
if err != nil {
if err != nil {
t . Errorf ( "Repositories.AddCollaborator returned error: %v" , err )
t . Errorf ( "Repositories.AddCollaborator returned error: %v" , err )
}
}
}
}
func TestRepositoriesService_AddCollaborator_invalidUser ( t * testing . T ) {
func TestRepositoriesService_AddCollaborator_invalidUser ( t * testing . T ) {
_ , err := client . Repositories . AddCollaborator ( "%" , "%" , "%" )
_ , err := client . Repositories . AddCollaborator ( "%" , "%" , "%" , nil )
testURLParseError ( t , err )
testURLParseError ( t , err )
}
}