summaryrefslogtreecommitdiff
path: root/spec/models/concerns/mentionable_spec.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-12-10 15:07:52 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-12-10 15:07:52 +0000
commit27d91a629918e417a9e87825e838209b9ace79c1 (patch)
treee066c3fc84e3011641e662252810cb2c240edb90 /spec/models/concerns/mentionable_spec.rb
parent5e11c9b77cb1b2b77ee29359047b55807afe255d (diff)
downloadgitlab-ce-27d91a629918e417a9e87825e838209b9ace79c1.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/models/concerns/mentionable_spec.rb')
-rw-r--r--spec/models/concerns/mentionable_spec.rb67
1 files changed, 67 insertions, 0 deletions
diff --git a/spec/models/concerns/mentionable_spec.rb b/spec/models/concerns/mentionable_spec.rb
index 6034344d034..883f678b8f5 100644
--- a/spec/models/concerns/mentionable_spec.rb
+++ b/spec/models/concerns/mentionable_spec.rb
@@ -166,6 +166,21 @@ describe Issue, "Mentionable" do
create(:issue, project: project, description: description, author: author)
end
end
+
+ describe '#store_mentions!' do
+ it_behaves_like 'mentions in description', :issue
+ it_behaves_like 'mentions in notes', :issue do
+ let(:note) { create(:note_on_issue) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+
+ describe 'load mentions' do
+ it_behaves_like 'load mentions from DB', :issue do
+ let(:note) { create(:note_on_issue) }
+ let(:mentionable) { note.noteable }
+ end
+ end
end
describe Commit, 'Mentionable' do
@@ -221,4 +236,56 @@ describe Commit, 'Mentionable' do
end
end
end
+
+ describe '#store_mentions!' do
+ it_behaves_like 'mentions in notes', :commit do
+ let(:note) { create(:note_on_commit) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+
+ describe 'load mentions' do
+ it_behaves_like 'load mentions from DB', :commit do
+ let(:note) { create(:note_on_commit) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+end
+
+describe MergeRequest, 'Mentionable' do
+ describe '#store_mentions!' do
+ it_behaves_like 'mentions in description', :merge_request
+ it_behaves_like 'mentions in notes', :merge_request do
+ let(:project) { create(:project) }
+ let(:merge_request) { create(:merge_request, source_project: project, target_project: project) }
+ let(:note) { create(:note_on_merge_request, noteable: merge_request, project: merge_request.project) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+
+ describe 'load mentions' do
+ it_behaves_like 'load mentions from DB', :merge_request do
+ let(:project) { create(:project) }
+ let(:merge_request) { create(:merge_request, source_project: project, target_project: project) }
+ let(:note) { create(:note_on_merge_request, noteable: merge_request, project: merge_request.project) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+end
+
+describe Snippet, 'Mentionable' do
+ describe '#store_mentions!' do
+ it_behaves_like 'mentions in description', :project_snippet
+ it_behaves_like 'mentions in notes', :project_snippet do
+ let(:note) { create(:note_on_project_snippet) }
+ let(:mentionable) { note.noteable }
+ end
+ end
+
+ describe 'load mentions' do
+ it_behaves_like 'load mentions from DB', :project_snippet do
+ let(:note) { create(:note_on_project_snippet) }
+ let(:mentionable) { note.noteable }
+ end
+ end
end