# File lib/cucumber/cli/main.rb, line 24
24: def execute(args)
25: new(args).execute!(step_mother)
26: end
# File lib/cucumber/cli/main.rb, line 29
29: def initialize(args, out_stream = STDOUT, error_stream = STDERR)
30: @args = args
31: if Cucumber::WINDOWS_MRI
32: @out_stream = out_stream == STDOUT ? Formatter::ColorIO.new(Kernel, STDOUT) : out_stream
33: else
34: @out_stream = out_stream
35: end
36:
37: @error_stream = error_stream
38: @configuration = nil
39: end
# File lib/cucumber/cli/main.rb, line 74
74: def configuration
75: return @configuration if @configuration
76:
77: @configuration = Configuration.new(@out_stream, @error_stream)
78: @configuration.parse!(@args)
79: @configuration
80: end
# File lib/cucumber/cli/main.rb, line 41
41: def execute!(step_mother)
42: trap_interrupt
43: if configuration.drb?
44: begin
45: return DRbClient.run(@args, @error_stream, @out_stream, configuration.drb_port)
46: rescue DRbClientError => e
47: @error_stream.puts "WARNING: #{e.message} Running features locally:"
48: end
49: end
50: step_mother.options = configuration.options
51: step_mother.log = configuration.log
52:
53: step_mother.load_code_files(configuration.support_to_load)
54: step_mother.after_configuration(configuration)
55: features = step_mother.load_plain_text_features(configuration.feature_files)
56: step_mother.load_code_files(configuration.step_defs_to_load)
57:
58: runner = configuration.build_runner(step_mother, @out_stream)
59: step_mother.visitor = runner # Needed to support World#announce
60:
61: runner.visit_features(features)
62:
63: failure = if configuration.wip?
64: step_mother.scenarios(:passed).any?
65: else
66: step_mother.scenarios(:failed).any? ||
67: (configuration.strict? && (step_mother.steps(:undefined).any? || step_mother.steps(:pending).any?))
68: end
69: rescue ProfilesNotDefinedError, YmlLoadError, ProfileNotFound => e
70: @error_stream.puts e.message
71: true
72: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.