notes: disallow blank note bodies.

This commit is contained in:
evazion
2017-04-28 19:34:27 -05:00
parent 641f56dc2a
commit a3ecfdb79d
2 changed files with 8 additions and 6 deletions

View File

@@ -8,8 +8,7 @@ class Note < ActiveRecord::Base
has_many :versions, lambda {order("note_versions.id ASC")}, :class_name => "NoteVersion", :dependent => :destroy
before_validation :initialize_creator, :on => :create
before_validation :initialize_updater
before_validation :blank_body
validates_presence_of :post_id, :creator_id, :updater_id, :x, :y, :width, :height
validates_presence_of :post_id, :creator_id, :updater_id, :x, :y, :width, :height, :body
validate :post_must_exist
validate :note_within_image
after_save :update_post
@@ -124,10 +123,6 @@ class Note < ActiveRecord::Base
Post.exists?(["id = ? AND is_note_locked = ?", post_id, true])
end
def blank_body
self.body = "(empty)" if body.blank?
end
def creator_name
User.id_to_name(creator_id).tr("_", " ")
end

View File

@@ -67,6 +67,13 @@ class NoteTest < ActiveSupport::TestCase
assert_equal(["Post must exist"], @note.errors.full_messages)
end
should "not validate if the body is blank" do
@note = FactoryGirl.build(:note, body: " ")
assert_equal(false, @note.valid?)
assert_equal(["Body can't be blank"], @note.errors.full_messages)
end
should "create a version" do
assert_difference("NoteVersion.count", 1) do
Timecop.travel(1.day.from_now) do