diff options
author | Long Nguyen <long.polyglot@gmail.com> | 2016-05-05 13:59:09 +0700 |
---|---|---|
committer | Long Nguyen <long.polyglot@gmail.com> | 2016-05-05 13:59:09 +0700 |
commit | 91f693c0c4f1ebb62d78e6c82b833f8a19c4dc62 (patch) | |
tree | 398f06cc73d866bfb006cf1eae33d51eee47b099 | |
parent | f43044cc8abb23f391f635e145b52cf5a54a0058 (diff) | |
download | gitlab-ce-91f693c0c4f1ebb62d78e6c82b833f8a19c4dc62.tar.gz |
Update changelog, improve specs
-rw-r--r-- | CHANGELOG | 2 | ||||
-rw-r--r-- | app/services/issues/move_service.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/move_service_spec.rb | 10 |
3 files changed, 9 insertions, 5 deletions
diff --git a/CHANGELOG b/CHANGELOG index 2d3a9e051e5..27c89a7c1ec 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,7 +1,7 @@ Please view this file on the master branch, on stable branches it's out of date. v 8.8.0 (unreleased) - - Assign labels and milestone to target project when moving issue. !3934 + - Assign labels and milestone to target project when moving issue. !3934 (Long Nguyen) - Remove future dates from contribution calendar graph. - Fix error when visiting commit builds page before build was updated - Add 'l' shortcut to open Label dropdown on issuables and 'i' to create new issue on a project diff --git a/app/services/issues/move_service.rb b/app/services/issues/move_service.rb index fe5df8f18cb..e61628086f0 100644 --- a/app/services/issues/move_service.rb +++ b/app/services/issues/move_service.rb @@ -46,7 +46,7 @@ module Issues project: @new_project, author: @old_issue.author, description: rewrite_content(@old_issue.description) } - new_params = @old_issue.serializable_hash.merge(new_params) + new_params = @old_issue.serializable_hash.symbolize_keys.merge(new_params) CreateService.new(@new_project, @current_user, new_params).execute end diff --git a/spec/services/issues/move_service_spec.rb b/spec/services/issues/move_service_spec.rb index 7399003bd75..c15e26189a5 100644 --- a/spec/services/issues/move_service_spec.rb +++ b/spec/services/issues/move_service_spec.rb @@ -7,9 +7,7 @@ describe Issues::MoveService, services: true do let(:description) { 'Some issue description' } let(:old_project) { create(:project) } let(:new_project) { create(:project) } - let!(:milestone1) do - create(:milestone, project_id: old_project.id, title: 'v9.0') - end + let(:milestone1) { create(:milestone, project_id: old_project.id, title: 'v9.0') } let(:old_issue) do create(:issue, title: title, description: description, @@ -57,6 +55,7 @@ describe Issues::MoveService, services: true do it 'assigns milestone to new issue' do expect(new_issue.reload.milestone.title).to eq 'v9.0' + expect(new_issue.reload.milestone).to eq(milestone2) end it 'assign labels to new issue' do @@ -64,6 +63,11 @@ describe Issues::MoveService, services: true do expect(expected_label_titles).to include 'label1' expect(expected_label_titles).to include 'label2' expect(expected_label_titles.size).to eq 2 + + new_issue.labels.each do |label| + expect(new_project.labels).to include(label) + expect(old_project.labels).not_to include(label) + end end it 'rewrites issue title' do |