I reinstalled the minitest and mocha gems to the following versions: minitest-2.0.2, mocha-0.9.12 The same issue I described before occurred once again.
Here's the code I ran on macirb and the result: require 'rubygems' #=> true gem 'minitest' #=> true require 'test/unit' #=> true require 'mocha' #=> true class QuickTest < Test::Unit::TestCase def test_quick obj = mock('obj') obj.expects(:a).returns(true) assert( obj.a ) end end # => nil exit Run options: --seed 43199 # Running tests: uncaught Objective-C/C++ exception... 2011-02-13 14:47:45.996 macruby[25824:903] *** Terminating app due to uncaught exception 'NoMethodError', reason: '/Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:664:in `block': undefined method `run' for #<QuickTest:0x200336080 ...> (NoMethodError) from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:657:in `_run_suite:' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:647:in `block' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:647:in `_run_suites:' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:623:in `_run_anything:' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:778:in `run_tests' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:765:in `block' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:764:in `run:' from /Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/Gems/1.9.2/gems/minitest-2.0.2/lib/minitest/unit.rb:558:in `block' ' Gabriel Ayuso On Feb 13, 2011, at 1:08 PM, Eloy Duran wrote: > Did you also try installing the latest minitest + mocha as suggested? I would > expect that to fix such issues. Which would also mean that, like Joshua > suggested, we should update our version in stdlib. > > On 11 feb 2011, at 23:53, Gabriel Ayuso wrote: > >> I did a little more testing and I found out that the problem is apparently >> by how Mocha changes Test::Unit::TestUnit. >> >> The only way I was able to make it work was the following: >> >> require 'rubygems' >> gem 'mocha' >> require 'mocha' >> require 'test/unit' >> class QuickTest < Test::Unit::TestCase >> include Mocha::API >> def test_quick >> obj = mock("test") >> obj.expects(:do).returns(false) >> assert( obj.do ) >> end >> end >> >> If I required 'mocha' after 'test/unit' then the NoMethodError exception >> would be thrown: >> >> uncaught Objective-C/C++ exception... >> 2011-02-11 23:43:50.675 macruby[83143:903] *** Terminating app due to >> uncaught exception 'NoMethodError', reason: >> '/Library/Frameworks/MacRuby.framework/Versions/0.8/usr/lib/ruby/1.9.2/minitest/unit.rb:641:in >> `block': undefined method `run' for #<QuickTest:0x20039eea0 ...> >> (NoMethodError) >> >> Gabriel Ayuso >> >> On Feb 11, 2011, at 3:59 PM, Joshua Ballanco wrote: >> >>> Considering that the updated minitest library also contains the new >>> benchmarking facilities (though I don't think that part was officially >>> adopted by MRI), it might be worth considering pulling from upstream. >>> >>> On Fri, Feb 11, 2011 at 9:37 AM, Eloy Duran <eloy.de.en...@gmail.com> wrote: >>> This *might* be because the minitest version in our stdlib is >>> outdated. You can try to install the minitest gem and require that >>> instead and see if that fixes it. >>> >>> On Fri, Feb 11, 2011 at 3:24 PM, Gabriel Ayuso <gabr...@gabrielayuso.com> >>> wrote: >>> > I wanted to try using mocha to write unit tests with mocks. After >>> > requiring >>> > "rubygems" a NoMethodError exception was thrown when attempting to run the >>> > tests. The method which wasn't found was 'run'. >>> > If I remove the call to require "rubygems" my test fails because I can't >>> > use >>> > mocha but the NoMethodError exception which was thrown is not thrown >>> > anymore. >>> > Am I missing something? >>> > Thanks, >>> > Gabriel Ayuso >>> > _______________________________________________ >>> > MacRuby-devel mailing list >>> > MacRuby-devel@lists.macosforge.org >>> > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>> > >>> > >>> _______________________________________________ >>> MacRuby-devel mailing list >>> MacRuby-devel@lists.macosforge.org >>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>> >>> _______________________________________________ >>> MacRuby-devel mailing list >>> MacRuby-devel@lists.macosforge.org >>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >> >> _______________________________________________ >> MacRuby-devel mailing list >> MacRuby-devel@lists.macosforge.org >> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel > > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel