Rspec any_instance.stub raises undefined method
`any_instance_recorder_for' for nil:NilClass exception
Here is the class that I'm testing contained in Foo.rb:
class Foo
def bar
return 2
end
end
Here is the my test contained in Foo_spec.rb:
require "./Foo.rb"
describe "Foo" do
before(:all) do
puts "#{Foo == nil}"
Foo.any_instance.stub(:bar).and_return(1)
end
it "should pass this" do
f = Foo.new
f.bar.should eq 1
end
end
I am getting the following output:
false
F
Failures:
1) Foo Should pass this
Failure/Error: Foo.any_instance.stub(:bar).and_return(1)
NoMethodError:
undefined method `any_instance_recorder_for' for nil:NilClass
# ./Foo_spec.rb:6:in `block (2 levels) in <top (required)>'
Finished in 0 seconds
1 example, 1 failure
Failed examples:
rspec ./Foo_spec.rb:9 # Foo Should pass this
I've consulted the doc and the example given is passing on my machine (so
it isn't a problem with the rspec code), but it isn't giving me any
information on what I might be doing wrong. The error message is also
quite confusing as it's telling me not to call .any_instance on a
nil:NilClass, but as I proved with my output, Foo isn't nil. How am I
supposed to call .any_instance.stub on my custom object?
No comments:
Post a Comment