[rspec-users] Mocking models provided in Rails plugins

Pat Maddox pergesu at gmail.com
Thu Oct 18 18:45:28 EDT 2007

On 10/18/07, Dan Croak <dcroak at thoughtbot.com> wrote:
> Hey folks,
> How do I mock a model that is given to me by a Rails plugin? I'm trying to
> mock Session from the restful_authentication plugin but I get a number of
> errors telling me RSpec doesn't recognize Session.
> NameError in 'SessionsController handling GET /sessions/new should be
> successful'
> uninitialized constant Session
> An example of my usage:
>   before do
>     @session = mock_model(Session)
>     Session.stub!(:new).and_return(@session)
>   end
> Thanks!
> Dan Croak
> http://thoughtbot.com
> organic brains. digital solutions.
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users

class Session; end

You can stick that in spec_helper.rb if you use Session in a lot of places.

I think you can also do Session.class_eval {} somewhere and that'll
load up the actual Session class instead of the dummy implementation I
just showed.  It won't use the implementation in your specs of course,
but it loads the provided class into memory.


More information about the rspec-users mailing list