formtastic 2.2.1 → 2.3.0.rc

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/.travis.yml +17 -13
  2. data/Appraisals +6 -3
  3. data/CHANGELOG +4 -0
  4. data/Gemfile +1 -1
  5. data/README.textile +14 -23
  6. data/Rakefile +0 -17
  7. data/app/assets/stylesheets/formtastic.css +2 -1
  8. data/formtastic.gemspec +4 -3
  9. data/gemfiles/{rails-3.0.gemfile → rails_3.0.gemfile} +1 -1
  10. data/gemfiles/{rails-3.1.gemfile → rails_3.1.gemfile} +1 -1
  11. data/gemfiles/{rails-3.2.gemfile → rails_3.2.gemfile} +1 -1
  12. data/gemfiles/rails_4.gemfile +7 -0
  13. data/gemfiles/rails_edge.gemfile +7 -0
  14. data/lib/formtastic/form_builder.rb +7 -0
  15. data/lib/formtastic/helpers/fieldset_wrapper.rb +1 -1
  16. data/lib/formtastic/helpers/form_helper.rb +8 -10
  17. data/lib/formtastic/helpers/input_helper.rb +1 -0
  18. data/lib/formtastic/inputs/base.rb +0 -1
  19. data/lib/formtastic/inputs/base/collections.rb +15 -4
  20. data/lib/formtastic/inputs/base/labelling.rb +4 -7
  21. data/lib/formtastic/inputs/base/numeric.rb +1 -1
  22. data/lib/formtastic/inputs/base/options.rb +1 -1
  23. data/lib/formtastic/inputs/base/timeish.rb +12 -4
  24. data/lib/formtastic/inputs/boolean_input.rb +6 -6
  25. data/lib/formtastic/inputs/check_boxes_input.rb +7 -2
  26. data/lib/formtastic/inputs/datetime_picker_input.rb +3 -3
  27. data/lib/formtastic/inputs/select_input.rb +4 -2
  28. data/lib/formtastic/util.rb +4 -0
  29. data/lib/formtastic/version.rb +1 -1
  30. data/lib/generators/templates/formtastic.rb +3 -3
  31. data/sample/basic_inputs.html +1 -1
  32. data/spec/builder/semantic_fields_for_spec.rb +0 -1
  33. data/spec/helpers/action_helper_spec.rb +1 -1
  34. data/spec/helpers/form_helper_spec.rb +30 -0
  35. data/spec/helpers/input_helper_spec.rb +1 -1
  36. data/spec/helpers/inputs_helper_spec.rb +13 -15
  37. data/spec/inputs/boolean_input_spec.rb +7 -0
  38. data/spec/inputs/check_boxes_input_spec.rb +31 -1
  39. data/spec/inputs/date_select_input_spec.rb +8 -0
  40. data/spec/inputs/datetime_picker_input_spec.rb +14 -14
  41. data/spec/inputs/datetime_select_input_spec.rb +8 -0
  42. data/spec/inputs/label_spec.rb +11 -0
  43. data/spec/inputs/select_input_spec.rb +21 -4
  44. data/spec/inputs/time_select_input_spec.rb +9 -1
  45. data/spec/spec_helper.rb +74 -13
  46. data/spec/support/custom_macros.rb +3 -2
  47. data/spec/support/test_environment.rb +2 -0
  48. metadata +116 -40
  49. data/gemfiles/rails-4.gemfile +0 -8
  50. data/lib/tasks/verify_rcov.rb +0 -44
@@ -38,6 +38,17 @@ describe 'Formtastic::FormBuilder#label' do
38
38
  end)
39
39
  output_buffer.should have_tag('label', /Title/)
40
40
  end
41
+
42
+ it 'should use i18n instead of the method name when method given as a String' do
43
+ with_config :i18n_cache_lookups, true do
44
+ ::I18n.backend.store_translations :en, { :formtastic => { :labels => { :post => { :title => "I18n title" } } } }
45
+ concat(semantic_form_for(@new_post) do |builder|
46
+ builder.input("title")
47
+ end)
48
+ ::I18n.backend.store_translations :en, { :formtastic => { :labels => { :post => { :title => nil } } } }
49
+ output_buffer.should have_tag('label', /I18n title/)
50
+ end
51
+ end
41
52
 
42
53
  it 'should humanize the given attribute for date fields' do
