gpt4 book ai didi

ruby-on-rails-3 - 尝试使用authlogic运行 Controller 测试时,main:Object的未定义方法`setup'

转载 作者:行者123 更新时间:2023-12-02 04:09:37 25 4
gpt4 key购买 nike

我对RSpec测试有点陌生,我正在尝试使用RSpec 2和Authlogic 3身份验证在Rails 3应用程序中运行一些 Controller 测试。

按照Authlogic文档(http://rdoc.info/github/binarylogic/authlogic/master/Authlogic/TestCase)提供的步骤,我在文件中得到以下代码:

spec_helper.rb

require "authlogic/test_case" # include at the top of test_helper.rb  

events_controller_spec.rb
require 'spec_helper'  
setup :activate_authlogic

通过 rake spec SPEC='spec/controllers/eventos_controller_spec.rb'运行测试,出现以下错误:
events_controller_spec.rb:2: undefined method `setup' for main:Object (NoMethodError)

当我在使用authlogic之前运行测试时,我没有任何问题。

我正在使用Ubuntu 11.04和以下配置:
ruby - 1.8.7  
rails - 3.0.7
authlogic - 3.0.2
rspec-rails - 2.4.1
factory_girl_rails - 1.0.1

最佳答案

设置方法 undefined ,因为它是Test::Unit method。从authlogic docs:

如果您使用的是Test::Unit::TestCase(Ruby附带的标准测试库),则可以跳过下一部分。如果不是,则需要将Authlogic::TestCase包含在测试套件中。

要对RSpec做同样的事情,您必须包括Authlogic::TestCase并在每个规范之前调用activate_authlogic:

require 'spec_helper'

describe EventsController do
include Authlogic::TestCase

before(:each) do
activate_authlogic
end
end

关于ruby-on-rails-3 - 尝试使用authlogic运行 Controller 测试时,main:Object的未定义方法`setup',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5950102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com