Merge pull request #905 from yegortimoschenko/tilt-2-compat

Tilt 2 compat
This commit is contained in:
Konstantin Haase 2014-07-22 20:21:15 +02:00
commit 268de1cf99
3 changed files with 15 additions and 5 deletions

View File

@ -769,9 +769,16 @@ module Sinatra
# named name.ext, where ext is registered on engine.
def find_template(views, name, engine)
yield ::File.join(views, "#{name}.#{@preferred_extension}")
Tilt.mappings.each do |ext, engines|
next unless ext != @preferred_extension and engines.include? engine
yield ::File.join(views, "#{name}.#{ext}")
if Tilt.respond_to?(:mappings)
Tilt.mappings.each do |ext, engines|
next unless ext != @preferred_extension and engines.include? engine
yield ::File.join(views, "#{name}.#{ext}")
end
else
Tilt.default_mapping.extensions_for(engine).each do |ext|
yield ::File.join(views, "#{name}.#{ext}") unless ext == @preferred_extension
end
end
end

View File

@ -14,6 +14,6 @@ Gem::Specification.new 'sinatra', Sinatra::VERSION do |s|
s.rdoc_options = %w[--line-numbers --inline-source --title Sinatra --main README.rdoc --encoding=UTF-8]
s.add_dependency 'rack', '~> 1.4'
s.add_dependency 'tilt', '~> 1.3', '>= 1.3.4'
s.add_dependency 'tilt', '>= 1.3', '< 3'
s.add_dependency 'rack-protection', '~> 1.4'
end

View File

@ -69,8 +69,11 @@ MarkdownTest = proc do
end
# Will generate RDiscountTest, KramdownTest, etc.
Tilt.mappings['md'].each do |t|
map = Tilt.respond_to?(:lazy_map) ? Tilt.lazy_map['md'].map(&:first) : Tilt.mappings['md']
map.each do |t|
begin
t = eval(t) if t.is_a? String
t.new { "" }
klass = Class.new(Test::Unit::TestCase) { define_method(:engine) { t }}
klass.class_eval(&MarkdownTest)