From: James Mead Date: 2006-12-24T19:01:38+09:00 Subject: Re: Reverting module changes The Stubba portion of Mocha (http://mocha.rubyforge.org) allows you to temporarily replace the implementation of a Module method within a test. require 'test/unit' require 'test/unit/ui/console/testrunner' require 'rubygems' require 'stubba' class Test1 < Test::Unit::TestCase def test_should_force_system_to_return_false Kernel.stubs(:system).returns(false) assert_equal false, Kernel.system('echo') end end class Test2 < Test::Unit::TestCase def test_should_not_be_affected_by_other_test assert_equal true, Kernel.system('echo') end end class OrderedTests < Test::Unit::TestCase def self.suite suite = Test::Unit::TestSuite.new('OrderedTests') suite << Test1.suite suite << Test2.suite end end Test::Unit::UI::Console::TestRunner.run(OrderedTests) -- James. http://blog.floehopper.org