# frozen_string_literal: true require 'test_helper' class RecruiterControllerTest < ActionDispatch::IntegrationTest test "should get login" do get recruiter_login_url assert_response :success end test 'should logout and reset session' do auth_recruiter get recruiter_logout_path assert :success assert session[:user].nil? end test "should require auth or redirect" do get recruiter_url assert_redirected_to recruiter_login_path get new_candidate_url assert_redirected_to recruiter_login_path post create_candidate_url, params: { candidate: { name: 'foo', email: 'bar', experience: 'baz' } } assert_redirected_to recruiter_login_path end test "should auth to index" do auth_recruiter assert_redirected_to recruiter_path assert session[:user].present? end test "should fail auth with flash" do post recruiter_auth_url, params: { auth: { email: 'pdr.recruiter@mailinator.com', password: 'bad-password' } } assert_redirected_to recruiter_login_path assert flash[:error] end test "should get candidate list" do auth_recruiter get recruiter_url assert_response :success assert assigns(:candidates), "@candidates not present" end test 'should have edit links' do auth_recruiter get recruiter_url assert_response :success assert_select "a[href='#{edit_candidate_path(candidates(:martha))}']" end end