Sha256: cc0672c7429892bc813627273e9de18a81c99d26e8b5182e1e684503b4da0cc5
Contents?: true
Size: 1022 Bytes
Versions: 1
Compression:
Stored size: 1022 Bytes
Contents
$:.unshift File.join(File.dirname(__FILE__), *%w[.. lib]) require 'redcloth' require 'yaml' def examples_from_yaml(&block) formatter = description.downcase define_method("format_as_#{formatter}", &block) fixtures.each do |name, doc| if doc[formatter] example("should output #{formatter} for #{name}") do output = method("format_as_#{formatter}").call(doc) expect(output).to eq(doc[formatter]) end else example("should not raise errors when rendering #{formatter} for #{name}") do expect { method("format_as_#{formatter}").call(doc) }.not_to raise_error end end end end def fixtures return @fixtures if @fixtures @fixtures = {} Dir[File.join(File.dirname(__FILE__), *%w[fixtures *.yml])].each do |testfile| testgroup = File.basename(testfile, '.yml') num = 0 YAML::load_stream(File.open(testfile)) do |doc| name = doc['name'] || num @fixtures["#{testgroup} #{name}"] = doc num += 1 end end @fixtures end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
RedCloth-4.3.4 | spec/spec_helper.rb |