lul*_*ala 7 rspec ruby-on-rails-3 journey
升级到Rails 3.2.6或Rspec 2.11.0后,我的规范开始显示如下的路由错误:
4) UsersController GET activate activation code not exist
Failure/Error: subject{ get :activate }
ActionController::RoutingError:
No route matches {:controller=>"users", :action=>"activate"}
Run Code Online (Sandbox Code Playgroud)
每个钩子错误之后还有一个
An error occurred in an after(:each) hook
RSpec::Mocks::MockExpectationError: (#<EmailSubscriber[...]>).update_attributes({:enable=>true})
expected: 1 time
received: 0 times
occurred at [...]/spec/controllers/users_controller_spec.rb:75:in `block (3 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)
开发模式下的应用程序运行良好.
Rspec 2.11.0和Rails 3.2.6都使用最新的Journey gem(1.0.4).它有一些问题,并通过明确地将其锁定到以前的版本,规范错误消失.
gem 'journey', '1.0.3'
Run Code Online (Sandbox Code Playgroud)
UPDATE
我最近使用Journey 1.0.4将Rails更新为3.2.11,并且所有规范都通过了.我的Rspec是2.11.0因此不再需要下载旅程,只需更新Rails.