43
54
  concat(semantic_form_for(@new_post) do |builder|
@@ -225,7 +225,11 @@ describe 'select input' do
225
225
  end
226
226
 
227
227
  it "should call author.find with association conditions" do
228
- ::Author.should_receive(:scoped).with(:conditions => {:active => true})
228
+ if Formtastic::Util.rails3?
229
+ ::Author.should_receive(:scoped).with(:conditions => {:active => true})
230
+ else
231
+ ::Author.should_receive(:where).with(:conditions => {:active => true})
232
+ end
229
233
 
230
234
  semantic_form_for(@new_post) do |builder|
231
235
  concat(builder.input(:author, :as => :select))
@@ -233,8 +237,15 @@ describe 'select input' do
233
237
  end
234
238
 
235
239
  it "should call author.find with association conditions and find_options conditions" do
236
- ::Author.should_receive(:scoped).with(:conditions => {:active => true})
237
- ::Author.should_receive(:where).with({:publisher => true})
240
+ if Formtastic::Util.rails3?
241
+ ::Author.should_receive(:scoped).with(:conditions => {:active => true})
242
+ ::Author.should_receive(:where).with({:publisher => true})
243
+ else
244
+ proxy = stub
245
+ ::Author.should_receive(:where).with({:active => true}).and_return(proxy)
246
+ proxy.should_receive(:where).with({:publisher => true})
247
+ end
248
+
238
249
 
239
250
  with_deprecation_silenced do
240
251
  semantic_form_for(@new_post) do |builder|
@@ -307,7 +318,13 @@ describe 'select input' do
307
318
  end
308
319
 
309
320
  it 'should call find with :include for more optimized queries' do
310
- Author.should_receive(:where).with(:include => :continent)
321
+ if Formtastic::Util.rails3?
322
+ Author.should_receive(:where).with(:include => :continent)
323
+ else
324
+ proxy = author_array_or_scope(@authors)
325
+ Author.should_receive(:where).and_return(proxy)
326
+ proxy.should_receive(:includes).with(:continent).and_call_original
327
+ end
311
328
 
312
329
  with_deprecation_silenced do
313
330
  semantic_form_for(@new_post) do |builder|
@@ -192,7 +192,7 @@ describe 'time select input' do
192
192
  output_buffer.should have_tag('form li.time_select fieldset ol li label', /#{f}/i) unless field == f
193
193
  end
194
194
  end
195
-
195
+
196
196
  it "should not render unsafe HTML when :labels[:#{field}] is false" do
197
197
  output_buffer.replace ''
198
198
  concat(semantic_form_for(@new_post) do |builder|
@@ -202,6 +202,14 @@ describe 'time select input' do
202
202
  end
203
203
 
204
204
  end
205
+
206
+ it "should not render labels when :labels is falsy" do
207
+ output_buffer.replace ''
208
+ concat(semantic_form_for(@new_post) do |builder|
209
+ concat(builder.input(:created_at, :as => :time_select, :include_seconds => true, :labels => false))
210
+ end)
211
+ output_buffer.should have_tag('form li.time_select fieldset ol li label', :count => 0)
212
+ end
205
213
  end
206
214
 
207
215
  describe ':namespace option' do
@@ -36,7 +36,10 @@ module FormtasticSpecHelper
36
36
  include ActionView::Helpers::AssetTagHelper
37
37
  include ActiveSupport
38
38
  include ActionController::PolymorphicRoutes if defined?(ActionController::PolymorphicRoutes)
39
-
39
+ include ActionDispatch::Routing::PolymorphicRoutes
40
+ include AbstractController::UrlFor if defined?(AbstractController::UrlFor)
41
+ include ActionView::RecordIdentifier if defined?(ActionView::RecordIdentifier)
42
+
40
43
  include Formtastic::Helpers::FormHelper
41
44
 
42
45
  def default_input_type(column_type, column_name = :generic_column_name)
@@ -148,6 +151,54 @@ module FormtasticSpecHelper
148
151
  sym == :options ? false : super
149
152
  end
150
153
  end
154
+
155
+ # In Rails 3 Model.all returns an array. In Rails 4, it returns an
156
+ # association proxy, which quacks a lot like an array. We use this in stubs
157
+ # or mocks where we need to return the later.
158
+ #
159
+ # TODO try delegate?
160
+ # delegate :map, :size, :length, :first, :to_ary, :each, :include?, :to => :array
161
+ class MockScope
162
+ attr_reader :array
163
+
164
+ def initialize(the_array)
165
+ @array = the_array
166
+ end
167
+
168
+ def map(&block)
169
+ array.map(&block)
170
+ end
171
+
172
+ def where(*args)
173
+ # array
174
+ self
175
+ end
176
+
177
+ def includes(*args)
178
+ self
179
+ end
180
+
181
+ def size
182
+ array.size
183
+ end
184
+ alias_method :length, :size
185
+
186
+ def first
187
+ array.first
188
+ end
189
+
190
+ def to_ary
191
+ array
192
+ end
193
+
194
+ def each(&block)
195
+ array.each(&block)
196
+ end
197
+
198
+ def include?(*args)
199
+ array.include?(*args)
200
+ end
201
+ end
151
202
 
152
203
  def _routes
153
204
  url_helpers = mock('url_helpers')
@@ -185,7 +236,17 @@ module FormtasticSpecHelper
185
236
  def author_path(*args); "/authors/1"; end
186
237
  def authors_path(*args); "/authors"; end
187
238
  def new_author_path(*args); "/authors/new"; end
188
-
239
+
240
+ # Returns the array for Rails 3 and a thing that looks looks like an
241
+ # association proxy for Rails 4+
242
+ def author_array_or_scope(the_array = [@fred, @bob])
243
+ if ::Formtastic::Util.rails3?
244
+ the_array
245
+ else
246
+ MockScope.new(the_array)
247
+ end
248
+ end
249
+
189
250
  @fred = ::Author.new
190
251
  @fred.stub!(:class).and_return(::Author)
191
252
  @fred.stub!(:to_label).and_return('Fred Smith')
@@ -227,9 +288,9 @@ module FormtasticSpecHelper
227
288
 
228
289
 
229
290
  ::Author.stub!(:scoped).and_return(::Author)
230
- ::Author.stub!(:find).and_return([@fred, @bob])
231
- ::Author.stub!(:all).and_return([@fred, @bob])
232
- ::Author.stub!(:where).and_return([@fred, @bob])
291
+ ::Author.stub!(:find).and_return(author_array_or_scope)
292
+ ::Author.stub!(:all).and_return(author_array_or_scope)
293
+ ::Author.stub!(:where).and_return(author_array_or_scope)
233
294
  ::Author.stub!(:human_attribute_name).and_return { |column_name| column_name.humanize }
234
295
  ::Author.stub!(:human_name).and_return('::Author')
235
296
  ::Author.stub!(:reflect_on_association).and_return { |column_name| mock('reflection', :options => {}, :klass => Post, :macro => :has_many) if column_name == :posts }
@@ -247,7 +308,7 @@ module FormtasticSpecHelper
247
308
  @new_post.stub!(:errors).and_return(mock('errors', :[] => nil))
248
309
  @new_post.stub!(:author).and_return(nil)
249
310
  @new_post.stub!(:author_attributes=).and_return(nil)
250
- @new_post.stub!(:authors).and_return([@fred])
311
+ @new_post.stub!(:authors).and_return(author_array_or_scope([@fred]))
251
312
  @new_post.stub!(:authors_attributes=)
252
313
  @new_post.stub!(:reviewer).and_return(nil)
253
314
  @new_post.stub!(:main_post).and_return(nil)
@@ -270,7 +331,7 @@ module FormtasticSpecHelper
270
331
  @freds_post.stub!(:errors).and_return(mock('errors', :[] => nil))
271
332
  @freds_post.stub!(:to_key).and_return(nil)
272
333
  @freds_post.stub!(:persisted?).and_return(nil)
273
- @fred.stub!(:posts).and_return([@freds_post])
334
+ @fred.stub!(:posts).and_return(author_array_or_scope([@freds_post]))
274
335
  @fred.stub!(:post_ids).and_return([@freds_post.id])
275
336
 
276
337
  ::Post.stub!(:scoped).and_return(::Post)
@@ -301,9 +362,9 @@ module FormtasticSpecHelper
301
362
  :klass => ::Author, :macro => :referenced_in, :foreign_key => "reviewer_id") # custom id
302
363
  end
303
364
  end
304
- ::Post.stub!(:find).and_return([@freds_post])
305
- ::Post.stub!(:all).and_return([@freds_post])
306
- ::Post.stub!(:where).and_return([@freds_post])
365
+ ::Post.stub!(:find).and_return(author_array_or_scope([@freds_post]))
366
+ ::Post.stub!(:all).and_return(author_array_or_scope([@freds_post]))
367
+ ::Post.stub!(:where).and_return(author_array_or_scope([@freds_post]))
307
368
  ::Post.stub!(:content_columns).and_return([mock('column', :name => 'title'), mock('column', :name => 'body'), mock('column', :name => 'created_at')])
308
369
  ::Post.stub!(:to_key).and_return(nil)
309
370
  ::Post.stub!(:persisted?).and_return(nil)
@@ -315,9 +376,9 @@ module FormtasticSpecHelper
315
376
  :sub_posts => mock('reflection', :options => {:polymorphic => true}, :klass => ::MongoPost, :macro => :has_many),
316
377
  :options => []
317
378
  })
