class Cucumber::Gherkin::DataTableParser
Public Class Methods
new(builder)
click to toggle source
# File lib/cucumber/gherkin/data_table_parser.rb, line 10 def initialize(builder) @builder = builder end
Public Instance Methods
feature_header()
click to toggle source
# File lib/cucumber/gherkin/data_table_parser.rb, line 24 def feature_header dialect = ::Gherkin::Dialect.for('en') %(#{dialect.feature_keywords[0]}: #{dialect.scenario_keywords[0]}: #{dialect.given_keywords[0]} x ) end
parse(text)
click to toggle source
# File lib/cucumber/gherkin/data_table_parser.rb, line 14 def parse(text) token_scanner = ::Gherkin::TokenScanner.new(feature_header + text) parser = ::Gherkin::Parser.new gherkin_document = parser.parse(token_scanner) gherkin_document[:feature][:children][0][:steps][0][:argument][:rows].each do |row| @builder.row(row[:cells].map { |cell| cell[:value] }) end end