voting requires a comment - completes #102
This commit is contained in:
@ -40,6 +40,19 @@ module Admin
|
||||
assert flash[:success]
|
||||
end
|
||||
|
||||
test "admin can post comment" do
|
||||
auth_admin
|
||||
candidate = candidates(:stacy)
|
||||
|
||||
assert_difference("QuizComment.count") do
|
||||
post admin_create_comment_url(test_hash: candidate.test_hash),
|
||||
params: { quiz_comment: { message: 'this is an admin comment' } }
|
||||
end
|
||||
|
||||
assert_redirected_to admin_result_url(test_hash: candidate.test_hash)
|
||||
assert flash[:success]
|
||||
end
|
||||
|
||||
test "should queue emails on create" do
|
||||
auth_reviewer
|
||||
candidate = candidates(:stacy)
|
||||
|
@ -6,7 +6,7 @@ module Admin
|
||||
include ActiveJob::TestHelper
|
||||
|
||||
test "reviewer can up vote henry" do
|
||||
auth_user users(:reviewer)
|
||||
auth_user users(:reviewer2)
|
||||
henry = candidates(:henry)
|
||||
|
||||
assert_difference("Candidate.find(#{henry.id}).votes.yea.count", 1) do
|
||||
@ -16,7 +16,7 @@ module Admin
|
||||
end
|
||||
|
||||
test "reviewer can down vote henry" do
|
||||
auth_user users(:reviewer)
|
||||
auth_user users(:reviewer2)
|
||||
henry = candidates(:henry)
|
||||
|
||||
assert_difference("Candidate.find(#{henry.id}).votes.nay.count", 1) do
|
||||
@ -26,7 +26,7 @@ module Admin
|
||||
end
|
||||
|
||||
test "reviewer can change vote on henry" do
|
||||
auth_user users(:reviewer)
|
||||
auth_user users(:reviewer2)
|
||||
henry = candidates(:henry)
|
||||
get admin_up_vote_url(henry.test_hash)
|
||||
|
||||
@ -72,5 +72,23 @@ module Admin
|
||||
data = JSON.parse(response.body)
|
||||
assert_match 'requested', data["message"]
|
||||
end
|
||||
|
||||
test "reviewer can only vote after commenting" do
|
||||
auth_user users(:reviewer)
|
||||
henry = candidates(:henry)
|
||||
|
||||
assert_difference("Candidate.find(#{henry.id}).votes.yea.count", 0) do
|
||||
get admin_up_vote_url(henry.test_hash)
|
||||
end
|
||||
|
||||
post admin_create_comment_url(test_hash: henry.test_hash),
|
||||
params: { quiz_comment: { message: 'this is a comment to vote' } }
|
||||
|
||||
assert_difference("Candidate.find(#{henry.id}).votes.yea.count", 1) do
|
||||
get admin_up_vote_url(henry.test_hash)
|
||||
end
|
||||
|
||||
assert_response :success
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user