summaryrefslogtreecommitdiff
path: root/spec/services/issues/build_service_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/issues/build_service_spec.rb')
-rw-r--r--spec/services/issues/build_service_spec.rb19
1 files changed, 8 insertions, 11 deletions
diff --git a/spec/services/issues/build_service_spec.rb b/spec/services/issues/build_service_spec.rb
index cca7cdbdd2d..76417279923 100644
--- a/spec/services/issues/build_service_spec.rb
+++ b/spec/services/issues/build_service_spec.rb
@@ -10,20 +10,17 @@ describe Issues::BuildService, services: true do
context 'for a single discussion' do
describe '#execute' do
- it 'references the noteable title in the issue title' do
- merge_request = create(:merge_request, title: "Hello world", source_project: project)
- discussion = Discussion.new([create(:note_on_merge_request, project: project, noteable: merge_request)])
- service = described_class.new(project, user, discussion_to_resolve: discussion)
+ let(:merge_request) { create(:merge_request, title: "Hello world", source_project: project) }
+ let(:discussion) { Discussion.new([create(:diff_note_on_merge_request, project: project, noteable: merge_request, note: "Almost done")]) }
+ let(:service) { described_class.new(project, user, merge_request_for_resolving_discussions: merge_request.iid, discussion_to_resolve: discussion.id) }
+ it 'references the noteable title in the issue title' do
issue = service.execute
expect(issue.title).to include('Hello world')
end
it 'adds the note content to the description' do
- discussion = Discussion.new([create(:note_on_merge_request, project: project, note: "Almost done")])
- service = described_class.new(project, user, discussion_to_resolve: discussion)
-
issue = service.execute
expect(issue.description).to include('Almost done')
@@ -33,12 +30,12 @@ describe Issues::BuildService, services: true do
context 'for discussions in a merge request' do
let(:merge_request) { create(:merge_request_with_diff_notes, source_project: project) }
- let(:issue) { described_class.new(project, user, merge_request_for_resolving_discussions: merge_request).execute }
+ let(:issue) { described_class.new(project, user, merge_request_for_resolving_discussions: merge_request.iid).execute }
describe '#items_for_discussions' do
it 'has an item for each discussion' do
create(:diff_note_on_merge_request, noteable: merge_request, project: merge_request.source_project, line_number: 13)
- service = described_class.new(project, user, merge_request_for_resolving_discussions: merge_request)
+ service = described_class.new(project, user, merge_request_for_resolving_discussions: merge_request.iid)
service.execute
@@ -47,7 +44,7 @@ describe Issues::BuildService, services: true do
end
describe '#item_for_discussion' do
- let(:service) { described_class.new(project, user, merge_request_for_resolving_discussions: merge_request) }
+ let(:service) { described_class.new(project, user, merge_request_for_resolving_discussions: merge_request.iid) }
it 'mentions the author of the note' do
discussion = Discussion.new([create(:diff_note_on_merge_request, author: create(:user, username: 'author'))])
@@ -125,7 +122,7 @@ describe Issues::BuildService, services: true do
describe '#execute' do
it 'mentions the merge request in the description' do
- issue = described_class.new(project, user, merge_request_for_resolving_discussions: merge_request).execute
+ issue = described_class.new(project, user, merge_request_for_resolving_discussions: merge_request.iid).execute
expect(issue.description).to include("Review the conversation in #{merge_request.to_reference}")
end