On Sep 13, 6:32 pm, nicolas <[email protected]> wrote: > It seems that rspec doesn't support passing a block to a stub method. > This code fails: > > def call_build_with_block(o) > o.build do > puts "hello" > end > end > > describe "call_build_with_block" do > it "should call build with block" do > o = double("object") > o.should_receive(:build) do |&b| > b.should_not be_nil > block_given?.should == true > end > > call_build_with_block(o) > end > end > > Anybody? > _______________________________________________ > rspec-users mailing list > [email protected]http://rubyforge.org/mailman/listinfo/rspec-users
What you can use is the "and_yield" method: o.should_receive(:build).and_yield do |eval_context| eval_context.should_not be_nil end Hope that helps. _______________________________________________ rspec-users mailing list [email protected] http://rubyforge.org/mailman/listinfo/rspec-users
