1 require File.dirname(__FILE__) + '/../../spec_helper.rb'
5 describe "PartialMockUsingMocksDirectly" do
18 # See http://rubyforge.org/tracker/index.php?func=detail&aid=10263&group_id=797&atid=3149
19 # specify "should clear expectations on verify" do
20 # @obj.should_receive(:msg)
25 # end.should raise_error(NoMethodError)
28 it "should fail when expected message is not received" do
29 @obj.should_receive(:msg)
32 end.should raise_error(MockExpectationError)
35 it "should fail when message is received with incorrect args" do
36 @obj.should_receive(:msg).with(:correct_arg)
38 @obj.msg(:incorrect_arg)
39 end.should raise_error(MockExpectationError)
40 @obj.msg(:correct_arg)
43 it "should pass when expected message is received" do
44 @obj.should_receive(:msg)
49 it "should pass when message is received with correct args" do
50 @obj.should_receive(:msg).with(:correct_arg)
51 @obj.msg(:correct_arg)
55 it "should revert to original method if existed" do
56 @obj.existing_method.should equal(:original_value)
57 @obj.should_receive(:existing_method).and_return(:mock_value)
58 @obj.existing_method.should equal(:mock_value)
60 @obj.existing_method.should equal(:original_value)