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.



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

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.



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

def step_builders
  @step_builders
end

Instance Method Details

#childrenObject



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

def children
  step_builders
end

#result(language) ⇒ Object



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

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

#steps(language) ⇒ Object



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

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