summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2019-02-14 10:48:12 +0000
committerRémy Coutable <remy@rymai.me>2019-02-14 10:48:12 +0000
commited7144ad58c32936c902d93da23eeb2159ee0158 (patch)
tree57c9860525d4861c766045dce092b766853125fa
parent8becfd9092df9ecd87c39f2bd7fe61428d1c5242 (diff)
parentcc8b8ec08f176dfdad71f8efdf92ebd512664c3d (diff)
downloadgitlab-ce-ed7144ad58c32936c902d93da23eeb2159ee0158.tar.gz
Merge branch '56694-mark-group-level-labels-in-label-api-as-such' into 'master'
Mark group-level labels in Label API as such. Closes #56694 See merge request gitlab-org/gitlab-ce!25219
-rw-r--r--changelogs/unreleased/56694-mark-group-level-labels-in-label-api-as-such.yml5
-rw-r--r--doc/api/labels.md24
-rw-r--r--lib/api/entities.rb3
-rw-r--r--spec/requests/api/labels_spec.rb5
4 files changed, 28 insertions, 9 deletions
diff --git a/changelogs/unreleased/56694-mark-group-level-labels-in-label-api-as-such.yml b/changelogs/unreleased/56694-mark-group-level-labels-in-label-api-as-such.yml
new file mode 100644
index 00000000000..ae2d9e18e0b
--- /dev/null
+++ b/changelogs/unreleased/56694-mark-group-level-labels-in-label-api-as-such.yml
@@ -0,0 +1,5 @@
+---
+title: 'API: Indicate if label is a project label'
+merge_request: 25219
+author: Robert Schilling
+type: added
diff --git a/doc/api/labels.md b/doc/api/labels.md
index 5b5b04bc1d7..eec55bff294 100644
--- a/doc/api/labels.md
+++ b/doc/api/labels.md
@@ -30,7 +30,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 1,
"subscribed": false,
- "priority": 10
+ "priority": 10,
+ "is_project_label": true
},
{
"id" : 4,
@@ -42,7 +43,8 @@ Example response:
"closed_issues_count": 5,
"open_merge_requests_count": 0,
"subscribed": false,
- "priority": null
+ "priority": null,
+ "is_project_label": true
},
{
"id" : 7,
@@ -54,7 +56,8 @@ Example response:
"closed_issues_count": 3,
"open_merge_requests_count": 1,
"subscribed": false,
- "priority": null
+ "priority": null,
+ "is_project_label": true
},
{
"id" : 8,
@@ -66,7 +69,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 2,
"subscribed": false,
- "priority": null
+ "priority": null,
+ "is_project_label": false
},
{
"id" : 9,
@@ -78,7 +82,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 1,
"subscribed": true,
- "priority": null
+ "priority": null,
+ "is_project_label": true
}
]
```
@@ -116,7 +121,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
- "priority": null
+ "priority": null,
+ "is_project_label": true
}
```
@@ -173,7 +179,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 2,
"subscribed": false,
- "priority": null
+ "priority": null,
+ "is_project_label": true
}
```
@@ -209,7 +216,8 @@ Example response:
"closed_issues_count": 0,
"open_merge_requests_count": 1,
"subscribed": true,
- "priority": null
+ "priority": null,
+ "is_project_label": true
}
```
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index 173e86dfd3b..f3ff7e10eb7 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -1032,6 +1032,9 @@ module API
expose :priority do |label, options|
label.priority(options[:parent])
end
+ expose :is_project_label do |label, options|
+ label.is_a?(::ProjectLabel)
+ end
end
class List < Grape::Entity
diff --git a/spec/requests/api/labels_spec.rb b/spec/requests/api/labels_spec.rb
index 606fa9185d8..518181e4d93 100644
--- a/spec/requests/api/labels_spec.rb
+++ b/spec/requests/api/labels_spec.rb
@@ -22,7 +22,7 @@ describe API::Labels do
expected_keys = %w(
id name color text_color description
open_issues_count closed_issues_count open_merge_requests_count
- subscribed priority
+ subscribed priority is_project_label
)
get api("/projects/#{project.id}/labels", user)
@@ -47,6 +47,7 @@ describe API::Labels do
expect(label1_response['description']).to be_nil
expect(label1_response['priority']).to be_nil
expect(label1_response['subscribed']).to be_falsey
+ expect(label1_response['is_project_label']).to be_truthy
expect(group_label_response['open_issues_count']).to eq(1)
expect(group_label_response['closed_issues_count']).to eq(0)
@@ -57,6 +58,7 @@ describe API::Labels do
expect(group_label_response['description']).to be_nil
expect(group_label_response['priority']).to be_nil
expect(group_label_response['subscribed']).to be_falsey
+ expect(group_label_response['is_project_label']).to be_falsey
expect(priority_label_response['open_issues_count']).to eq(0)
expect(priority_label_response['closed_issues_count']).to eq(0)
@@ -67,6 +69,7 @@ describe API::Labels do
expect(priority_label_response['description']).to be_nil
expect(priority_label_response['priority']).to eq(3)
expect(priority_label_response['subscribed']).to be_falsey
+ expect(priority_label_response['is_project_label']).to be_truthy
end
end