require 'test_helper' class BootstrapFieldsTest < ActionView::TestCase include BootstrapForm::Helper def setup setup_test_fixture end test "color fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.color_field(:misc) end test "date fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.date_field(:misc) end test "date time fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.datetime_field(:misc) end test "date time local fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.datetime_local_field(:misc) end test "email fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.email_field(:misc) end test "file fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.file_field(:misc) end test "hidden fields are supported" do expected = %{} assert_equal expected, @builder.hidden_field(:misc) end test "month local fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.month_field(:misc) end test "number fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.number_field(:misc) end test "password fields are wrapped correctly" do expected = %{
A good password should be at least six characters long
} assert_equal expected, @builder.password_field(:password) end test "phone/telephone fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.phone_field(:misc) assert_equal expected, @builder.telephone_field(:misc) end test "range fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.range_field(:misc) end test "search fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.search_field(:misc) end test "text areas are wrapped correctly" do expected = %{
} assert_equal expected, @builder.text_area(:comments) end test "text fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.text_field(:email) end test "time fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.time_field(:misc) end test "url fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.url_field(:misc) end test "week fields are wrapped correctly" do expected = %{
} assert_equal expected, @builder.week_field(:misc) end test "bootstrap_form_for helper works for associations" do @user.address = Address.new(street: '123 Main Street') output = bootstrap_form_for(@user) do |f| f.fields_for :address do |af| af.text_field(:street) end end expected = %{
} assert_equal expected, output end test "bootstrap_form_for helper works for serialized hash attributes" do @user.preferences = { favorite_color: "cerulean" } output = bootstrap_form_for(@user) do |f| f.fields_for :preferences do |builder| builder.text_field :favorite_color, value: @user.preferences[:favorite_color] end end expected = %{
} assert_equal expected, output end test "fields_for correctly passes horizontal style from parent builder" do @user.address = Address.new(street: '123 Main Street') output = bootstrap_form_for(@user, layout: :horizontal, label_col: 'col-sm-2', control_col: 'col-sm-10') do |f| f.fields_for :address do |af| af.text_field(:street) end end expected = %{
} assert_equal expected, output end test "fields_for correctly passes inline style from parent builder" do @user.address = Address.new(street: '123 Main Street') output = bootstrap_form_for(@user, layout: :inline) do |f| f.fields_for :address do |af| af.text_field(:street) end end expected = %{
} assert_equal expected, output end end