Class: Cucumber::Rvm
- Inherits:
-
Object
- Object
- Cucumber::Rvm
- Defined in:
- lib/cucumber/rvm.rb
Overview
:nodoc:
Constant Summary collapse
- RVMS =
YAML.load_file(File.dirname(__FILE__) + '/../../rvm.yml')
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(ruby_name, gems_with_version, world) ⇒ Rvm
constructor
A new instance of Rvm.
- #install_gems ⇒ Object
- #rvm(cmd) ⇒ Object
Constructor Details
#initialize(ruby_name, gems_with_version, world) ⇒ Rvm
Returns a new instance of Rvm.
15 16 17 18 |
# File 'lib/cucumber/rvm.rb', line 15 def initialize(ruby_name, gems_with_version, world) @ruby_version, @gems_with_version, @world = RVMS['rubies'][ruby_name], gems_with_version, world raise "NO RUBY VERSION FOUND FOR #{ruby_name}. Check your rvms.yml" if @ruby_version.nil? end |
Class Method Details
Instance Method Details
#install_gems ⇒ Object
41 42 43 44 45 |
# File 'lib/cucumber/rvm.rb', line 41 def install_gems @gems_with_version.each do |gem_with_version| rvm("-S gem install #{gem_with_version}") end end |
#rvm(cmd) ⇒ Object
30 31 32 33 34 35 36 37 38 39 |
# File 'lib/cucumber/rvm.rb', line 30 def rvm(cmd) rvm_cmd = "rvm #{@ruby_version}%sinatra_app_gen #{cmd}" if @world @world.announce(rvm_cmd) else puts(rvm_cmd) end run(rvm_cmd) raise "STDOUT:\n#{@last_stdout}\nSTDERR:\n#{@last_stderr}" if @last_exit_status && @last_exit_status != 0 end |