aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Chelimsky <dchelimsky@gmail.com>2010-05-02 10:04:32 -0500
committerJosé Valim <jose.valim@gmail.com>2010-05-02 22:45:54 +0200
commit8672a97e11b1a3697b0147b83fd1f812395997a1 (patch)
tree4d3f8173760ddc3afdd7d0a465c08e5f577aecda
parenta3044967ed48e27104e8c97719c798ee2f416846 (diff)
downloadrails-8672a97e11b1a3697b0147b83fd1f812395997a1.tar.gz
rails-8672a97e11b1a3697b0147b83fd1f812395997a1.tar.bz2
rails-8672a97e11b1a3697b0147b83fd1f812395997a1.zip
add NullResolver
[#4523 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
-rw-r--r--actionpack/lib/action_view/testing/resolvers.rb8
-rw-r--r--actionpack/test/template/testing/null_resolver_test.rb12
2 files changed, 20 insertions, 0 deletions
diff --git a/actionpack/lib/action_view/testing/resolvers.rb b/actionpack/lib/action_view/testing/resolvers.rb
index f468e57c26..578c56c6c4 100644
--- a/actionpack/lib/action_view/testing/resolvers.rb
+++ b/actionpack/lib/action_view/testing/resolvers.rb
@@ -31,5 +31,13 @@ module ActionView #:nodoc:
templates.sort_by {|t| -t.identifier.match(/^#{query}$/).captures.reject(&:blank?).size }
end
end
+
+ class NullResolver < ActionView::PathResolver
+ def query(path, exts, formats)
+ handler, format = extract_handler_and_format(path, formats)
+ [ActionView::Template.new("Template generated by Null Resolver", path, handler, :virtual_path => path, :format => format)]
+ end
+ end
+
end
diff --git a/actionpack/test/template/testing/null_resolver_test.rb b/actionpack/test/template/testing/null_resolver_test.rb
new file mode 100644
index 0000000000..e142506e6a
--- /dev/null
+++ b/actionpack/test/template/testing/null_resolver_test.rb
@@ -0,0 +1,12 @@
+require 'abstract_unit'
+
+class NullResolverTest < ActiveSupport::TestCase
+ def test_should_return_template_for_any_path
+ resolver = ActionView::NullResolver.new()
+ templates = resolver.find_all("path", "arbitrary", false, {:locale => [], :formats => [:html], :handlers => []})
+ assert_equal 1, templates.size, "expected one template"
+ assert_equal "Template generated by Null Resolver", templates.first.source
+ assert_equal "arbitrary/path", templates.first.virtual_path
+ assert_equal [:html], templates.first.formats
+ end
+end