Sha256: 189d92ee33cb98ceb040febbbca471d241ac553143de24ef87349a36b0d5e800

Contents?: true

Size: 1.94 KB

Versions: 18

Compression:

Stored size: 1.94 KB

Contents

require 'test_helper'

# Tests for f.input_field
class InputFieldTest < ActionView::TestCase
  test "builder input_field should only render the input tag, nothing else" do
    with_concat_form_for(@user) do |f|
      f.input_field :name
    end
    assert_select 'form > input.required.string'
    assert_no_select 'div.string'
    assert_no_select 'label'
    assert_no_select '.hint'
  end

  test 'builder input_field should allow overriding default input type' do
    with_concat_form_for(@user) do |f|
      f.input_field :name, :as => :text
    end

    assert_no_select 'input#user_name'
    assert_select 'textarea#user_name.text'
  end

  test 'builder input_field should allow passing options to input tag' do
    with_concat_form_for(@user) do |f|
      f.input_field :name, :id => 'name_input', :class => 'name'
    end

    assert_select 'input.string.name#name_input'
  end

  test 'builder input_field should not modify the options hash' do
    options = { :id => 'name_input', :class => 'name' }

    with_concat_form_for(@user) do |f|
      f.input_field :name, options
    end

    assert_select 'input.string.name#name_input'
    assert_equal({ :id => 'name_input', :class => 'name' }, options)
  end


  test 'builder input_field should generate an input tag with a clean HTML' do
    with_concat_form_for(@user) do |f|
      f.input_field :name, :as => :integer, :class => 'name'
    end

    assert_no_select 'input.integer[input_html]'
    assert_no_select 'input.integer[as]'
  end

  test 'builder collection input_field should generate input tag with a clean HTML' do
    with_concat_form_for(@user) do |f|
      f.input_field :status, :collection => ['Open', 'Closed'], :class => 'status', :label_method => :to_s, :value_method => :to_s
    end

    assert_no_select 'select.status[input_html]'
    assert_no_select 'select.status[collection]'
    assert_no_select 'select.status[label_method]'
    assert_no_select 'select.status[value_method]'
  end
end

Version data entries

18 entries across 18 versions & 5 rubygems

Version Path
simple_form_awesome-2.5.0 test/form_builder/input_field_test.rb
simple_form_awesome-2.4.0 test/form_builder/input_field_test.rb
simple_form_awesome-2.3.0 test/form_builder/input_field_test.rb
simple_form_awesome-2.2.0 test/form_builder/input_field_test.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.4/test/form_builder/input_field_test.rb
simple_form-2.0.4 test/form_builder/input_field_test.rb
simple_form-2.0.3 test/form_builder/input_field_test.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.2/test/form_builder/input_field_test.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.2/test/form_builder/input_field_test.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.2/test/form_builder/input_field_test.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.2/test/form_builder/input_field_test.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/simple_form-2.0.2/test/form_builder/input_field_test.rb
simple_form-2.0.2 test/form_builder/input_field_test.rb
ehoch_simple_form-2.0.2.dev test/form_builder/input_field_test.rb
simple_form_with_client_validation-0.0.2 test/form_builder/input_field_test.rb
simple_form_with_client_validation-0.0.0 test/form_builder/input_field_test.rb
simple_form-2.0.1 test/form_builder/input_field_test.rb
simple_form-2.0.0 test/form_builder/input_field_test.rb