Class: Cucumber::Rake::Task::InProcessCucumberRunner

Inherits:
Object
  • Object
show all
Includes:
Rake::DSL
Defined in:
lib/cucumber/rake/task.rb

Overview

:nodoc:

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(libs, cucumber_opts, feature_files) ⇒ InProcessCucumberRunner

Returns a new instance of InProcessCucumberRunner.



34
35
36
37
38
39
40
41
42
# File 'lib/cucumber/rake/task.rb', line 34

def initialize(libs, cucumber_opts, feature_files)
  raise 'libs must be an Array when running in-process' unless libs.instance_of? Array

  libs.reverse_each { |lib| $LOAD_PATH.unshift(lib) }
  @args = (
    cucumber_opts +
    feature_files
  ).flatten.compact
end

Instance Attribute Details

#argsObject (readonly)

Returns the value of attribute args.



32
33
34
# File 'lib/cucumber/rake/task.rb', line 32

def args
  @args
end

Instance Method Details

#runObject



44
45
46
47
48
# File 'lib/cucumber/rake/task.rb', line 44

def run
  require 'cucumber/cli/main'
  failure = Cucumber::Cli::Main.execute(args)
  raise 'Cucumber failed' if failure
end