1
我測試我的項目,它是關於application_helper.rb包含此方法:未定義的局部變量或方法「CURRENT_USER」(導軌)
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
我想測試一個方法,所以我做這個測試在我的customers_controller_test.rb這樣的
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 protected]", :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
但我得到了未定義的局部變量或方法'current_user'。任何想法? Thx for your advice :)
但我將它設置爲application_helper.rb,它爲別人工作,但不適用於我的測試。我的測試不能給當前用戶參數application_helper.rb – Michelle
我不能告訴你多久我一直在尋找這個答案,謝謝! –