On Dec 10, 2010, at 1:18 AM, Michelle Pace wrote:

> Thanks (again) Dave for your reply and the time you've taken.
> 
> However I think I must be really bad at explaining myself... so I've
> drawn a picture for you which to show my problem. [One of the
> requirements in the book is that I have to have ZenTest installed.]

You're explaining yourself just fine. The problem is that you're listening 1/2 
to the book and 1/2 to me, but you need to just listen to me right now :)

The problem is as follows:

* the book uses ruby-1.8
* you are using ruby-1.9
* ruby-1.8 includes "." on the $LOAD_PATH
* ruby-1.9 does _not_ include "." on the $LOAD_PATH
* ZenTest-4.4.1 does _not_ add "." to the $LOAD_PATH
* these last two ^^ mean that if you're using ruby-1.9, rspec-2, and 
ZenTest-4.4.1, the autotest command that ships with ZenTest will not find 
'./autotest/discover.rb' and will not load the correct class
* per the error message you got when you ran autospec, autospec has been 
removed from rspec-2, so you have to use the autotest command 

Any of the following combinations _will_ work:

1) Run the following commands
$ gem uninstall ZenTest
$ gem uninstall autotest
$ gem install autotest -v 4.4.5
$ autotest

Again, use autotest, not autospec. autotest-4.4.5 is a standalone autotest gem 
that does not require ZenTest. This will work using the autotest/discover.rb 
file because autotest-4.4.5 adds "." to the $LOAD_PATH.

2)
$ gem uninstall autotest
$ gem install ZenTest

At this point you have the book's recommended setup, but the autotest command 
will not see autotest/discover.rb. Your options are:

a) add "." to the $LOAD_PATH yourself
$ ruby -I . -S autotest

The -I option tells ruby to add its argument ('.') to the command line. The -S 
option tells ruby what script to run (autotest).

b) Use autotest's --style option
$ autotest --style rspec2

This bypasses the search for autotest/discover.rb (so you can delete it if 
you're using this) and "just works."

There are other options, but I don't want to confuse you any further. I really 
hope this clears things up.

Also, I've reported this issue to the ZenTest project, so there is some chance 
that ZenTest-4.4.2 will add "." to the $LOAD_PATH, at which point the material 
in the book will work as written (except that the file is 
"autotest/discover.rb", not "autotest/.autotest/discover.rb") with ruby-1.9.

Good luck!

Cheers,
David



> 
> http://michellepace.com/pics/autospec-problem.jpg
> 
> Again, any suggestions on how to get this working would really be
> appreciated.
> 
> Michelle
> 
> -- 
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> rspec-users mailing list
> rspec-users@rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users

Cheers,
David



_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to