On 9/6/07, Ingo Weiss <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I am stuck with a problem in my helper specs. Say I have a helper
> with two methods, method1 and method2, where method2 is calling
> method1 internally. How can I stub out method1 when testing method2?
> I guess it boils down to how I can access the helper object from
> within a helper spec.
>
>    it 'should behave_correctly' do
>      ???.stub!(:method1).and_return('mock')
>      method2.should eql('...')
>    end

2 schools of thought:

it "should behave correctly" do
  self.should_receive(:method1).with('foo').and_return(whatever)
  method2('foo')
end

The other is don't mock the call. Just spec the behaviour of method1
as though it does everything.

Deciding between these two approaches is where the art of mocking lies
- when to do it, when not to. In the end, it depends on a lot of
factors, but the overriding factor should be the answer to "what is
the simplest way I can get stuff done?"

I'm sure that's not at all helpful :)

Cheers,
David

>
> Thanks!
> Ingo
>
>
> _______________________________________________
> rspec-users mailing list
> rspec-users@rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to