Mocking find_by_sql


#1

Hi, I cannot manage to mock a call to find_by_sql. Which class is
actually getting called? It is not the model, and I tried ActiveRecord
which didn’t work either.


#2

Damn I can’t mock will_paginate’s paginate method either!!!


#3

On Fri, Jun 5, 2009 at 3:33 PM, Fernando P. removed_email_address@domain.invalid
wrote:

Damn I can’t mock will_paginate’s paginate method either!!!

Same deal as your other post about find_by_sql. Set the message
expectation on the method on the class:

Post.should_receive(:paginate)


#4

Same deal as your other post about find_by_sql. Set the message
expectation on the method on the class:

Post.should_receive(:paginate)

Unfortunately it doesn’t work :frowning: I’ll have to dive into the
will_paginate source code to find out how it plugs itself in AR.


#5

You might not be understanding the usage of mock very well.


#6

On Fri, Jun 5, 2009 at 3:29 PM, Fernando P. removed_email_address@domain.invalid
wrote:

Hi, I cannot manage to mock a call to find_by_sql. Which class is
actually getting called? It is not the model, and I tried ActiveRecord
which didn’t work either.

It’s the model’s class:

class Foo < AR::Base; end

describe Foo do
it “…” do
Foo.should_receive(:find_by_sql) …

HTH,
David