summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2016-02-18 10:26:10 +0100
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-02-19 10:04:38 +0100
commit11ed1cbbb7b777a4883af6ec5b79b958881fab67 (patch)
tree306b06789d8b8b9a4a4e7b3129674c494f9ecc43
parenta33b63b7d4f22a467763f6191af5696531d203e6 (diff)
downloadgitlab-ce-11ed1cbbb7b777a4883af6ec5b79b958881fab67.tar.gz
Emoji reponses on diffs aren't award emoji
-rw-r--r--CHANGELOG1
-rw-r--r--app/models/note.rb4
-rw-r--r--app/views/projects/diffs/_text_file.html.haml4
-rw-r--r--spec/models/note_spec.rb9
4 files changed, 14 insertions, 4 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 4fe250efd42..c5eebccdb0e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -65,6 +65,7 @@ v 8.5.0 (unreleased)
- Ability to see and sort on vote count from Issues and MR lists
- Fix builds scheduler when first build in stage was allowed to fail
- User project limit is reached notice is hidden if the projects limit is zero
+ - 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..d0f950d5924 100644
--- a/app/models/note.rb
+++ b/app/models/note.rb
@@ -375,6 +375,10 @@ class Note < ActiveRecord::Base
#
def set_award!
return unless awards_supported? && contains_emoji_only?
+
+ # Responding with an emoji is not an award emoji if its on a diff comment
+ return if line_code
+
self.is_award = true
self.note = award_emoji_name
end
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..7a293490c51 100644
--- a/spec/models/note_spec.rb
+++ b/spec/models/note_spec.rb
@@ -203,11 +203,16 @@ 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")
+ expect(note.reload.note).to eq(":blowfish:")
+ end
end
end