This commit is contained in:
r888888888
2013-06-21 17:29:48 -07:00
parent ef2faff245
commit f6510703e0
2 changed files with 35 additions and 9 deletions

View File

@@ -0,0 +1,5 @@
<% if @comment_vote.errors.any? %>
{"success": false, "errors": <%= @comment_vote.errors.full_messages.to_json.html_safe %>}
<% else %>
{"success": true}
<% end %>

View File

@@ -14,18 +14,39 @@ class CommentVotesControllerTest < ActionController::TestCase
CurrentUser.ip_addr = nil
end
should "create a vote" do
assert_difference("CommentVote.count", 1) do
post :create, {:format => "js", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response :success
context "#create.json" do
should "create a vote" do
assert_difference("CommentVote.count", 1) do
post :create, {:format => "json", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response :success
assert_equal("{\"success\": true}", @response.body.strip)
end
end
should "fail silently on errors" do
FactoryGirl.create(:comment_vote, :comment => @comment)
assert_difference("CommentVote.count", 0) do
post :create, {:format => "json", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response 422
assert_equal("{\"errors\":{\"user_id\":[\"have already voted for this comment\"]}}", @response.body.strip)
end
end
end
should "fail silently on errors" do
FactoryGirl.create(:comment_vote, :comment => @comment)
assert_difference("CommentVote.count", 0) do
post :create, {:format => "js", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response :success
context "#create.js" do
should "create a vote" do
assert_difference("CommentVote.count", 1) do
post :create, {:format => "js", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response :success
end
end
should "fail silently on errors" do
FactoryGirl.create(:comment_vote, :comment => @comment)
assert_difference("CommentVote.count", 0) do
post :create, {:format => "js", :comment_id => @comment.id, :score => 1}, {:user_id => @user.id}
assert_response :success
end
end
end
end