4
,我發現了以下錯誤:如何在控制器的RSpec,誤碼測試設計:未定義的方法`分配」爲#<:: RSpec的核心:: ExampleGroup :: Nested_1:0x0000010597f4b8>
undefined method `assign' for #<RSpec::Core::ExampleGroup::Nested_1:0x0000010597f4b8>
當試圖按照the docs進行測試時。
這裏的是我:
user_controller_spec.rb
require 'spec_helper'
describe "devise/sessions/new.html.erb" do
let(:user) do
stub_model(User).as_new_record
end
before do
assign(:user, user)
# Devise provides resource and resource_name helpers and
# mappings so stub them here.
@view.stub(:resource).and_return(user)
@view.stub(:resource_name).and_return('user')
@view.stub(:devise_mapping).and_return(Devise.mappings[:user])
end
it "renders a form to sign the user in" do
render
rendered.should have_selector("form",
:method => "post",
:action => user_session_path
) do |form|
form.should have_selector("input", :type => "submit")
end
end
end
建議?謝謝
謝謝,很想得到你對我的後續問題的反饋。我真的失去了如何開始和正確的測試設計:http://stackoverflow.com/questions/7223549/howto-write-tests-for-devise-omniauth-in-my-rails-3-app – AnApprentice
當更改爲指定它仍然錯誤:失敗/錯誤:分配(:用戶,用戶) 參數錯誤: 錯誤的參數數量(2爲1) – AnApprentice
因此,我將其更改爲:assigns [:user] = user which which it現在錯誤未定義的本地變量或方法'渲染'爲# –
AnApprentice