Ruby on rails 如何在控制器RSpec中测试设备,错误:未定义的方法'assign';对于#<;RSpec::Core::ExampleGroup::Nested_1:0x000010597F4B8>;
我得到以下错误:Ruby on rails 如何在控制器RSpec中测试设备,错误:未定义的方法'assign';对于#<;RSpec::Core::ExampleGroup::Nested_1:0x000010597F4B8>;,ruby-on-rails,ruby-on-rails-3,rspec,devise,rspec2,Ruby On Rails,Ruby On Rails 3,Rspec,Devise,Rspec2,我得到以下错误: undefined method `assign' for #<RSpec::Core::ExampleGroup::Nested_1:0x0000010597f4b8> 建议?谢谢Rspec已经改变了一点,它现在正在使用分配 .谢谢,希望您能就我的后续问题提供反馈。我真的不知道如何开始和正确测试Desive:当更改为assigns时,仍然错误:Failure/Error:assigns(:user,user)ArgumentError:参数数目错误(2对1),因
undefined method `assign' for #<RSpec::Core::ExampleGroup::Nested_1:0x0000010597f4b8>
建议?谢谢Rspec已经改变了一点,它现在正在使用
分配
.谢谢,希望您能就我的后续问题提供反馈。我真的不知道如何开始和正确测试Desive:当更改为assigns时,仍然错误:Failure/Error:assigns(:user,user)ArgumentError:参数数目错误(2对1),因此我将其更改为:assigns[:user]=导致它现在在未定义的局部变量或方法“render”上出错的用户#如果使用不推荐的方法,请在此处浏览文档:
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