[rspec-users] Expectations on Class Methods
Scott Taylor
mailing_lists at railsnewbie.com
Tue Nov 27 15:23:33 EST 2007
On Nov 27, 2007, at 3:13 PM, s.ross wrote:
> Sorry about the non-specific subject. Here's what I'm trying to do. I
> have a method:
>
> DataMapper::Database.setup
>
> That I want to create an expectation on. I wrote:
>
> DataMapper::Database.should_receive(:setup).once.and_return
> (connection_hash)
>
> The call to setup is invoked in the "Object" namespace. I.e., it is
> setup code, and not in any method or class.
Try using "load" to load the file *after* the expectation (not with
require, before the expectation, as you would usually do). (see this
blog post by Jay Fields, which is about validations, but uses the
load trick: http://blog.jayfields.com/2006/12/rails-unit-testing-
activerecord.html)
Or, you could also do some sort of behaviour verification. What do
you expect this DatabaseMapper setup should do? Why is it in your
code? If you can answer these questions, then you can probably write
a test for it (but without stubbing)
Scott
More information about the rspec-users
mailing list