summaryrefslogtreecommitdiff
path: root/spec/services/merge_requests/merge_service_spec.rb
diff options
context:
space:
mode:
authorValery Sizov <vsv2711@gmail.com>2015-10-01 09:31:48 +0300
committerValery Sizov <vsv2711@gmail.com>2015-10-01 09:45:47 +0300
commit05fdd12fd984ffee0b2c9be3821fbc9a67abc6d4 (patch)
treea9b553865771a2199996c587b38abdc4da9a71ef /spec/services/merge_requests/merge_service_spec.rb
parent2714d5b8147cef39343a1c35ba099ebe6445f5e4 (diff)
downloadgitlab-ce-05fdd12fd984ffee0b2c9be3821fbc9a67abc6d4.tar.gz
Improve error message when merging failsmr_improve_errors_handling
Diffstat (limited to 'spec/services/merge_requests/merge_service_spec.rb')
-rw-r--r--spec/services/merge_requests/merge_service_spec.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/spec/services/merge_requests/merge_service_spec.rb b/spec/services/merge_requests/merge_service_spec.rb
index 7b564d34d7b..7483f51de03 100644
--- a/spec/services/merge_requests/merge_service_spec.rb
+++ b/spec/services/merge_requests/merge_service_spec.rb
@@ -35,5 +35,19 @@ describe MergeRequests::MergeService do
expect(note.note).to include 'Status changed to merged'
end
end
+
+ context "error handling" do
+ let(:service) { MergeRequests::MergeService.new(project, user, {}) }
+
+ it 'saves error if there is an exception' do
+ allow(service).to receive(:repository).and_raise("error")
+
+ allow(service).to receive(:execute_hooks)
+
+ service.execute(merge_request, 'Awesome message')
+
+ expect(merge_request.merge_error).to eq("Something went wrong during merge")
+ end
+ end
end
end