diff options
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/models/note.rb | 3 | ||||
-rw-r--r-- | app/views/projects/diffs/_text_file.html.haml | 4 | ||||
-rw-r--r-- | spec/models/note_spec.rb | 12 |
4 files changed, 15 insertions, 5 deletions
diff --git a/CHANGELOG b/CHANGELOG index f89ded67a3d..11a88588be6 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -72,6 +72,7 @@ v 8.5.0 (unreleased) - Allow existing users to auto link their SAML credentials by logging in via SAML - Make it possible to erase a build (trace, artifacts) using UI and API - Ability to revert changes from a Merge Request or Commit + - Emoji comment on diffs are not award emoji v 8.4.4 - Update omniauth-saml gem to 1.4.2 diff --git a/app/models/note.rb b/app/models/note.rb index 55255d22c2f..b3809ad81e0 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -375,6 +375,7 @@ class Note < ActiveRecord::Base # def set_award! return unless awards_supported? && contains_emoji_only? + self.is_award = true self.note = award_emoji_name end @@ -382,7 +383,7 @@ class Note < ActiveRecord::Base private def awards_supported? - noteable.kind_of?(Issue) || noteable.is_a?(MergeRequest) + (noteable.kind_of?(Issue) || noteable.is_a?(MergeRequest)) && !for_diff_line? end def contains_emoji_only? diff --git a/app/views/projects/diffs/_text_file.html.haml b/app/views/projects/diffs/_text_file.html.haml index 5e835b10e1f..d75e9ef2a49 100644 --- a/app/views/projects/diffs/_text_file.html.haml +++ b/app/views/projects/diffs/_text_file.html.haml @@ -35,8 +35,8 @@ = render "projects/notes/diff_notes_with_reply", notes: comments, line: raw_diff_lines[index].text - if last_line > 0 - = render "projects/diffs/match_line", {line: "", - line_old: last_line, line_new: last_line, bottom: true, new_file: diff_file.new_file} + = render "projects/diffs/match_line", { line: "", + line_old: last_line, line_new: last_line, bottom: true, new_file: diff_file.new_file } - if diff_file.diff.blank? && diff_file.mode_changed? .file-mode-changed diff --git a/spec/models/note_spec.rb b/spec/models/note_spec.rb index 9182b42661d..e6da3724d33 100644 --- a/spec/models/note_spec.rb +++ b/spec/models/note_spec.rb @@ -203,11 +203,19 @@ describe Note, models: true do end describe "set_award!" do - let(:issue) { create :issue } + let(:merge_request) { create :merge_request } it "converts aliases to actual name" do - note = create :note, note: ":+1:", noteable: issue + note = create(:note, note: ":+1:", noteable: merge_request) expect(note.reload.note).to eq("thumbsup") end + + it "is not an award emoji when comment is on a diff" do + note = create(:note, note: ":blowfish:", noteable: merge_request, line_code: "11d5d2e667e9da4f7f610f81d86c974b146b13bd_0_2") + note = note.reload + + expect(note.note).to eq(":blowfish:") + expect(note.is_award?).to be_falsy + end end end |