test/jbuilder_template_test.rb in jbuilder-2.6.0 vs test/jbuilder_template_test.rb in jbuilder-2.6.1
- old
+ new
@@ -384,9 +384,38 @@
json.name "Cache"
end
JBUILDER
end
+ test "caching root structure" do
+ undef_context_methods :fragment_name_with_digest, :cache_fragment_name
+
+ cache_miss_result = jbuild <<-JBUILDER
+ json.cache_root! "cachekey" do
+ json.name "Miss"
+ end
+ JBUILDER
+
+ cache_hit_result = jbuild <<-JBUILDER
+ json.cache_root! "cachekey" do
+ json.name "Hit"
+ end
+ JBUILDER
+
+ assert_equal cache_miss_result, cache_hit_result
+ end
+
+ test "failing to cache root after attributes have been defined" do
+ assert_raises ActionView::Template::Error, "cache_root! can't be used after JSON structures have been defined" do
+ jbuild <<-JBUILDER
+ json.name "Kaboom"
+ json.cache_root! "cachekey" do
+ json.name "Miss"
+ end
+ JBUILDER
+ end
+ end
+
test "does not perform caching when controller.perform_caching is false" do
controller.perform_caching = false
jbuild <<-JBUILDER
json.cache! "cachekey" do