Commit 49516bf8 authored by Toshikazu Ohashi's avatar Toshikazu Ohashi Committed by Sander van Harmelen

Update project users API (#363)

To request on [namespace/project] style
parent 3109bb13
...@@ -265,7 +265,7 @@ func (s *ProjectsService) ListProjectsUsers(pid interface{}, opt *ListProjectUse ...@@ -265,7 +265,7 @@ func (s *ProjectsService) ListProjectsUsers(pid interface{}, opt *ListProjectUse
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
} }
u := fmt.Sprintf("projects/%s/users", project) u := fmt.Sprintf("projects/%s/users", url.QueryEscape(project))
req, err := s.client.NewRequest("GET", u, opt, options) req, err := s.client.NewRequest("GET", u, opt, options)
if err != nil { if err != nil {
......
...@@ -70,6 +70,58 @@ func TestListUserProjects(t *testing.T) { ...@@ -70,6 +70,58 @@ func TestListUserProjects(t *testing.T) {
} }
} }
func ListProjectsUsers_byID(t *testing.T) {
mux, server, client := setup()
defer teardown(server)
mux.HandleFunc("/projects/1", func(w http.ResponseWriter, r *http.Request) {
testURL(t, r, "/projects/1/users")
testMethod(t, r, "GET")
fmt.Fprint(w, `[{"id":1},{"id":2}]`)
})
opt := &ListProjectUserOptions{
ListOptions: ListOptions{2, 3},
Search: String("query"),
}
projects, _, err := client.Projects.ListProjectsUsers(1, opt)
if err != nil {
t.Errorf("Projects.ListProjectsUsers returned error: %v", err)
}
want := []*ProjectUser{{ID: 1}, {ID: 2}}
if !reflect.DeepEqual(want, projects) {
t.Errorf("Projects.ListProjectsUsers returned %+v, want %+v", projects, want)
}
}
func ListProjectsUsers_byName(t *testing.T) {
mux, server, client := setup()
defer teardown(server)
mux.HandleFunc("/projects/", func(w http.ResponseWriter, r *http.Request) {
testURL(t, r, "/projects/namespace%2Fname/users")
testMethod(t, r, "GET")
fmt.Fprint(w, `[{"id":1},{"id":2}]`)
})
opt := &ListProjectUserOptions{
ListOptions: ListOptions{2, 3},
Search: String("query"),
}
projects, _, err := client.Projects.ListProjectsUsers("namespace/name", opt)
if err != nil {
t.Errorf("Projects.ListProjectsUsers returned error: %v", err)
}
want := []*ProjectUser{{ID: 1}, {ID: 2}}
if !reflect.DeepEqual(want, projects) {
t.Errorf("Projects.ListProjectsUsers returned %+v, want %+v", projects, want)
}
}
func TestListOwnedProjects(t *testing.T) { func TestListOwnedProjects(t *testing.T) {
mux, server, client := setup() mux, server, client := setup()
defer teardown(server) defer teardown(server)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment