# frozen_string_literal: true require 'test_helper' class UserPolicyTest < PolicyAssertions::Test test 'should allow admin to scope' do scope = UserPolicy::Scope.new(users(:admin), User).resolve assert_equal User.count, scope.count end test 'should not allow non_admin' do assert_raise Pundit::NotAuthorizedError do UserPolicy::Scope.new(users(:manager), User).resolve end end test 'should require current_user' do assert_raise Pundit::NotAuthorizedError do UserPolicy.new(nil, User.first).view? end end def test_view refute_permit users(:manager), User.first assert_permit users(:admin), User.first end def test_create_and_update refute_permit users(:manager), User assert_permit users(:admin), User end end