aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/application
diff options
context:
space:
mode:
authorSantiago Pastorino <santiago@wyeworks.com>2014-12-01 18:01:49 -0200
committerSantiago Pastorino <santiago@wyeworks.com>2014-12-01 18:01:49 -0200
commitcd77755ae46616f24ae0ad2e586be528bb326be1 (patch)
tree6b47221dbeaf4b3fe27fb3b8dec412f10de3f87a /railties/test/application
parente47b523fae8680d71178297f7e913099430d5f2a (diff)
parenta04c0619617118433db6e01b67d5d082eaaa0189 (diff)
downloadrails-cd77755ae46616f24ae0ad2e586be528bb326be1.tar.gz
rails-cd77755ae46616f24ae0ad2e586be528bb326be1.tar.bz2
rails-cd77755ae46616f24ae0ad2e586be528bb326be1.zip
Merge pull request #17866 from bogdan/default-form-builder
Bugfix config.action_view.default_form_builder option
Diffstat (limited to 'railties/test/application')
-rw-r--r--railties/test/application/configuration_test.rb39
1 files changed, 39 insertions, 0 deletions
diff --git a/railties/test/application/configuration_test.rb b/railties/test/application/configuration_test.rb
index 1f97807f8c..f24fe36670 100644
--- a/railties/test/application/configuration_test.rb
+++ b/railties/test/application/configuration_test.rb
@@ -494,6 +494,45 @@ module ApplicationTests
assert last_response.body =~ /csrf\-param/
end
+ test "default form builder specified as a string" do
+
+ app_file 'config/initializers/form_builder.rb', <<-RUBY
+ class CustomFormBuilder < ActionView::Helpers::FormBuilder
+ def text_field(attribute, *args)
+ label(attribute) + super(attribute, *args)
+ end
+ end
+ Rails.configuration.action_view.default_form_builder = "CustomFormBuilder"
+ RUBY
+
+ app_file 'app/models/post.rb', <<-RUBY
+ class Post
+ include ActiveModel::Model
+ attr_accessor :name
+ end
+ RUBY
+
+
+ app_file 'app/controllers/posts_controller.rb', <<-RUBY
+ class PostsController < ApplicationController
+ def index
+ render inline: "<%= begin; form_for(Post.new) {|f| f.text_field(:name)}; rescue => e; e.to_s; end %>"
+ end
+ end
+ RUBY
+
+ add_to_config <<-RUBY
+ routes.prepend do
+ resources :posts
+ end
+ RUBY
+
+ require "#{app_path}/config/environment"
+
+ get "/posts"
+ assert_match(/label/, last_response.body)
+ end
+
test "default method for update can be changed" do
app_file 'app/models/post.rb', <<-RUBY
class Post