aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test/template/digestor_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionview/test/template/digestor_test.rb')
-rw-r--r--actionview/test/template/digestor_test.rb31
1 files changed, 25 insertions, 6 deletions
diff --git a/actionview/test/template/digestor_test.rb b/actionview/test/template/digestor_test.rb
index 2406a64310..72d1f43f12 100644
--- a/actionview/test/template/digestor_test.rb
+++ b/actionview/test/template/digestor_test.rb
@@ -15,23 +15,39 @@ end
class FixtureFinder
FIXTURES_DIR = "#{File.dirname(__FILE__)}/../fixtures/digestor"
- attr_reader :details
+ attr_reader :details
+ attr_accessor :formats
+ attr_accessor :variants
def initialize
- @details = {}
+ @details = {}
+ @formats = []
+ @variants = []
end
def details_key
details.hash
end
- def find(logical_name, keys, partial, options)
- partial_name = partial ? logical_name.gsub(%r|/([^/]+)$|, '/_\1') : logical_name
- format = options[:formats].first.to_s
- format += "+#{options[:variants].first}" if options[:variants].any?
+ def find(name, prefixes = [], partial = false, keys = [], options = {})
+ partial_name = partial ? name.gsub(%r|/([^/]+)$|, '/_\1') : name
+ format = @formats.first.to_s
+ format += "+#{@variants.first}" if @variants.any?
FixtureTemplate.new("digestor/#{partial_name}.#{format}.erb")
end
+
+ def disable_cache(&block)
+ yield
+ end
+
+ def with_formats_and_variants(new_formats, new_variants)
+ old_formats, old_variants = formats, variants
+ self.formats, self.variants = new_formats, new_variants
+ yield
+ ensure
+ self.formats, self.variants = old_formats, old_variants
+ end
end
class TemplateDigestorTest < ActionView::TestCase
@@ -286,6 +302,9 @@ class TemplateDigestorTest < ActionView::TestCase
def digest(template_name, options = {})
options = options.dup
+ finder.formats = [:html]
+ finder.variants = [options[:variant]] if options[:variant].present?
+
ActionView::Digestor.digest({ name: template_name, format: :html, finder: finder }.merge(options))
end