summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2012-09-06 15:31:25 -0400
committerRobert Speicher <rspeicher@gmail.com>2012-09-06 15:31:25 -0400
commit2faa4bba40909778c1732894faf42a0f00e87cc4 (patch)
tree13bc22b348968228cd78dd4d1e0b5d8bdc99fba4
parent3a63f6f31622c5f96ff167b0c8df1367abbf5eda (diff)
downloadgitlab-ce-2faa4bba40909778c1732894faf42a0f00e87cc4.tar.gz
Update Note#upvote? to support emoji voting
-rw-r--r--app/models/note.rb2
-rw-r--r--spec/models/note_spec.rb10
2 files changed, 11 insertions, 1 deletions
diff --git a/app/models/note.rb b/app/models/note.rb
index 711a4ee6935..d8494edd532 100644
--- a/app/models/note.rb
+++ b/app/models/note.rb
@@ -103,7 +103,7 @@ class Note < ActiveRecord::Base
# Returns true if this is an upvote note,
# otherwise false is returned
def upvote?
- note =~ /^\+1/ ? true : false
+ note.start_with?('+1') || note.start_with?(':+1:')
end
end
# == Schema Information
diff --git a/spec/models/note_spec.rb b/spec/models/note_spec.rb
index ffaf442d9a4..dddfd34c499 100644
--- a/spec/models/note_spec.rb
+++ b/spec/models/note_spec.rb
@@ -35,6 +35,16 @@ describe Note do
note = Factory(:note, note: "-1 for this")
note.should_not be_upvote
end
+
+ it "recognizes a +1 emoji as a vote" do
+ note = build(:note, note: ":+1: for this")
+ note.should be_upvote
+ end
+
+ it "recognizes a neutral emoji note" do
+ note = build(:note, note: "I would :+1: this, but I don't want to")
+ note.should_not be_upvote
+ end
end
let(:project) { create(:project) }