Lee
2009-Mar-10 19:40 UTC
RAILS_ROOT issue - plugin unit tests won''t work under vendor/plugins
Hi,
I''m relatively new to Ruby/Rails (and developing on Windows boxes).
I''ve inherited a system and am trying to get the unit tests for a
plugin running in Windows. Specifically, I have a plugin with some
unit tests running under my app''s vendor/plugins dir. When I try and
run a specific model unit test I get a failure:
-----
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'': no such file to load -- C:/Documents and
Settings/leedoejgi/workspace/Ruby/config/environment (LoadError)
-----
It''s looking in C:/Documents and Settings/leedoejgi/workspace/Ruby/
config/environment instead of C:/Documents and Settings/leedoejgi/
workspace/Ruby/myapp/clients/myapp_client/config/environment.
The unit test is requiring test_helper in the same directory, which
looks like this:
----
$:.reject! { |e| e.include? ''TextMate''}
ENV["RAILS_ENV"] = "test"
unless defined? RAILS_ROOT
RAILS_ROOT = ''../../..''
end
require File.expand_path("#{RAILS_ROOT}/config/environment")
require ''test_help''
require ''logger''
require ''fileutils''
<snip>
----
If I set an environment variable for RAILS_ROOT in Windows of and make
the following changes to test_helper give it the right RAILS_ROOT
----
$:.reject! { |e| e.include? ''TextMate''}
ENV["RAILS_ENV"] = "test"
# Support for NetBeans testing in Windows with RAILS_ROOT set in
environement.
if !ENV[''RAILS_ROOT''].empty?
RAILS_ROOT = ENV[''RAILS_ROOT'']
end
unless defined? RAILS_ROOT
RAILS_ROOT = ''../../..''
end
require File.expand_path("#{RAILS_ROOT}/config/environment")
require ''test_help''
require ''logger''
require ''fileutils''
<snip>
----
I now get a different error:
-----
c:/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/initializer.rb:499:in
`replace'': can''t modify frozen string (TypeError)
-----
Can anyone offer me guidance on how to get the unit tests running
under Windows?
Thanks!
Lee
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---