aboutsummaryrefslogtreecommitdiffstats
path: root/lib/minitest/mock.rb
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-12-01 01:12:31 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-12-01 01:12:31 +0000
commit54fd6de064142633f3bb592b0bd6486d262cd2b2 (patch)
treec86d22ef1ed214ecc725f261aa313993e08d041d /lib/minitest/mock.rb
parent22b2c638553c26e265a88a6b68ec31d132361ec7 (diff)
downloadruby-54fd6de064142633f3bb592b0bd6486d262cd2b2.tar.gz
Revert r29986: "Imported minitest 2.0.0 r5952"
This breaks test-all: * two test-all errors (test_run_passing and test_run_failing_filtered). * -v option to test-all is ignored Additional to say, please describe summary of the change when you import from external repository. And, RUN test-all BEFORE COMMIT. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/minitest/mock.rb')
-rw-r--r--lib/minitest/mock.rb21
1 files changed, 7 insertions, 14 deletions
diff --git a/lib/minitest/mock.rb b/lib/minitest/mock.rb
index 99f7992aa9..4871e8b183 100644
--- a/lib/minitest/mock.rb
+++ b/lib/minitest/mock.rb
@@ -14,7 +14,14 @@ module MiniTest
end
def expect(name, retval, args=[])
+ n, r = name, retval # for the closure below
@expected_calls[name] = { :retval => retval, :args => args }
+ self.class.__send__ :remove_method, name if respond_to? name
+ self.class.__send__(:define_method, name) { |*x|
+ raise ArgumentError unless @expected_calls[n][:args].size == x.size
+ @actual_calls[n] << { :retval => r, :args => x }
+ retval
+ }
self
end
@@ -27,19 +34,5 @@ module MiniTest
end
true
end
-
- def method_missing(sym, *args)
- raise NoMethodError unless @expected_calls.has_key?(sym)
- raise ArgumentError unless @expected_calls[sym][:args].size == args.size
- retval = @expected_calls[sym][:retval]
- @actual_calls[sym] << { :retval => retval, :args => args }
- retval
- end
-
- alias :original_respond_to? :respond_to?
- def respond_to?(sym)
- return true if @expected_calls.has_key?(sym)
- return original_respond_to?(sym)
- end
end
end