Undefined method `run?' for Test::Unit:Module


#1

Hello. I just ran into an error I wanted to share.

The error message is below. I tracked down the error to the following
conditions:

  1. I am using the new version of Watir (1.6.2)
  2. This version of Watir uses the “user-choices” gem (from Marick)
  3. This gem does not load Test::Unit, but does define a Test constant
    (not
    sure why, but Marick likes testing)
  4. Rspec thinks that Test::Unit has been loaded (even though it hasn’t)
    because the Test constant is defined.

As a result, my rspec script gives me this error. Any suggestions?
Increase
the guard on the failing method call?

Bret

…C:/ruby-186-26/lib/ruby/gems/1.8/gems/rspec-1.1.11/lib/spec.rb:25:in
`exit?’

Finished in 18.625 seconds

2 examples, 0 failures
: undefined method run?' for Test::Unit:Module (NoMethodError) from C:/ruby-186-26/lib/ruby/gems/1.8/gems/rspec-1.1.11/lib/spec/runner.rb:192:inregister_at_exit_hook’
from samples/lab6-refactored.rb:4


#2

On Fri, Nov 14, 2008 at 7:13 PM, Bret P. removed_email_address@domain.invalid
wrote:

As a result, my rspec script gives me this error. Any suggestions? Increase
the guard on the failing method call?
Bret, try requiring test/unit before requiring rspec.
I think this has to do with Rails trying to reopen a test/unit module
that doesn’t exists (since test/unit was not required), so it defines
the Test module instead.


#3

On Nov 14, 2008, at 7:13 PM, Bret P. wrote:

2 examples, 0 failures
: undefined method run?' for Test::Unit:Module (NoMethodError) from C:/ruby-186-26/lib/ruby/gems/1.8/gems/rspec-1.1.11/lib/spec/ runner.rb:192:inregister_at_exit_hook’
from samples/lab6-refactored.rb:4

File it on lighthouse. I cued David into this bug @ rubyconf, and he
seemed somewhat surprised by it. No doubt, it has something to do
with active_record/active_support requiring test/unit.

Scott


#4

On Sat, Nov 15, 2008 at 10:54 PM, Scott T.
removed_email_address@domain.invalid wrote:

sure why, but Marick likes testing)

File it on lighthouse. I cued David into this bug @ rubyconf, and he seemed
somewhat surprised by it. No doubt, it has something to do with
active_record/active_support requiring test/unit.

Fixed:

http://github.com/dchelimsky/rspec/commit/5b163e285d2e774ac474d3ffad5676bf273820f9

Cheers,
David