diff options
Diffstat (limited to 'actionpack/test/activerecord/form_helper_activerecord_test.rb')
-rw-r--r-- | actionpack/test/activerecord/form_helper_activerecord_test.rb | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/actionpack/test/activerecord/form_helper_activerecord_test.rb b/actionpack/test/activerecord/form_helper_activerecord_test.rb deleted file mode 100644 index 2e302c65a7..0000000000 --- a/actionpack/test/activerecord/form_helper_activerecord_test.rb +++ /dev/null @@ -1,91 +0,0 @@ -require 'active_record_unit' -require 'fixtures/project' -require 'fixtures/developer' - -class FormHelperActiveRecordTest < ActionView::TestCase - tests ActionView::Helpers::FormHelper - - def form_for(*) - @output_buffer = super - end - - def setup - @developer = Developer.new - @developer.id = 123 - @developer.name = "developer #123" - - @project = Project.new - @project.id = 321 - @project.name = "project #321" - @project.save - - @developer.projects << @project - @developer.save - end - - def teardown - Project.delete(321) - Developer.delete(123) - end - - Routes = ActionDispatch::Routing::RouteSet.new - Routes.draw do - resources :developers do - resources :projects - end - end - - def _routes - Routes - end - - include Routes.url_helpers - - def test_nested_fields_for_with_child_index_option_override_on_a_nested_attributes_collection_association - form_for(@developer) do |f| - concat f.fields_for(:projects, @developer.projects.first, :child_index => 'abc') { |cf| - concat cf.text_field(:name) - } - end - - expected = whole_form('/developers/123', 'edit_developer_123', 'edit_developer', :method => 'patch') do - '<input id="developer_projects_attributes_abc_name" name="developer[projects_attributes][abc][name]" type="text" value="project #321" />' + - '<input id="developer_projects_attributes_abc_id" name="developer[projects_attributes][abc][id]" type="hidden" value="321" />' - end - - assert_dom_equal expected, output_buffer - end - - protected - - def hidden_fields(method = nil) - txt = %{<div style="margin:0;padding:0;display:inline">} - txt << %{<input name="utf8" type="hidden" value="✓" />} - if method && !%w(get post).include?(method.to_s) - txt << %{<input name="_method" type="hidden" value="#{method}" />} - end - txt << %{</div>} - end - - def form_text(action = "/", id = nil, html_class = nil, remote = nil, multipart = nil, method = nil) - txt = %{<form accept-charset="UTF-8" action="#{action}"} - txt << %{ enctype="multipart/form-data"} if multipart - txt << %{ data-remote="true"} if remote - txt << %{ class="#{html_class}"} if html_class - txt << %{ id="#{id}"} if id - method = method.to_s == "get" ? "get" : "post" - txt << %{ method="#{method}">} - end - - def whole_form(action = "/", id = nil, html_class = nil, options = nil) - contents = block_given? ? yield : "" - - if options.is_a?(Hash) - method, remote, multipart = options.values_at(:method, :remote, :multipart) - else - method = options - end - - form_text(action, id, html_class, remote, multipart, method) + hidden_fields(method) + contents + "</form>" - end -end
\ No newline at end of file |