Вопрос

I have a testing "bootstrap" Ruby script that handles test setup (requires libraries, prepares test variables etc.) and I want the Rake TestTask to run this file before it runs the tests. Is this possible?

I know that Rake starts the test in a new Ruby instance, so doing setup in the Rakefile won't work. The docs say that I can pass options to the Ruby command using TestTask.ruby_opts, but I haven't been able to find a Ruby option that executes a script file before the main script. I did find:

-rlibrary       require the library before executing your script

But that doesn't let me reference my testing bootstrap script

Это было полезно?

Решение

What you have to do is to include the directory where your script is to the $LOAD_PATH passing the -I options to the ruby command, for example if your script is some_directory/your_script.rb, you can execute it like this:

Rake::TestTask.new do |t|
  # ...
  t.ruby_opts = ['-I some_directory', '-r your_script']
end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top