Sha256: bcb6f90181dde44da46dfc77881757b2d937486d09edf8881ea637b2092eaab4
Contents?: true
Size: 1.02 KB
Versions: 1
Compression:
Stored size: 1.02 KB
Contents
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__) require 'gisele' require 'epath' def capture_io stdout, stderr = $stdout, $stderr $stdout, $stderr = StringIO.new, StringIO.new yield [$stdout.string, $stderr.string] ensure $stdout, $stderr = stdout, stderr end module SpecHelpers def parse(text, rule, consume = true) grammar = Gisele::Language::Grammar grammar.parse(text, :root => rule, :consume => consume) end def ast(text, rule, consume = true) ast = parse(text, rule, consume).to_ast unless sexp_grammar[rule] === ast raise "expected #{ast} to match #{rule} (#{text})" end ast end def fixtures_dir (Path.dir/:fixtures) end def fixture_files(glob) fixtures_dir.glob(glob) end def sexp_grammar Gisele::Language end def simple_ast Gisele::ast(fixtures_dir/:tasks/"simple.gis") end def complete_ast Gisele::ast(fixtures_dir/:tasks/"complete.gis") end end RSpec.configure do |c| c.extend SpecHelpers c.include SpecHelpers end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
gisele-0.5.0 | spec/spec_helper.rb |