Skip to content
Snippets Groups Projects
Commit c478202e authored by Bob Van Landuyt's avatar Bob Van Landuyt
Browse files

This makes the `Boards::CreateService` more reusable for EE

parent de2d5ce6
No related branches found
No related tags found
No related merge requests found
module Boards
class CreateService < BaseService
def execute
if project.boards.empty?
create_board!
else
project.boards.first
end
create_board! if can_create_board?
end
 
private
 
def can_create_board?
project.boards.size == 0
end
def create_board!
board = project.boards.create
board.lists.create(list_type: :backlog)
board.lists.create(list_type: :closed)
board = project.boards.create(params)
if board.persisted?
board.lists.create(list_type: :backlog)
board.lists.create(list_type: :closed)
end
 
board
end
Loading
Loading
Loading
Loading
@@ -26,6 +26,8 @@ describe Boards::CreateService, services: true do
end
 
it 'does not create a new board' do
expect(service).to receive(:can_create_board?) { false }
expect { service.execute }.not_to change(project.boards, :count)
end
end
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment