Update Boards::Lists::MoveService to move lists inside a specific board

parent af87cf7c
...@@ -2,6 +2,7 @@ module Boards ...@@ -2,6 +2,7 @@ module Boards
module Lists module Lists
class MoveService < Boards::BaseService class MoveService < Boards::BaseService
def execute(list) def execute(list)
@board = list.board
@old_position = list.position @old_position = list.position
@new_position = params[:position] @new_position = params[:position]
...@@ -16,7 +17,7 @@ module Boards ...@@ -16,7 +17,7 @@ module Boards
private private
attr_reader :old_position, :new_position attr_reader :board, :old_position, :new_position
def valid_move? def valid_move?
new_position.present? && new_position != old_position && new_position.present? && new_position != old_position &&
......
...@@ -2,16 +2,16 @@ require 'spec_helper' ...@@ -2,16 +2,16 @@ require 'spec_helper'
describe Boards::Lists::MoveService, services: true do describe Boards::Lists::MoveService, services: true do
describe '#execute' do describe '#execute' do
let(:project) { create(:project_with_board) } let(:project) { create(:empty_project) }
let(:board) { project.board } let(:board) { create(:board, project: project) }
let(:user) { create(:user) } let(:user) { create(:user) }
let!(:backlog) { project.board.backlog_list } let!(:backlog) { create(:backlog_list, board: board) }
let!(:planning) { create(:list, board: board, position: 0) } let!(:planning) { create(:list, board: board, position: 0) }
let!(:development) { create(:list, board: board, position: 1) } let!(:development) { create(:list, board: board, position: 1) }
let!(:review) { create(:list, board: board, position: 2) } let!(:review) { create(:list, board: board, position: 2) }
let!(:staging) { create(:list, board: board, position: 3) } let!(:staging) { create(:list, board: board, position: 3) }
let!(:done) { project.board.done_list } let!(:done) { create(:done_list, board: board) }
context 'when list type is set to label' do context 'when list type is set to label' do
it 'keeps position of lists when new position is nil' do it 'keeps position of lists when new position is nil' do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment