Sha256: 5cf103d7fe04152c94b683010b75d6a93bef0ecf1ff5b1de78663c1b68767c7e

Contents?: true

Size: 803 Bytes

Versions: 1

Compression:

Stored size: 803 Bytes

Contents

module Turnip
  def self.run(content)
    builder = Turnip::Builder.new
    formatter = Gherkin::Formatter::TagCountFormatter.new(builder, {})
    parser = Gherkin::Parser::Parser.new(formatter, true, "root", false)
    parser.parse(content, nil, 0)

    builder.features.each do |feature|
      describe feature.name do
        feature.backgrounds.each do |background|
          before do
            background.steps.each do |step|
              Turnip::Steps.execute_step(self, step.name)
            end
          end
        end
        feature.scenarios.each do |scenario|
          it scenario.name, scenario.metadata_hash do
            scenario.steps.each do |step|
              Turnip::Steps.execute_step(self, step.name)
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
turnip-0.1.0 lib/turnip/run.rb