Ruby on rails 未定义的局部变量或方法';当前用户';(轨道)

Ruby on rails 未定义的局部变量或方法';当前用户';(轨道),ruby-on-rails,testing,helper,Ruby On Rails,Testing,Helper,我正在测试我的项目,它是关于包含此方法的应用程序_helper.rb的: def delete_link table="" if current_user.role.name=="Admin" || current_user.role.name=="Pemilik" link_to 'Hapus', table, :confirm => 'Anda yakin?', :method => :delete end end

我正在测试我的项目,它是关于包含此方法的应用程序_helper.rb的:

def delete_link table=""
        if current_user.role.name=="Admin" || current_user.role.name=="Pemilik"
            link_to 'Hapus', table, :confirm => 'Anda yakin?', :method => :delete
        end
    end
我想测试这个方法,所以我对我的客户进行了测试

require 'test_helper'

class CustomersControllerTest < ActionController::TestCase
  include Devise::TestHelpers
  include ApplicationHelper
  setup do
    @permission = Permission.create(:name=>"Customer")
    @role = Role.create(:name=>"Admin")
    @user = User.create(:name=>"Admin", :role_id => 1, :email => "email@email.email", :password => "123456")
    @role_permission = RolePermission.create(:role_id=>@role.id, :permission_id=>@permission.id, :access=>2)
    @customer = FactoryGirl.create(:customer)

    sign_in @user    
  end

  test "should link to delete" do
    puts assert sign_in @user
    current_user = @user
    puts current_user.name
    puts current_user.role.name
    assert delete_link(customer_path(@customer.id))
    puts "2"
  end
end
需要“测试助手”
类CustomerControllerTest“客户”)
@role=role.create(:name=>“Admin”)
@user=user.create(:name=>“Admin”,:role\u id=>1,:email=>)email@email.email“,:密码=>“123456”)
@role\u permission=RolePermission.create(:role\u id=>@role.id,:permission\u id=>@permission.id,:access=>2)
@customer=FactoryGirl.create(:customer)
在@user中登录
结束
测试“应该链接到删除”do
将断言符号_放入@user
当前用户=@user
将当前的_user.name
放置当前的_user.role.name
断言删除链接(客户路径(@customer.id))
把“2”
结束
结束

但我得到了未定义的局部变量或方法“current_user”。有什么想法吗?Thx供您参考:)

当前用户的设计方法在应用程序控制器上定义,因此在助手中不可用。通过th helper方法的参数提供给用户,您就可以进行设置。

设备的
当前用户
方法在应用程序控制器上定义,因此在helpers中不可用。通过th helper方法的参数提供给用户,您已经设置好了。

但我将其设置为application_helper.rb,它对其他人有效,但对我的测试无效。我的测试无法将参数当前用户提供给应用程序。\u helper.rbI无法告诉您我寻找这个答案已经有多长时间了-谢谢!但我将它设置为application_helper.rb,它对其他人有效,但对我的测试无效。我的测试无法将参数当前用户提供给应用程序。\u helper.rbI无法告诉您我寻找这个答案已经有多长时间了-谢谢!