Sha256: 08ca1f523fd8cf2a8ffefd07a3756da102fe3b1963b928214ec86596472c13d9

Contents?: true

Size: 870 Bytes

Versions: 4

Compression:

Stored size: 870 Bytes

Contents

class FeatureRunner
  attr_accessor :orm
  attr_accessor :another_orm
  attr_accessor :multiple_databases
  attr_accessor :strategy
  attr_accessor :exit_status
  attr_accessor :output

  def strategy
    @strategy || 'truncation'
  end

  def go(feature)
    full_dir ||= File.expand_path(File.dirname(__FILE__) + "/../../examples/")
    Dir.chdir(full_dir) do


      ENV['ORM']          = orm
      ENV['STRATEGY']     = strategy

      if another_orm
       ENV['ANOTHER_ORM']  = another_orm
      else
        ENV['ANOTHER_ORM'] = nil
      end

      if multiple_databases
        ENV['MULTIPLE_DBS'] = "true"
      else
        ENV['MULTIPLE_DBS'] = nil
      end

      self.output = `#{"jruby -S " if defined?(JRUBY_VERSION)}cucumber features/#{feature}.feature`

      self.exit_status = $?.exitstatus
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
surgical_strike-0.7.7 features/support/feature_runner.rb
surgical_strike-0.7.6 features/support/feature_runner.rb
surgical_strike-0.7.5 features/support/feature_runner.rb
surgical_strike-0.7.4 features/support/feature_runner.rb