Sha256: 0942c643a4e6f7b377f86d701b305ca1deb1080b1d20a5ce3bcca9c0d69fa3d1
Contents?: true
Size: 855 Bytes
Versions: 15
Compression:
Stored size: 855 Bytes
Contents
require 'gherkin' module Gherkin module Tools # Base class for file based operations class Files include Enumerable def initialize(paths) raise "Please specify one or more paths" if paths.empty? @paths = paths end def each(&proc) globs = @paths.map do |path| raise "#{path} does not exist" unless File.exist?(path) File.directory?(path) ? File.join(path, '**', '*.feature') : path end Dir[*globs].uniq.sort.each(&proc) end def scan(file, listener) parser = Gherkin::Parser::Parser.new(listener, true, "root") lexer = Gherkin::I18nLexer.new(parser, false) begin lexer.scan(IO.read(file), file, 0) rescue => e e.message << " (#{file})" raise e end end end end end
Version data entries
15 entries across 15 versions & 1 rubygems