mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-11 13:46:11 +10:00
Merge pull request #6586 from abner/master
added api method to return labels of a given project
This commit is contained in:
@@ -621,3 +621,29 @@ Parameters:
|
||||
+ query (required) - A string contained in the project name
|
||||
+ per_page (optional) - number of projects to return per page
|
||||
+ page (optional) - the page to retrieve
|
||||
|
||||
|
||||
## Labels
|
||||
|
||||
### List project labels
|
||||
|
||||
Get a list of project labels.
|
||||
|
||||
```
|
||||
GET /projects/:id/labels
|
||||
```
|
||||
|
||||
Parameters:
|
||||
|
||||
+ `id` (required) - The ID or NAMESPACE/PROJECT_NAME of a project
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"name":"featute"
|
||||
},
|
||||
{
|
||||
"name": "bug"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
@@ -187,5 +187,9 @@ module API
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class Label < Grape::Entity
|
||||
expose :name
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -215,6 +215,17 @@ module API
|
||||
@users = paginate @users
|
||||
present @users, with: Entities::User
|
||||
end
|
||||
|
||||
# Get a project labels
|
||||
#
|
||||
# Parameters:
|
||||
# id (required) - The ID of a project
|
||||
# Example Request:
|
||||
# GET /projects/:id/labels
|
||||
get ':id/labels' do
|
||||
@labels = user_project.issues_labels
|
||||
present @labels, with: Entities::Label
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -13,6 +13,7 @@ describe API::API do
|
||||
let(:snippet) { create(:project_snippet, author: user, project: project, title: 'example') }
|
||||
let(:users_project) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) }
|
||||
let(:users_project2) { create(:users_project, user: user3, project: project, project_access: UsersProject::DEVELOPER) }
|
||||
let(:issue_with_labels) { create(:issue, author: user, assignee: user, project: project, :label_list => "label1, label2") }
|
||||
|
||||
describe "GET /projects" do
|
||||
before { project }
|
||||
@@ -632,4 +633,16 @@ describe API::API do
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/labels" do
|
||||
before { issue_with_labels }
|
||||
|
||||
it "should return project labels" do
|
||||
get api("/projects/#{project.id}/labels", user)
|
||||
response.status.should == 200
|
||||
json_response.should be_an Array
|
||||
json_response.first['name'].should == issue_with_labels.labels.first.name
|
||||
json_response.last['name'].should == issue_with_labels.labels.last.name
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user