318
- ::MongoPost.stub!(:find).and_return([@freds_post])
319
- ::MongoPost.stub!(:all).and_return([@freds_post])
320
- ::MongoPost.stub!(:where).and_return([@freds_post])
379
+ ::MongoPost.stub!(:find).and_return(author_array_or_scope([@freds_post]))
380
+ ::MongoPost.stub!(:all).and_return(author_array_or_scope([@freds_post]))
381
+ ::MongoPost.stub!(:where).and_return(author_array_or_scope([@freds_post]))
321
382
  ::MongoPost.stub!(:to_key).and_return(nil)
322
383
  ::MongoPost.stub!(:persisted?).and_return(nil)
323
384
  ::MongoPost.stub!(:to_ary)
@@ -259,6 +259,7 @@ module CustomMacros
259
259
  def it_should_call_find_on_association_class_when_no_collection_is_provided(as)
260
260
  it "should call find on the association class when no collection is provided" do
261
261
  ::Author.should_receive(:where)
262
+
262
263
  concat(semantic_form_for(@new_post) do |builder|
263
264
  concat(builder.input(:author, :as => as))
264
265
  end)
@@ -269,7 +270,7 @@ module CustomMacros
269
270
  describe 'when the :collection option is provided' do
270
271
 
271
272
  before do
