summaryrefslogtreecommitdiff
path: root/spec/services/boards/issues/list_service_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/boards/issues/list_service_spec.rb')
-rw-r--r--spec/services/boards/issues/list_service_spec.rb21
1 files changed, 16 insertions, 5 deletions
diff --git a/spec/services/boards/issues/list_service_spec.rb b/spec/services/boards/issues/list_service_spec.rb
index d1f854f72bc..72027911e51 100644
--- a/spec/services/boards/issues/list_service_spec.rb
+++ b/spec/services/boards/issues/list_service_spec.rb
@@ -56,12 +56,23 @@ RSpec.describe Boards::Issues::ListService do
it_behaves_like 'issues list service'
end
- context 'when filtering by type' do
- it 'only returns the specified type' do
- issue = create(:labeled_issue, project: project, milestone: m1, labels: [development, p1], issue_type: 'incident')
- params = { board_id: board.id, id: list1.id, issue_types: 'incident' }
+ context 'when filtering' do
+ let_it_be(:incident) { create(:labeled_issue, project: project, milestone: m1, labels: [development, p1], issue_type: 'incident') }
- expect(described_class.new(parent, user, params).execute).to eq [issue]
+ context 'when filtering by type' do
+ it 'only returns the specified type' do
+ params = { board_id: board.id, id: list1.id, issue_types: 'incident' }
+
+ expect(described_class.new(parent, user, params).execute).to eq [incident]
+ end
+ end
+
+ context 'when filtering by negated type' do
+ it 'only returns the specified type' do
+ params = { board_id: board.id, id: list1.id, not: { issue_types: ['issue'] } }
+
+ expect(described_class.new(parent, user, params).execute).to contain_exactly(incident)
+ end
end
end
end