Sha256: 692c4a7ee62681fcb51f05e9c986eba9d77fc0814f71b390ce1f52d0ac4338ec
Contents?: true
Size: 862 Bytes
Versions: 2
Compression:
Stored size: 862 Bytes
Contents
require 'gherkin/formatter/json_formatter' require 'gherkin/parser/parser' module Gherkin::Formatter class JSONFormatter def to_hash @feature_hash end end end module Wally class ListsFeatures def initialize feature_path @feature_path = feature_path end def features features = [] Dir.glob("#{@feature_path}/*.feature").each do |path| gherkinese = parse_gherkin(File.read(path)) gherkinese["path"] = path features << gherkinese end features.sort {|a,b| a["name"] <=> b["name"]} end private def parse_gherkin(text) io = StringIO.new formatter = Gherkin::Formatter::JSONFormatter.new(io) parser = Gherkin::Parser::Parser.new(formatter, false, 'root') parser.parse(text, nil, 0) hash = formatter.to_hash hash end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
wally-0.0.19 | lib/wally/lists_features.rb |
wally-0.0.18 | lib/wally/lists_features.rb |