2009-08-22 45 views
1

我试图在RSpec中使用shoulda宏,并遇到一些问题。在RSpec中使用shoulda宏

我已经做了以下内容:

spec_helper.rb:

require 'shoulda/active_record/macros' 

Spec::Runner.configure do |config| 
    ... 
    config.include(Shoulda::ActiveRecord::Macros, :type => :model) 

规格/型号/ foo_spec.rb:

describe Foo do 
    it { should_have_instance_methods(:save) } # just for example 
end 

,给了我一个衰竭:

undefined method 'get_options!' for #<Spec::Rails::Example::ModelExampleGroup::Subclass_1:0xb714046c>

回答

3

只是语法:

不是:

it { should_have_instance_methods(:save) } 

it { should have_instance_methods(:save) } 

(注意下划线)

0

我不是100%确定与RSpec的集成,但是您是否在上下文中调用了should_have_instance_methods的块? IIRC应该从shoulda的陈述中得到一个围绕它们的背景。