我已經安裝Rspec2 +叉勺+衛士+設計要求規格與設計+ Rspec2 +叉勺/衛隊
我的文件是在我的要求的規格如下
#spec_helper.rb
Spork.prefork do
#code
Dir[Rails.root.join('spec/support/**/*.rb')].each {|f| require f}
RSpec.configure do |config|
config.extend ControllerMacros, :type => :controller
end
end
Spork.each_run do
# This code will be run each time you run your specs.
FactoryGirl.reload
include ControllerMacros
end
#spec/support/controller_macros.rb
module ControllerMacros
def login_user
before(:each) do
@request.env["devise.mapping"] = Devise.mapping[:user]
user = FactoryGirl.create(:user)
sign_in user
end
end
end
#spec/support/devise.rb
Spec.configure do |config|
config.include Devise::TestHelpers, :type => :controller
end
#spec/features/documents_spec.rb
require 'spec_helper'
describe "Documents" do
login_user
describe "GET /documents" do
it "should display document name as sameera CV" do
#spec code
end
end
end
當我運行bundle exec guard
,我得到
1) Documents GET /documents should display document name as sameera CV
Failure/Error: Unable to find matching line from backtrace
NoMethodError:
undefined method `env' for nil:NilClass
# ./spec/support/controller_macros.rb:4:in `block in login_user'
個
到目前爲止,我已經做了很多通過谷歌並沒有什麼修復的似乎是工作,有人可以幫我:)
我在
- 軌3.2.9
- rspec的2.12.0
- 設計2.2.3
任何幫助,將不勝感激
感謝您的答覆,它沒有工作,當我改變它,它說未定義局部變量或方法'請求'爲# –
sameera207
2013-02-28 20:05:17