Sha256: f66e5a33e8bf571de5de58e3288916fa149d67f03aca33867802425a5496a03c

Contents?: true

Size: 847 Bytes

Versions: 562

Compression:

Stored size: 847 Bytes

Contents

class StepsBuilder
  def initialize
    @steps = []
  end

  def step(content, generator)
    @steps << "    Given #{content}"
    if(rand(5) == 0)
      cols = rand(8) + 1
      rows = rand(10)
      rows.times do
        row = "      |"
        cols.times do
          row << generator.table_cell << "|"
        end
        @steps << row
      end
    end
  end

  def to_s
    @steps.join("\n")
  end
end

class FeatureBuilder
  def initialize(name, &block)
    @name = name
    @scenarios = {}
    block.call(self)
  end

  def scenario(name, &block)
    @scenarios[name] = StepsBuilder.new
    block.call(@scenarios[name])
  end

  def to_s
    str = "Feature: #{@name}\n"
    @scenarios.each do |scenario, steps|
      str += "\n"
      str += "  Scenario: #{scenario}\n"
      str += steps.to_s
      str += "\n"
    end
    str
  end
end

Version data entries

562 entries across 555 versions & 11 rubygems

Version Path
honeybadger-2.4.0 vendor/gems/ruby/1.9.1/gems/gherkin-2.12.2/tasks/bench/feature_builder.rb
honeybadger-2.4.0 vendor/gems/ruby/2.1.0/gems/gherkin-2.12.2/tasks/bench/feature_builder.rb
honeybadger-2.4.0 vendor/gems/ruby/2.2.0/gems/gherkin-2.12.2/tasks/bench/feature_builder.rb
gherkin-2.12.2 tasks/bench/feature_builder.rb
gherkin-2.12.2-x86-mswin32 tasks/bench/feature_builder.rb
gherkin-2.12.2-x86-mingw32 tasks/bench/feature_builder.rb
gherkin-2.12.2-java tasks/bench/feature_builder.rb
candlepin-api-0.4.0 bundle/ruby/1.9.1/gems/gherkin-2.11.1/tasks/bench/feature_builder.rb
candlepin-api-0.4.0 bundle/ruby/gems/gherkin-2.11.1/tasks/bench/feature_builder.rb
candlepin-api-0.4.0 bundle/ruby/1.8/gems/gherkin-2.11.1/tasks/bench/feature_builder.rb
gherkin-2.12.1 tasks/bench/feature_builder.rb
gherkin-2.12.1-x86-mswin32 tasks/bench/feature_builder.rb
gherkin-2.12.1-x86-mingw32 tasks/bench/feature_builder.rb
gherkin-2.12.1-java tasks/bench/feature_builder.rb
librarian-puppet-0.9.9 vendor/gems/ruby/1.9.1/gems/gherkin-2.11.6/tasks/bench/feature_builder.rb
gherkin-2.12.0 tasks/bench/feature_builder.rb
gherkin-2.12.0-x86-mingw32 tasks/bench/feature_builder.rb
gherkin-2.12.0-x86-mswin32 tasks/bench/feature_builder.rb
gherkin-2.12.0-java tasks/bench/feature_builder.rb
gherkin-2.11.8 tasks/bench/feature_builder.rb