Sha256: f1435312b49b9158ddc05e734610458abe825fe3db3b101d58cbc3814a416a76
Contents?: true
Size: 835 Bytes
Versions: 2
Compression:
Stored size: 835 Bytes
Contents
# frozen_string_literal: true require 'minitest/autorun' require 'json' require 'faml' class HamlTest < Minitest::Test contexts = JSON.parse(File.read(File.join(__dir__, 'haml-spec', 'tests.json'))) contexts.each do |context| context[1].each do |name, test| define_method("test_spec: #{name} (#{context[0]})") do html = test['html'] haml = test['haml'] locals = Hash[(test['locals'] || {}).map { |x, y| [x.to_sym, y] }] options = Hash[(test['config'] || {}).map { |x, y| [x.to_sym, y] }] options[:format] = options[:format].to_sym if options.key?(:format) tilt = Tilt.new("#{name}.haml", nil, options) { haml } result = tilt.render(Object.new, locals) assert_equal html, result.strip end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
faml-0.8.1 | haml_spec_test.rb |
faml-0.8.0 | haml_spec_test.rb |