lx00st lx00st - 1 year ago 49
Ruby Question

spork 0.9.2 and rspec 3.0.0 = uninitialized constant RSpec::Core::CommandLine (NameError)

Im using spork 0.9.2 and rspec 3.0.0. When trying to run test

rspec --drb
I have an exception

C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/spork-0.9.2/lib/spork/test_framework/rspec.rb:11:in run_tests: uninitialized constant RSpec::Core::CommandLine (NameError)

But when changing rspec version back to 2.6 - everything is OK.
Has anyone faced the same issue? Is it possible to work around?

Answer Source

The reason is that RSpec::Core::CommandLine was removed in Rspec3


Merge RSpec::Core::CommandLine (never formally declared public) into RSpec::Core::Runner. (Myron Marston)

But spork depends on this code.

There is already an issue on spork's github and a solution can be found in a following spork's fork:


In general - replace

::RSpec::Core::CommandLine.new(argv).run(stderr, stdout)


::RSpec::Core::Runner.run(argv,stderr, stdout)

in the soprks source code