64 lines
1.5 KiB
Ruby
64 lines
1.5 KiB
Ruby
# frozen_string_literal: true
|
|
require 'test_helper'
|
|
|
|
class ReviewControllerTest < ActionDispatch::IntegrationTest
|
|
test "should get login" do
|
|
get review_login_url
|
|
assert_response :success
|
|
end
|
|
|
|
test "should require auth or redirect" do
|
|
get review_url
|
|
assert_redirected_to review_login_path
|
|
|
|
get review_test_url(candidates(:richard).test_hash)
|
|
assert_redirected_to review_login_path
|
|
end
|
|
|
|
test "should auth to index" do
|
|
auth_reviewer
|
|
assert_redirected_to admin_path
|
|
assert session[:user].present?
|
|
end
|
|
|
|
test "should fail auth with flash" do
|
|
post review_auth_url, params: { auth:
|
|
{ email: 'fed.review@mailinator.com', password: 'bad-password' } }
|
|
|
|
assert_redirected_to review_login_path
|
|
assert flash[:error]
|
|
end
|
|
|
|
test "should get review list" do
|
|
auth_reviewer
|
|
get review_url
|
|
assert_response :success
|
|
assert assigns(:candidates), '@candidates not present'
|
|
end
|
|
|
|
test "should get index" do
|
|
auth_reviewer
|
|
|
|
get review_url
|
|
assert_response :success
|
|
end
|
|
|
|
test "should get view" do
|
|
auth_reviewer
|
|
|
|
get review_test_url(candidates(:richard).test_hash)
|
|
assert_response :success
|
|
assert assigns(:candidate), "@candidate not present"
|
|
assert assigns(:quiz), "@quiz not present"
|
|
assert assigns(:status), "@status not present"
|
|
end
|
|
|
|
test 'should logout and reset session' do
|
|
auth_reviewer
|
|
get review_logout_path
|
|
|
|
assert :success
|
|
assert session[:user].nil?
|
|
end
|
|
end
|