diff options
author | Robert Speicher <robert@gitlab.com> | 2016-08-25 18:04:22 +0000 |
---|---|---|
committer | Ruben Davila <rdavila84@gmail.com> | 2016-08-26 11:34:37 -0500 |
commit | d137ce504fa1f9a5098dc63814e5375643f6f226 (patch) | |
tree | ad20469266c99a4d70837cce73bcf89064496020 | |
parent | 32a80b2614b959b970a4b650c2a8886940a60b8c (diff) | |
download | gitlab-ce-d137ce504fa1f9a5098dc63814e5375643f6f226.tar.gz |
Merge branch '21257-label-lists-should-shows-opened-or-closed-issues-with-that-label' into 'master'
Label list shows all issues (opened or closed) with that label
## What does this MR do?
Change the label list to shows all issues (opened or closed) with that label.
## What are the relevant issue numbers?
Closes #21257
See merge request !5991
-rw-r--r-- | CHANGELOG | 8 | ||||
-rw-r--r-- | app/services/boards/issues/list_service.rb | 7 | ||||
-rw-r--r-- | doc/user/project/issue_board.md | 7 | ||||
-rw-r--r-- | spec/services/boards/issues/list_service_spec.rb | 8 |
4 files changed, 20 insertions, 10 deletions
diff --git a/CHANGELOG b/CHANGELOG index a12174a07bf..a465a2904c6 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -65,11 +65,17 @@ v 8.11.2 v 8.11.3 (unreleased) - Don't try to show merge conflict resolution info if a merge conflict contains non-UTF-8 characters -v 8.11.2 (unreleased) +v 8.11.3 (unreleased) + - Label list shows all issues (opened or closed) with that label + +v 8.11.2 - Show "Create Merge Request" widget for push events to fork projects on the source project v 8.11.1 - Pulled due to packaging error. + - Does not halt the GitHub import process when an error occurs + - Fix file links on project page when default view is Files !5933 + - Change using size to use count and caching it for number of group members v 8.11.0 - Use test coverage value from the latest successful pipeline in badge. !5862 diff --git a/app/services/boards/issues/list_service.rb b/app/services/boards/issues/list_service.rb index 435a8c6e681..34efd09ed9f 100644 --- a/app/services/boards/issues/list_service.rb +++ b/app/services/boards/issues/list_service.rb @@ -36,7 +36,12 @@ module Boards end def set_state - params[:state] = list.done? ? 'closed' : 'opened' + params[:state] = + case list.list_type.to_sym + when :backlog then 'opened' + when :done then 'closed' + else 'all' + end end def board_label_ids diff --git a/doc/user/project/issue_board.md b/doc/user/project/issue_board.md index 9df9ed9c9da..cac926b3e28 100644 --- a/doc/user/project/issue_board.md +++ b/doc/user/project/issue_board.md @@ -31,10 +31,9 @@ Below is a table of the definitions used for GitLab's Issue Board. There are three types of lists, the ones you create based on your labels, and two default: -- **Backlog** (default): shows all issues that do not fall in one of the other - lists. Always appears on the very left. -- **Done** (default): shows all closed issues. Always appears on the very right. -- Label list: a list based on a label. It shows all issues with that label. +- **Backlog** (default): shows all opened issues that do not fall in one of the other lists. Always appears on the very left. +- **Done** (default): shows all closed issues that do not fall in one of the other lists. Always appears on the very right. +- Label list: a list based on a label. It shows all opened or closed issues with that label. ![GitLab Issue Board](img/issue_board.png) diff --git a/spec/services/boards/issues/list_service_spec.rb b/spec/services/boards/issues/list_service_spec.rb index f7f45983d26..cf4c5f13635 100644 --- a/spec/services/boards/issues/list_service_spec.rb +++ b/spec/services/boards/issues/list_service_spec.rb @@ -30,7 +30,7 @@ describe Boards::Issues::ListService, services: true do let!(:closed_issue1) { create(:labeled_issue, :closed, project: project, labels: [bug]) } let!(:closed_issue2) { create(:labeled_issue, :closed, project: project, labels: [p3]) } let!(:closed_issue3) { create(:issue, :closed, project: project) } - let!(:closed_issue4) { create(:labeled_issue, :closed, project: project, labels: [p1]) } + let!(:closed_issue4) { create(:labeled_issue, :closed, project: project, labels: [p1, development]) } before do project.team << [user, :developer] @@ -58,15 +58,15 @@ describe Boards::Issues::ListService, services: true do issues = described_class.new(project, user, params).execute - expect(issues).to eq [closed_issue4, closed_issue2, closed_issue3, closed_issue1] + expect(issues).to eq [closed_issue2, closed_issue3, closed_issue1] end - it 'returns opened issues that have label list applied when listing issues from a label list' do + it 'returns opened/closed issues that have label list applied when listing issues from a label list' do params = { id: list1.id } issues = described_class.new(project, user, params).execute - expect(issues).to eq [list1_issue3, list1_issue1, list1_issue2] + expect(issues).to eq [closed_issue4, list1_issue3, list1_issue1, list1_issue2] end end end |