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