【发布时间】:2011-12-23 17:36:15
【问题描述】:
我正在使用最新版本的 Rails、Rspec 和 Factory Girl,当我尝试测试我的创建或更新逻辑时遇到了一个奇怪的问题。有问题的控制器是 Admin 命名空间的 PostsController,模型是 Post。工厂本身只是创建一个带有标题和正文的帖子。
describe 'create' do
before :all do
@new = Factory.build(:post)
end
it 'should be successful' do
post :create, :post => @new
response.should be_success
end
describe 'failure' do
it 'should not create a new page' do
lambda do
post :create, :post => @new
end.should_not change(Post, :count)
end
it 'should render the new template' do
post :create, :post => @new
response.should render_template('new')
end
end
结束
我一直收到的错误是:
ActiveRecord::UnknownAttributeError: 未知属性:post
我可能正在做一些非常愚蠢的事情,但我现在迷路了。
更新
以防万一有人偶然发现这个......
我做了一件非常愚蠢的事情。我的控制器出现错误,我没有调用 Post.new(params[:post]),而是调用 Post.new(params)...
【问题讨论】:
-
顺便说一句,我知道上面的两个测试会失败,但我希望它们因为正确的原因而失败。我的计划是在确定一切正常后返回并添加一个真正的失败案例。
标签: ruby-on-rails-3 rspec