require "test_helper" class UsersControllerTest < ActionDispatch::IntegrationTest setup do @admin = users(:admin) @user = users(:alice) sign_in @admin end test "should get index" do get users_url assert_response :success end test "should show user" do get user_url(@user) assert_response :success end test "should update user" do patch user_url(@user), params: { user: { status: :restricted } }, as: :turbo_stream assert_equal "restricted", @user.reload.status end test "should not update self" do patch user_url(@admin), params: { user: { status: :active } }, as: :turbo_stream, headers: { "HTTP_REFERER" => users_url } assert_response :redirect end test "should forbid non-admin" do sign_in @user get users_url assert_response :forbidden end end