diff options
Diffstat (limited to 'test/test_helper.rb')
-rw-r--r-- | test/test_helper.rb | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/test/test_helper.rb b/test/test_helper.rb index e761086..94bb2b4 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -4,16 +4,46 @@ require 'minitest/autorun' require 'leap_cli' class MiniTest::Unit::TestCase + attr_accessor :ruby_path # Add global extensions to the test case class here + def setup + LeapCli::Path.set_platform_path(test_platform_path) + LeapCli::Path.set_provider_path(test_provider_path) + end + def manager @manager ||= begin - LeapCli::Path.set_root(File.dirname(__FILE__)) manager = LeapCli::Config::Manager.new manager.load manager end end + def base_path + File.expand_path '../..', __FILE__ + end + + def leap_bin(*args) + `#{ruby_path} #{base_path}/bin/leap #{args.join ' '}` + end + + def test_platform_path + "#{base_path}/test/leap_platform" + end + + def test_provider_path + "#{base_path}/test/provider" + end + + def with_multiple_rubies(&block) + ['ruby1.8', 'ruby1.9.1'].each do |ruby| + self.ruby_path = `which #{ruby}`.strip + next unless ruby_path.chars.any? + yield + end + self.ruby_path = "" + end + end |