我第一次使用 Draper,效果很好……除了它打破了我的大部分规格。一个例子:
我正在设置一个 account_settings_controller_spec.rb
describe '#create' do
before do
@user = create :user
end
end
这以前工作得很好(我已经config.include FactoryGirl::Syntax::Methods
开始像这样打电话给工厂了)
但是现在当我打电话时,create :user
我得到undefined method 'full_name' for class 'User'
了我从我的用户模型移动到我的 UserDecorator 的方法。
这很奇怪,因为工厂,也不是规范,使用该full_name
方法。
我尝试了多种方法:
ApplicationController.new.set_current_view_context
在前块中(这会导致错误)require 'draper/test/rspec_integration'
到我的 spec_helper.rb (什么都不做)- 添加
before/after(:create) { |instance| instance.decorate }
到我的工厂(也什么都不做)
我不确定我在这里缺少什么,甚至不确定为什么会抛出错误。当 RSpec 启动时,也许我的装饰器没有被包括在内?