# frozen_string_literal: true require 'test_helper' class UserTest < ActiveSupport::TestCase test 'admin should act as any role' do user = users(:admin) assert user.acts_as_admin? assert user.acts_as_manager? assert user.acts_as_recruiter? assert user.acts_as_reviewer? end test 'admin should only be admin' do user = users(:admin) assert user.admin? refute user.manager? refute user.recruiter? refute user.reviewer? end test 'manager should act as manager and reviewer' do user = users(:manager) assert user.acts_as_manager? assert user.acts_as_reviewer? refute user.acts_as_admin? refute user.acts_as_recruiter? end test 'manager should only be manager' do user = users(:manager) assert user.manager? refute user.admin? refute user.recruiter? refute user.reviewer? end test 'recruiter should act as recruiter' do user = users(:recruiter) assert user.acts_as_recruiter? refute user.acts_as_manager? refute user.acts_as_admin? refute user.acts_as_reviewer? end test 'recruiter should only be recruiter' do user = users(:recruiter) assert user.recruiter? refute user.admin? refute user.manager? refute user.reviewer? end test 'reviewer should act as reviewer' do user = users(:reviewer) assert user.acts_as_reviewer? refute user.acts_as_manager? refute user.acts_as_admin? refute user.acts_as_recruiter? end test 'reviewer should only be reviewer' do user = users(:reviewer) assert user.reviewer? refute user.admin? refute user.manager? refute user.recruiter? end end