Sha256: f4e0a2392c301fbf61a702ba8e7e0018bffe62b039529a268d0404b098c99c29
Contents?: true
Size: 1.78 KB
Versions: 9
Compression:
Stored size: 1.78 KB
Contents
require 'spec_helper' module Rspec module Mocks describe "PartialMockUsingMocksDirectly" do before(:each) do klass=Class.new klass.class_eval do def existing_method :original_value end end @obj = klass.new end # See http://rubyforge.org/tracker/index.php?func=detail&aid=10263&group_id=797&atid=3149 # specify "should clear expectations on verify" do # @obj.should_receive(:msg) # @obj.msg # @obj.rspec_verify # lambda do # @obj.msg # end.should raise_error(NoMethodError) # # end it "should fail when expected message is not received" do @obj.should_receive(:msg) lambda do @obj.rspec_verify end.should raise_error(MockExpectationError) end it "should fail when message is received with incorrect args" do @obj.should_receive(:msg).with(:correct_arg) lambda do @obj.msg(:incorrect_arg) end.should raise_error(MockExpectationError) @obj.msg(:correct_arg) end it "should pass when expected message is received" do @obj.should_receive(:msg) @obj.msg @obj.rspec_verify end it "should pass when message is received with correct args" do @obj.should_receive(:msg).with(:correct_arg) @obj.msg(:correct_arg) @obj.rspec_verify end it "should revert to original method if existed" do @obj.existing_method.should equal(:original_value) @obj.should_receive(:existing_method).and_return(:mock_value) @obj.existing_method.should equal(:mock_value) @obj.rspec_verify @obj.existing_method.should equal(:original_value) end end end end
Version data entries
9 entries across 9 versions & 1 rubygems