class Cucumber::Core::Compiler::ScenarioOutlineCompiler

@private

Attributes

receiver[R]
source[R]

Public Class Methods

new(source, receiver) click to toggle source
# File lib/cucumber/core/compiler.rb, line 106
def initialize(source, receiver)
  @source   = source
  @receiver = receiver
end

Public Instance Methods

examples_table(examples_table, &descend) click to toggle source
# File lib/cucumber/core/compiler.rb, line 116
def examples_table(examples_table, &descend)
  @examples_table = examples_table
  descend.call(self)
  self
end
examples_table_row(row) click to toggle source
# File lib/cucumber/core/compiler.rb, line 122
def examples_table_row(row)
  steps(row).each do |step|
    receiver.on_step(source + [@examples_table, row, step])
  end
  receiver.on_test_case(source + [@examples_table, row])
  self
end
outline_step(outline_step) click to toggle source
# File lib/cucumber/core/compiler.rb, line 111
def outline_step(outline_step)
  outline_steps << outline_step
  self
end

Private Instance Methods

outline_steps() click to toggle source
# File lib/cucumber/core/compiler.rb, line 136
def outline_steps
  @outline_steps ||= []
end
steps(row) click to toggle source
# File lib/cucumber/core/compiler.rb, line 132
def steps(row)
  outline_steps.map { |s| s.to_step(row) }
end