Class: Cucumber::Core::Gherkin::AstBuilder::ScenarioBuilder

Inherits:
Builder
  • Object
show all
Defined in:
lib/cucumber/core/gherkin/ast_builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Builder

#handle_comments

Constructor Details

#initializeScenarioBuilder

Returns a new instance of ScenarioBuilder.



193
194
195
196
# File 'lib/cucumber/core/gherkin/ast_builder.rb', line 193

def initialize(*)
  super
  @step_builders = attributes[:steps].map { |step| StepBuilder.new(file, step) }
end

Instance Attribute Details

#step_buildersObject (readonly)

Returns the value of attribute step_builders.



191
192
193
# File 'lib/cucumber/core/gherkin/ast_builder.rb', line 191

def step_builders
  @step_builders
end

Instance Method Details

#childrenObject



214
215
216
# File 'lib/cucumber/core/gherkin/ast_builder.rb', line 214

def children
  step_builders
end

#result(language) ⇒ Object



198
199
200
201
202
203
204
205
206
207
208
# File 'lib/cucumber/core/gherkin/ast_builder.rb', line 198

def result(language)
  Ast::Scenario.new(
    location,
    comments,
    tags,
    keyword,
    name,
    description,
    steps(language)
  )
end

#steps(language) ⇒ Object



210
211
212
# File 'lib/cucumber/core/gherkin/ast_builder.rb', line 210

def steps(language)
  step_builders.map { |builder| builder.result(language) }
end