VRFS-3316 : Review Uniqueness validation and spec.

This commit is contained in:
Steven Miers 2015-07-20 11:29:19 -05:00
parent 91a8b4ab9c
commit 0beb386bea
2 changed files with 16 additions and 1 deletions

View File

@ -6,8 +6,15 @@ module JamRuby
belongs_to :deleted_by_user, foreign_key: 'deleted_by_user_id', class_name: "JamRuby::User"
validates :rating, presence:true, numericality: {only_integer: true, minimum:1, maximum:5}
validates :target, presence:true
validates :user, presence:true
validates :target_id, uniqueness: {scope: :user_id, message: "There is already a review for this User and Target."}
# # @options - can contain values:
# # * target_id (optional)
# def reduce(options)
# arel = Review.where("deleted_at=?", nil)
# end
end
end

View File

@ -35,9 +35,17 @@ describe Review do
end
it "complete" do
review = Review.create(target:target, rating:3, user:@user)
review = Review.create(target:target, rating:3, user:@user)
review.valid?.should be_true
end
it "unique" do
review = Review.create(target:target, rating:3, user:@user)
review.valid?.should be_true
review2 = Review.create(target:target, rating:3, user:@user)
review2.valid?.should be_false
end
end
context "validates review summary" do