272
- @authors = ::Author.all * 2
273
+ @authors = ([::Author.all] * 2).flatten
273
274
  output_buffer.replace ''
274
275
  end
275
276
 
@@ -456,7 +457,7 @@ module CustomMacros
456
457
  describe "when the collection objects respond to #{label_method}" do
457
458
  before do
458
459
  @fred.stub!(:respond_to?).and_return { |m| m.to_s == label_method || m.to_s == 'id' }
459
- ::Author.all.each { |a| a.stub!(label_method).and_return('The Label Text') }
460
+ [@fred, @bob].each { |a| a.stub!(label_method).and_return('The Label Text') }
460
461
 
461
462
  concat(semantic_form_for(@new_post) do |builder|
462
463
  concat(builder.input(:author, :as => as))
@@ -17,6 +17,8 @@ module FormtasticTest
17
17
  # Configure the default encoding used in templates for Ruby 1.9.
18
18
  config.encoding = "utf-8"
19
19
  config.active_support.deprecation = :stderr
20
+ config.secret_key_base = "secret"
21
+ config.eager_load = false
20
22
  end
21
23
  end
22
24
  FormtasticTest::Application.initialize!
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: formtastic
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
5
- prerelease:
4
+ version: 2.3.0.rc
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Justin French
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-06 00:00:00.000000000 Z
12
+ date: 2013-07-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
16
- requirement: &70298104933820 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,21 +21,47 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70298104933820
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: nokogiri
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - <
36
+ - !ruby/object:Gem::Version
37
+ version: 1.6.0
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - <
44
+ - !ruby/object:Gem::Version
45
+ version: 1.6.0
25
46
  - !ruby/object:Gem::Dependency
26
47
  name: rspec-rails
27
- requirement: &70298104933340 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
28
49
  none: false
29
50
  requirements:
30
51
  - - ~>
31
52
  - !ruby/object:Gem::Version
32
- version: 2.8.0
53
+ version: 2.12.0
33
54
  type: :development
34
55
  prerelease: false
35
- version_requirements: *70298104933340
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 2.12.0
36
62
  - !ruby/object:Gem::Dependency
37
63
  name: rspec_tag_matchers
38
- requirement: &70298112364540 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
39
65
  none: false
40
66
  requirements:
41
67
  - - ! '>='
@@ -43,10 +69,15 @@ dependencies:
43
69
  version: 1.0.0
44
70
  type: :development
45
71
  prerelease: false
46
- version_requirements: *70298112364540
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: 1.0.0
47
78
  - !ruby/object:Gem::Dependency
48
79
  name: hpricot
49
- requirement: &70298112363620 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
50
81
  none: false
51
82
  requirements:
52
83
  - - ~>
@@ -54,10 +85,15 @@ dependencies:
54
85
  version: 0.8.3
55
86
  type: :development
56
87
  prerelease: false
57
- version_requirements: *70298112363620
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.8.3
58
94
  - !ruby/object:Gem::Dependency
59
95
  name: BlueCloth
60
- requirement: &70298112362700 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
61
97
  none: false
62
98
  requirements:
63
99
  - - ! '>='
@@ -65,10 +101,15 @@ dependencies:
65
101
  version: '0'
66
102
  type: :development
67
103
  prerelease: false
68
- version_requirements: *70298112362700
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
69
110
  - !ruby/object:Gem::Dependency
70
111
  name: yard
71
- requirement: &70298112361420 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
72
113
  none: false
73
114
  requirements:
74
115
  - - ~>
@@ -76,21 +117,15 @@ dependencies:
76
117
  version: '0.6'
77
118
  type: :development
78
119
  prerelease: false
79
- version_requirements: *70298112361420
80
- - !ruby/object:Gem::Dependency
81
- name: rcov
82
- requirement: &70298112360140 !ruby/object:Gem::Requirement
120
+ version_requirements: !ruby/object:Gem::Requirement
83
121
  none: false
84
122
  requirements:
85
123
  - - ~>
86
124
  - !ruby/object:Gem::Version
87
- version: 0.9.9
88
- type: :development
89
- prerelease: false
90
- version_requirements: *70298112360140
125
+ version: '0.6'
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: colored
93
- requirement: &70298112359180 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ! '>='
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: '0'
99
134
  type: :development
100
135
  prerelease: false
101
- version_requirements: *70298112359180
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: tzinfo
104
- requirement: &70298112357500 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ! '>='
@@ -109,21 +149,31 @@ dependencies:
109
149
  version: '0'
110
150
  type: :development
111
151
  prerelease: false
112
- version_requirements: *70298112357500
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: ammeter
115
- requirement: &70298104958780 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
- - - ~>
163
+ - - '='
119
164
  - !ruby/object:Gem::Version
120
165
  version: 0.2.5
121
166
  type: :development
122
167
  prerelease: false
123
- version_requirements: *70298104958780
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - '='
172
+ - !ruby/object:Gem::Version
173
+ version: 0.2.5
124
174
  - !ruby/object:Gem::Dependency
125
175
  name: appraisal
126
- requirement: &70298104958360 !ruby/object:Gem::Requirement
176
+ requirement: !ruby/object:Gem::Requirement
127
177
  none: false
128
178
  requirements:
129
179
  - - ! '>='
@@ -131,10 +181,15 @@ dependencies:
131
181
  version: '0'
132
182
  type: :development
133
183
  prerelease: false
134
- version_requirements: *70298104958360
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
135
190
  - !ruby/object:Gem::Dependency
136
191
  name: rake
137
- requirement: &70298104957900 !ruby/object:Gem::Requirement
192
+ requirement: !ruby/object:Gem::Requirement
138
193
  none: false
139
194
  requirements:
140
195
  - - ! '>='
@@ -142,7 +197,28 @@ dependencies:
142
197
  version: '0'
143
198
  type: :development
144
199
  prerelease: false
145
- version_requirements: *70298104957900
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
206
+ - !ruby/object:Gem::Dependency
207
+ name: activemodel
208
+ requirement: !ruby/object:Gem::Requirement
209
+ none: false
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '0'
214
+ type: :development
215
+ prerelease: false
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
146
222
  description: A Rails form builder plugin/gem with semantically rich and accessible
147
223
  markup
148
224
  email:
@@ -167,10 +243,11 @@ files:
167
243
  - app/assets/stylesheets/formtastic_ie6.css
168
244
  - app/assets/stylesheets/formtastic_ie7.css
169
245
  - formtastic.gemspec
170
- - gemfiles/rails-3.0.gemfile
171
- - gemfiles/rails-3.1.gemfile
172
- - gemfiles/rails-3.2.gemfile
173
- - gemfiles/rails-4.gemfile
246
+ - gemfiles/rails_3.0.gemfile
247
+ - gemfiles/rails_3.1.gemfile
248
+ - gemfiles/rails_3.2.gemfile
249
+ - gemfiles/rails_4.gemfile
250
+ - gemfiles/rails_edge.gemfile
174
251
  - lib/formtastic.rb
175
252
  - lib/formtastic/actions.rb
176
253
  - lib/formtastic/actions/base.rb
@@ -250,7 +327,6 @@ files:
250
327
  - lib/generators/templates/_form.html.slim
251
328
  - lib/generators/templates/formtastic.rb
252
329
  - lib/locale/en.yml
253
- - lib/tasks/verify_rcov.rb
254
330
  - sample/basic_inputs.html
255
331
  - sample/config.ru
256
332
  - sample/index.html
@@ -328,7 +404,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
328
404
  version: '0'
329
405
  requirements: []
330
406
  rubyforge_project:
331
- rubygems_version: 1.8.11
407
+ rubygems_version: 1.8.23
332
408
  signing_key:
333
409
  specification_version: 3
334
410
  summary: A Rails form builder plugin/gem with semantically rich and accessible markup