summaryrefslogtreecommitdiff
path: root/spec/services/boards
diff options
context:
space:
mode:
authorDouglas Barbosa Alexandre <dbalexandre@gmail.com>2016-07-27 18:46:03 -0300
committerDouglas Barbosa Alexandre <dbalexandre@gmail.com>2016-08-17 12:58:57 -0300
commit247e11c94865b429c400fd9f0d1730c13b0b0c35 (patch)
tree7bbdddafb790d4ca85fb8156a04e932cec8eed99 /spec/services/boards
parenta77aee9369596729c5aab2188fe114000872a05c (diff)
downloadgitlab-ce-247e11c94865b429c400fd9f0d1730c13b0b0c35.tar.gz
Add service to create a board list
Diffstat (limited to 'spec/services/boards')
-rw-r--r--spec/services/boards/lists/create_service_spec.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/services/boards/lists/create_service_spec.rb b/spec/services/boards/lists/create_service_spec.rb
new file mode 100644
index 00000000000..f173b0e60fd
--- /dev/null
+++ b/spec/services/boards/lists/create_service_spec.rb
@@ -0,0 +1,24 @@
+require 'spec_helper'
+
+describe Boards::Lists::CreateService, services: true do
+ describe '#execute' do
+ let(:project) { create(:project_with_board) }
+ let(:board) { project.board }
+ let(:label) { create(:label, name: 'in-progress') }
+
+ it 'creates a new list for board' do
+ service = described_class.new(project, label_id: label.id)
+
+ expect { service.execute }.to change(board.lists, :count).by(1)
+ end
+
+ it 'inserts the list to the end of lists' do
+ create_list(:list, 2, board: board)
+ service = described_class.new(project, label_id: label.id)
+
+ list = service.execute
+
+ expect(list.position).to eq 2
+ end
+ end
+end