simple_form 3.0.3 → 3.0.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of simple_form might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 152972033f17ccec7bdd5545b5b22cecb7c6a3a9
4
- data.tar.gz: b678a95634ea7b3738d4c1974bd7247042f5480e
3
+ metadata.gz: ffed0afbf1694b8176a255206fc6d658e4a539af
4
+ data.tar.gz: 7af2a7a0199551b2b17491d9510c2477aa125265
5
5
  SHA512:
6
- metadata.gz: fe032128b5adddd88304b1217343d8eacc708c3ba09ea780c4bfd95402ec1ca139bdfee16b416bb4f65815a86586f9387376852e36aa82310ce7ef0d3cc3ed02
7
- data.tar.gz: 118b632667f29674415488c07c3c881fd5f89746cf3d66764cc6e8ae597b9a04e67f2a89cf592d856abae6d2e0b213429942c7bd9f193e92840a4ea7cd11faf7
6
+ metadata.gz: bbf22389176622fe689c4d401526d5c973124245cb3b587b3ff2428053377930a358c31eaf8088ffb2b030cef016d0b59ee790984fdedd1219c4d3daab76ff23
7
+ data.tar.gz: a3e826bd625da954e73d5df1cfe546117024c5b7eb08a1ea9eb37e187e25b3479d9549a13b6e853520e68e8eb3d54ed1ead89e2f0de7318df3478d624654c611
@@ -1,3 +1,9 @@
1
+ ## 3.0.4
2
+
3
+ ### bug fix
4
+ * Fix method reflection for Ruby 2.1+. [@badosu](https://github.com/badosu)
5
+ * Do not remove HTML attributes if components are not present.
6
+
1
7
  ## 3.0.3
2
8
 
3
9
  ### bug fix
@@ -136,11 +136,13 @@ module SimpleForm
136
136
  # name="user[name]" type="text" value="Carlos" />
137
137
  #
138
138
  def input_field(attribute_name, options={})
139
+ components = (wrapper.components & ATTRIBUTE_COMPONENTS)
140
+
139
141
  options = options.dup
140
- options[:input_html] = options.except(:as, :collection, :label_method, :value_method, *ATTRIBUTE_COMPONENTS)
142
+ options[:input_html] = options.except(:as, :collection, :label_method, :value_method, *components)
141
143
  options = @defaults.deep_dup.deep_merge(options) if @defaults
142
144
 
143
- SimpleForm::Wrappers::Root.new(ATTRIBUTE_COMPONENTS + [:input], wrapper: false).render find_input(attribute_name, options)
145
+ SimpleForm::Wrappers::Root.new(components + [:input], wrapper: false).render find_input(attribute_name, options)
144
146
  end
145
147
 
146
148
  # Helper for dealing with association selects/radios, generating the
@@ -35,7 +35,7 @@ module SimpleForm
35
35
  # reuse the method for nested boolean style, but with no unchecked value,
36
36
  # which won't generate the hidden checkbox. This is the default functionality
37
37
  # in Rails > 3.2.1, and is backported in SimpleForm AV helpers.
38
- def build_check_box(unchecked_value = unchecked_value)
38
+ def build_check_box(unchecked_value = unchecked_value())
39
39
  @builder.check_box(attribute_name, input_html_options, checked_value, unchecked_value)
40
40
  end
41
41
 
@@ -1,3 +1,3 @@
1
1
  module SimpleForm
2
- VERSION = "3.0.3".freeze
2
+ VERSION = "3.0.4".freeze
3
3
  end
@@ -122,4 +122,44 @@ class InputFieldTest < ActionView::TestCase
122
122
  assert_no_select 'select.status[label_method]'
123
123
  assert_no_select 'select.status[value_method]'
124
124
  end
125
+
126
+ test 'build input_field without pattern component use the pattern string' do
127
+ swap_wrapper :default, self.custom_wrapper_with_html5_components do
128
+ with_concat_form_for(@user) do |f|
129
+ f.input_field :name, pattern: '\w+'
130
+ end
131
+
132
+ assert_select 'input[pattern="\w+"]'
133
+ end
134
+ end
135
+
136
+ test 'build input_field without placeholder component use the placeholder string' do
137
+ swap_wrapper :default, self.custom_wrapper_with_html5_components do
138
+ with_concat_form_for(@user) do |f|
139
+ f.input_field :name, placeholder: 'Placeholder'
140
+ end
141
+
142
+ assert_select 'input[placeholder="Placeholder"]'
143
+ end
144
+ end
145
+
146
+ test 'build input_field without maxlength component use the maxlength string' do
147
+ swap_wrapper :default, self.custom_wrapper_with_html5_components do
148
+ with_concat_form_for(@user) do |f|
149
+ f.input_field :name, maxlength: 5
150
+ end
151
+
152
+ assert_select 'input[maxlength="5"]'
153
+ end
154
+ end
155
+
156
+ test 'build input_field without readonly component use the readonly string' do
157
+ swap_wrapper :default, self.custom_wrapper_with_html5_components do
158
+ with_concat_form_for(@user) do |f|
159
+ f.input_field :name, readonly: true
160
+ end
161
+
162
+ assert_select 'input[readonly="readonly"]'
163
+ end
164
+ end
125
165
  end
@@ -112,6 +112,12 @@ module MiscHelpers
112
112
  end
113
113
  end
114
114
 
115
+ def custom_wrapper_with_html5_components
116
+ SimpleForm.build tag: :span, class: 'custom_wrapper' do |b|
117
+ b.use :label_text
118
+ end
119
+ end
120
+
115
121
  def custom_form_for(object, *args, &block)
116
122
  simple_form_for(object, *args, { builder: CustomFormBuilder }, &block)
117
123
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_form
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.3
4
+ version: 3.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - José Valim
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-11-25 00:00:00.000000000 Z
13
+ date: 2015-07-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activemodel
@@ -165,7 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
165
165
  version: '0'
166
166
  requirements: []
167
167
  rubyforge_project: simple_form
168
- rubygems_version: 2.2.2
168
+ rubygems_version: 2.4.8
169
169
  signing_key:
170
170
  specification_version: 4
171
171
  summary: Forms made easy!
@@ -206,3 +206,4 @@ test_files:
206
206
  - test/support/mock_controller.rb
207
207
  - test/support/models.rb
208
208
  - test/test_helper.rb
209
+ has_rdoc: