我試圖測試與特拉維斯CI我的Rails應用程序,並在我的控制器的測試得到了這個錯誤:NoMethodError:未定義的方法`original_path_set」的零:NilClass
DaysController
GET 'index'
An error occurred in an after hook
NoMethodError: undefined method `original_path_set' for nil:NilClass
occurred at /home/travis/build/violarium/ruby-moon/vendor/bundle/ruby/2.1.0/gems/rspec-rails-2.14.2/lib/rspec/rails/view_rendering.rb:121:in `block (2 levels) in <module:ViewRendering>'
的問題是,同樣的測試本地傳遞成功。
在這個例子中DaysController是一個簡單的控制器關切 - 模塊一些認證方法:
module UserSession
extend ActiveSupport::Concern
private
# Sign in existent user
def sign_in(user)
cookies.permanent[:remember_token] = user.remember_token
end
# Clear cookies
def sign_out
cookies[:remember_token] = nil
end
# Get current signed in user or nil
def signed_in_user
@current_user ||= User.find_by(remember_token: cookies[:remember_token])
end
# Check if user is signed in
def signed_in?
!signed_in_user.nil?
end
included do
helper_method :signed_in?
end
end
你可以請一個鏈接到特拉維斯版本 –
https://travis-ci.org/violarium/ruby-moon/builds/23058318 – violarium