aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/lib/action_view/test_case.rb
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2017-08-03 16:22:58 -0400
committerRafael Mendonça França <rafaelmfranca@gmail.com>2017-08-03 16:40:18 -0400
commit422ec4cb78cc9c10af97ddf958d477ce604b4506 (patch)
tree8244c4144f08116ceba495fd2ca873a25a28c530 /actionview/lib/action_view/test_case.rb
parentd84a126d25df038f6384eb584af37855552a7a4d (diff)
downloadrails-422ec4cb78cc9c10af97ddf958d477ce604b4506.tar.gz
rails-422ec4cb78cc9c10af97ddf958d477ce604b4506.tar.bz2
rails-422ec4cb78cc9c10af97ddf958d477ce604b4506.zip
Make sure Action View doesn't break with Active Storage
When Active Storage is not loaded and direct_upload is used on file_field_tag we should not raise an exception.
Diffstat (limited to 'actionview/lib/action_view/test_case.rb')
-rw-r--r--actionview/lib/action_view/test_case.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/actionview/lib/action_view/test_case.rb b/actionview/lib/action_view/test_case.rb
index efe8c87b9b..6913c31a20 100644
--- a/actionview/lib/action_view/test_case.rb
+++ b/actionview/lib/action_view/test_case.rb
@@ -281,6 +281,18 @@ module ActionView
super
end
end
+
+ def respond_to_missing?(name, include_private = false)
+ begin
+ routes = @controller.respond_to?(:_routes) && @controller._routes
+ rescue
+ # Dont call routes, if there is an error on _routes call
+ end
+
+ routes &&
+ (routes.named_routes.route_defined?(name) ||
+ routes.mounted_helpers.method_defined?(name))
+ end
end
include Behavior