31 lines
870 B
Ruby
31 lines
870 B
Ruby
# frozen_string_literal: true
|
|
require 'test_helper'
|
|
|
|
class QuizCommentPolicyTest < PolicyAssertions::Test
|
|
test 'should require current_user' do
|
|
assert_raise Pundit::NotAuthorizedError do
|
|
QuizCommentPolicy.new(nil, User.first).create?
|
|
end
|
|
end
|
|
|
|
def test_create
|
|
candidate = candidates(:stacy)
|
|
comment = QuizComment.new(test_hash: candidate.test_hash)
|
|
|
|
assert_permit users(:manager), comment
|
|
assert_permit users(:reviewer), comment
|
|
|
|
refute_permit users(:admin), comment
|
|
refute_permit users(:recruiter), comment
|
|
end
|
|
|
|
def test_update
|
|
assert_permit users(:reviewer2), quiz_comments(:com6)
|
|
|
|
refute_permit users(:reviewer), quiz_comments(:com6)
|
|
refute_permit users(:manager), quiz_comments(:com6)
|
|
refute_permit users(:admin), quiz_comments(:com6)
|
|
refute_permit users(:recruiter), quiz_comments(:com6)
|
|
end
|
|
end
|