Hi James,
An instance retains its mocha between tests if that instance is
pointed to by a constant. The simplest failing test is something like
(add as a new file in mocha/test)..
#--code--
require File.join(File.dirname(__FILE__), "test_helper")
require 'stubba'
class WemStubbaTest < Test::Unit::TestCase
Arr = [1, 2, 3]
def test_a
Arr.stubs(:size).returns(6)
assert_equal 6, Arr.size
end
def test_b
assert_equal 3, Arr.size #=> Failing test when both tests run consecutively
end
end
#--/code--
I got as far as noticing that Stubba::InstanceMethod#unstub is
'intentionally empty'. This is fine for most object instances but not
ones that hang around (like the array above). Sadly, I don't have (or
even know whether there should be) a fix.
Chris