simple_form 3.1.0.rc1 → 3.1.0.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -1
  3. data/README.md +37 -6
  4. data/lib/generators/simple_form/templates/config/initializers/simple_form.rb +6 -2
  5. data/lib/generators/simple_form/templates/config/initializers/simple_form_bootstrap.rb +37 -14
  6. data/lib/simple_form.rb +8 -0
  7. data/lib/simple_form/components/labels.rb +1 -1
  8. data/lib/simple_form/form_builder.rb +29 -15
  9. data/lib/simple_form/inputs/boolean_input.rb +7 -4
  10. data/lib/simple_form/tags.rb +1 -0
  11. data/lib/simple_form/version.rb +1 -1
  12. data/lib/simple_form/wrappers/builder.rb +2 -2
  13. data/lib/simple_form/wrappers/many.rb +1 -0
  14. data/test/action_view_extensions/builder_test.rb +3 -3
  15. data/test/action_view_extensions/form_helper_test.rb +13 -13
  16. data/test/components/label_test.rb +35 -35
  17. data/test/form_builder/association_test.rb +4 -4
  18. data/test/form_builder/button_test.rb +5 -5
  19. data/test/form_builder/error_test.rb +18 -18
  20. data/test/form_builder/general_test.rb +65 -60
  21. data/test/form_builder/hint_test.rb +15 -15
  22. data/test/form_builder/input_field_test.rb +16 -16
  23. data/test/form_builder/label_test.rb +22 -13
  24. data/test/form_builder/wrapper_test.rb +54 -20
  25. data/test/inputs/boolean_input_test.rb +8 -8
  26. data/test/inputs/collection_check_boxes_input_test.rb +24 -7
  27. data/test/inputs/collection_radio_buttons_input_test.rb +40 -23
  28. data/test/inputs/collection_select_input_test.rb +45 -45
  29. data/test/inputs/datetime_input_test.rb +23 -23
  30. data/test/inputs/disabled_test.rb +15 -15
  31. data/test/inputs/discovery_test.rb +44 -5
  32. data/test/inputs/file_input_test.rb +2 -2
  33. data/test/inputs/general_test.rb +20 -20
  34. data/test/inputs/grouped_collection_select_input_test.rb +2 -2
  35. data/test/inputs/hidden_input_test.rb +4 -4
  36. data/test/inputs/numeric_input_test.rb +24 -24
  37. data/test/inputs/priority_input_test.rb +7 -7
  38. data/test/inputs/readonly_test.rb +19 -19
  39. data/test/inputs/required_test.rb +13 -13
  40. data/test/inputs/string_input_test.rb +23 -23
  41. data/test/inputs/text_input_test.rb +4 -4
  42. data/test/support/discovery_inputs.rb +20 -0
  43. data/test/support/misc_helpers.rb +22 -0
  44. data/test/support/models.rb +2 -1
  45. metadata +2 -2
@@ -3,49 +3,49 @@ require 'test_helper'
3
3
 
4
4
  # Tests for datetime, date and time inputs when HTML5 compatibility is enabled in the wrapper.
5
5
  class DateTimeInputWithHtml5Test < ActionView::TestCase
6
- test 'input should generate a datetime input for datetime attributes if HTML5 compatibility is explicitly enbled' do
6
+ test 'input generates a datetime input for datetime attributes if HTML5 compatibility is explicitly enbled' do
7
7
  with_input_for @user, :created_at, :datetime, html5: true
8
8
 
9
9
  assert_select 'input[type="datetime"]'
10
10
  end
11
11
 
12
- test 'input should generate a datetime select for datetime attributes' do
12
+ test 'input generates a datetime select for datetime attributes' do
13
13
  with_input_for @user, :created_at, :datetime
14
14
 
15
15
  assert_select 'select.datetime'
16
16
  end
17
17
 
18
- test 'input should generate a date input for date attributes if HTML5 compatibility is explicitly enbled' do
18
+ test 'input generates a date input for date attributes if HTML5 compatibility is explicitly enbled' do
19
19
  with_input_for @user, :born_at, :date, html5: true
20
20
 
21
21
  assert_select 'input[type="date"]'
22
22
  end
23
23
 
24
- test 'input should generate a date select for date attributes' do
24
+ test 'input generates a date select for date attributes' do
25
25
  with_input_for @user, :born_at, :date
26
26
 
27
27
  assert_select 'select.date'
28
28
  end
29
29
 
30
- test 'input should generate a time input for time attributes if HTML5 compatibility is explicitly enbled' do
30
+ test 'input generates a time input for time attributes if HTML5 compatibility is explicitly enbled' do
31
31
  with_input_for @user, :delivery_time, :time, html5: true
32
32
 
33
33
  assert_select 'input[type="time"]'
34
34
  end
35
35
 
36
- test 'input should generate a time select for time attributes' do
36
+ test 'input generates a time select for time attributes' do
37
37
  with_input_for @user, :delivery_time, :time
38
38
 
39
39
  assert_select 'select.time'
40
40
  end
41
41
 
42
- test 'input should generate required html attribute' do
42
+ test 'input generates required html attribute' do
43
43
  with_input_for @user, :delivery_time, :time, required: true, html5: true
44
44
  assert_select 'input.required'
45
45
  assert_select 'input[required]'
46
46
  end
47
47
 
48
- test 'input should have an aria-required html attribute' do
48
+ test 'input has an aria-required html attribute' do
49
49
  with_input_for @user, :delivery_time, :time, required: true, html5: true
50
50
  assert_select 'input[aria-required=true]'
51
51
  end
@@ -53,7 +53,7 @@ end
53
53
 
54
54
  # Tests for datetime, date and time inputs when HTML5 compatibility is enabled in the wrapper.
55
55
  class DateTimeInputWithoutHtml5Test < ActionView::TestCase
56
- test 'input should generate a datetime select by default for datetime attributes' do
56
+ test 'input generates a datetime select by default for datetime attributes' do
57
57
  swap_wrapper do
58
58
  with_input_for @user, :created_at, :datetime
59
59
  1.upto(5) do |i|
@@ -62,7 +62,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
62
62
  end
63
63
  end
64
64
 
65
- test 'input should be able to pass options to datetime select' do
65
+ test 'input is able to pass options to datetime select' do
66
66
  with_input_for @user, :created_at, :datetime, html5: false,
67
67
  disabled: true, prompt: { year: 'ano', month: 'mês', day: 'dia' }
68
68
 
@@ -72,7 +72,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
72
72
  assert_select 'select.datetime option', 'dia'
73
73
  end
74
74
 
75
- test 'input should generate a datetime input for datetime attributes if HTML5 compatibility is explicitly enabled' do
75
+ test 'input generates a datetime input for datetime attributes if HTML5 compatibility is explicitly enabled' do
76
76
  swap_wrapper do
77
77
  with_input_for @user, :created_at, :datetime, html5: true
78
78
 
@@ -80,7 +80,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
80
80
  end
81
81
  end
82
82
 
83
- test 'input should generate a date select for date attributes' do
83
+ test 'input generates a date select for date attributes' do
84
84
  swap_wrapper do
85
85
  with_input_for @user, :born_at, :date
86
86
  assert_select 'select.date#user_born_at_1i'
@@ -90,7 +90,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
90
90
  end
91
91
  end
92
92
 
93
- test 'input should be able to pass options to date select' do
93
+ test 'input is able to pass options to date select' do
94
94
  with_input_for @user, :born_at, :date, as: :date, html5: false,
95
95
  disabled: true, prompt: { year: 'ano', month: 'mês', day: 'dia' }
96
96
 
@@ -100,12 +100,12 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
100
100
  assert_select 'select.date option', 'dia'
101
101
  end
102
102
 
103
- test 'input should be able to pass :default to date select' do
103
+ test 'input is able to pass :default to date select' do
104
104
  with_input_for @user, :born_at, :date, default: Date.today, html5: false
105
105
  assert_select "select.date option[value=#{Date.today.year}][selected=selected]"
106
106
  end
107
107
 
108
- test 'input should generate a date input for date attributes if HTML5 compatibility is explicitly enabled' do
108
+ test 'input generates a date input for date attributes if HTML5 compatibility is explicitly enabled' do
109
109
  swap_wrapper do
110
110
  with_input_for @user, :born_at, :date, html5: true
111
111
 
@@ -113,7 +113,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
113
113
  end
114
114
  end
115
115
 
116
- test 'input should generate a time select for time attributes' do
116
+ test 'input generates a time select for time attributes' do
117
117
  swap_wrapper do
118
118
  with_input_for @user, :delivery_time, :time
119
119
  assert_select 'input[type=hidden]#user_delivery_time_1i'
@@ -124,7 +124,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
124
124
  end
125
125
  end
126
126
 
127
- test 'input should be able to pass options to time select' do
127
+ test 'input is able to pass options to time select' do
128
128
  with_input_for @user, :delivery_time, :time, required: true, html5: false,
129
129
  disabled: true, prompt: { hour: 'hora', minute: 'minuto' }
130
130
 
@@ -133,7 +133,7 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
133
133
  assert_select 'select.time option', 'minuto'
134
134
  end
135
135
 
136
- test 'input should generate a time input for time attributes if HTML5 compatibility is explicitly enabled' do
136
+ test 'input generates a time input for time attributes if HTML5 compatibility is explicitly enabled' do
137
137
  swap_wrapper do
138
138
  with_input_for @user, :delivery_time, :time, html5: true
139
139
 
@@ -141,31 +141,31 @@ class DateTimeInputWithoutHtml5Test < ActionView::TestCase
141
141
  end
142
142
  end
143
143
 
144
- test 'label should use i18n to get target for date input type' do
144
+ test 'label uses i18n to get target for date input type' do
145
145
  store_translations(:en, date: { order: ['month', 'day', 'year'] }) do
146
146
  with_input_for :project, :created_at, :date, html5: false
147
147
  assert_select 'label[for=project_created_at_2i]'
148
148
  end
149
149
  end
150
150
 
151
- test 'label should use i18n to get target for datetime input type' do
151
+ test 'label uses i18n to get target for datetime input type' do
152
152
  store_translations(:en, date: { order: ['month', 'day', 'year'] }) do
153
153
  with_input_for :project, :created_at, :datetime, html5: false
154
154
  assert_select 'label[for=project_created_at_2i]'
155
155
  end
156
156
  end
157
157
 
158
- test 'label should use order to get target when date input type' do
158
+ test 'label uses order to get target when date input type' do
159
159
  with_input_for :project, :created_at, :date, order: ['month', 'year', 'day'], html5: false
160
160
  assert_select 'label[for=project_created_at_2i]'
161
161
  end
162
162
 
163
- test 'label should use order to get target when datetime input type' do
163
+ test 'label uses order to get target when datetime input type' do
164
164
  with_input_for :project, :created_at, :datetime, order: ['month', 'year', 'day'], html5: false
165
165
  assert_select 'label[for=project_created_at_2i]'
166
166
  end
167
167
 
168
- test 'label should point to first option when time input type' do
168
+ test 'label points to first option when time input type' do
169
169
  with_input_for :project, :created_at, :time, html5: false
170
170
  assert_select 'label[for=project_created_at_4i]'
171
171
  end
@@ -1,77 +1,77 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class DisabledTest < ActionView::TestCase
4
- test 'string input should be disabled when disabled option is true' do
4
+ test 'string input is disabled when disabled option is true' do
5
5
  with_input_for @user, :name, :string, disabled: true
6
6
  assert_select 'input.string.disabled[disabled]'
7
7
  end
8
8
 
9
- test 'text input should be disabled when disabled option is true' do
9
+ test 'text input is disabled when disabled option is true' do
10
10
  with_input_for @user, :description, :text, disabled: true
11
11
  assert_select 'textarea.text.disabled[disabled]'
12
12
  end
13
13
 
14
- test 'numeric input should be disabled when disabled option is true' do
14
+ test 'numeric input is disabled when disabled option is true' do
15
15
  with_input_for @user, :age, :integer, disabled: true
16
16
  assert_select 'input.integer.disabled[disabled]'
17
17
  end
18
18
 
19
- test 'date input should be disabled when disabled option is true' do
19
+ test 'date input is disabled when disabled option is true' do
20
20
  with_input_for @user, :born_at, :date, disabled: true
21
21
  assert_select 'select.date.disabled[disabled]'
22
22
  end
23
23
 
24
- test 'datetime input should be disabled when disabled option is true' do
24
+ test 'datetime input is disabled when disabled option is true' do
25
25
  with_input_for @user, :created_at, :datetime, disabled: true
26
26
  assert_select 'select.datetime.disabled[disabled]'
27
27
  end
28
28
 
29
- test 'string input should not be disabled when disabled option is false' do
29
+ test 'string input does not be disabled when disabled option is false' do
30
30
  with_input_for @user, :name, :string, disabled: false
31
31
  assert_no_select 'input.string.disabled[disabled]'
32
32
  end
33
33
 
34
- test 'text input should not be disabled when disabled option is false' do
34
+ test 'text input does not be disabled when disabled option is false' do
35
35
  with_input_for @user, :description, :text, disabled: false
36
36
  assert_no_select 'textarea.text.disabled[disabled]'
37
37
  end
38
38
 
39
- test 'numeric input should not be disabled when disabled option is false' do
39
+ test 'numeric input does not be disabled when disabled option is false' do
40
40
  with_input_for @user, :age, :integer, disabled: false
41
41
  assert_no_select 'input.integer.disabled[disabled]'
42
42
  end
43
43
 
44
- test 'date input should not be disabled when disabled option is false' do
44
+ test 'date input does not be disabled when disabled option is false' do
45
45
  with_input_for @user, :born_at, :date, disabled: false
46
46
  assert_no_select 'select.date.disabled[disabled]'
47
47
  end
48
48
 
49
- test 'datetime input should not be disabled when disabled option is false' do
49
+ test 'datetime input does not be disabled when disabled option is false' do
50
50
  with_input_for @user, :created_at, :datetime, disabled: false
51
51
  assert_no_select 'select.datetime.disabled[disabled]'
52
52
  end
53
53
 
54
- test 'string input should not be disabled when disabled option is not present' do
54
+ test 'string input does not be disabled when disabled option is not present' do
55
55
  with_input_for @user, :name, :string
56
56
  assert_no_select 'input.string.disabled[disabled]'
57
57
  end
58
58
 
59
- test 'text input should not be disabled when disabled option is not present' do
59
+ test 'text input does not be disabled when disabled option is not present' do
60
60
  with_input_for @user, :description, :text
61
61
  assert_no_select 'textarea.text.disabled[disabled]'
62
62
  end
63
63
 
64
- test 'numeric input should not be disabled when disabled option is not present' do
64
+ test 'numeric input does not be disabled when disabled option is not present' do
65
65
  with_input_for @user, :age, :integer
66
66
  assert_no_select 'input.integer.disabled[disabled]'
67
67
  end
68
68
 
69
- test 'date input should not be disabled when disabled option is not present' do
69
+ test 'date input does not be disabled when disabled option is not present' do
70
70
  with_input_for @user, :born_at, :date
71
71
  assert_no_select 'select.date.disabled[disabled]'
72
72
  end
73
73
 
74
- test 'datetime input should not be disabled when disabled option is not present' do
74
+ test 'datetime input does not be disabled when disabled option is not present' do
75
75
  with_input_for @user, :created_at, :datetime
76
76
  assert_no_select 'select.datetime.disabled[disabled]'
77
77
  end
@@ -14,11 +14,13 @@ class DiscoveryTest < ActionView::TestCase
14
14
  Object.send :remove_const, :CustomizedInput
15
15
  Object.send :remove_const, :DeprecatedInput
16
16
  Object.send :remove_const, :CollectionSelectInput
17
+ CustomInputs.send :remove_const, :PasswordInput
18
+ CustomInputs.send :remove_const, :NumericInput
17
19
  end
18
20
  end
19
21
  end
20
22
 
21
- test 'builder should not discover new inputs if cached' do
23
+ test 'builder does not discover new inputs if cached' do
22
24
  with_form_for @user, :name
23
25
  assert_select 'form input#user_name.string'
24
26
 
@@ -28,14 +30,14 @@ class DiscoveryTest < ActionView::TestCase
28
30
  end
29
31
  end
30
32
 
31
- test 'builder should discover new inputs' do
33
+ test 'builder discovers new inputs' do
32
34
  discovery do
33
35
  with_form_for @user, :name, as: :customized
34
36
  assert_select 'form section input#user_name.string'
35
37
  end
36
38
  end
37
39
 
38
- test 'builder should not discover new inputs if discovery is off' do
40
+ test 'builder does not discover new inputs if discovery is off' do
39
41
  with_form_for @user, :name
40
42
  assert_select 'form input#user_name.string'
41
43
 
@@ -47,20 +49,57 @@ class DiscoveryTest < ActionView::TestCase
47
49
  end
48
50
  end
49
51
 
50
- test 'builder should discover new inputs from mappings if not cached' do
52
+ test 'builder discovers new inputs from mappings if not cached' do
51
53
  discovery do
52
54
  with_form_for @user, :name
53
55
  assert_select 'form section input#user_name.string'
54
56
  end
55
57
  end
56
58
 
57
- test 'builder should discover new inputs from internal fallbacks if not cached' do
59
+ test 'builder discovers new inputs from internal fallbacks if not cached' do
58
60
  discovery do
59
61
  with_form_for @user, :age
60
62
  assert_select 'form section input#user_age.numeric.integer'
61
63
  end
62
64
  end
63
65
 
66
+ test 'builder discovers new maped inputs from configured namespaces if not cached' do
67
+ discovery do
68
+ swap SimpleForm, custom_inputs_namespaces: ['CustomInputs'] do
69
+ with_form_for @user, :password
70
+ assert_select 'form input#user_password.password-custom-input'
71
+ end
72
+ end
73
+ end
74
+
75
+ test 'builder discovers new maped inputs from configured namespaces before the ones from top level namespace' do
76
+ discovery do
77
+ swap SimpleForm, custom_inputs_namespaces: ['CustomInputs'] do
78
+ with_form_for @user, :age
79
+ assert_select 'form input#user_age.numeric-custom-input'
80
+ end
81
+ end
82
+ end
83
+
84
+ test 'builder discovers new custom inputs from configured namespace before the ones from top level namespace' do
85
+ discovery do
86
+ swap SimpleForm, custom_inputs_namespaces: ['CustomInputs'] do
87
+ with_form_for @user, :name, as: 'customized'
88
+ assert_select 'form input#user_name.customized-namespace-custom-input'
89
+ end
90
+ end
91
+ end
92
+
93
+ test 'raises error when configured namespace does not exists' do
94
+ discovery do
95
+ swap SimpleForm, custom_inputs_namespaces: ['InvalidNamespace'] do
96
+ assert_raise NameError do
97
+ with_form_for @user, :age
98
+ end
99
+ end
100
+ end
101
+ end
102
+
64
103
  test 'new inputs can override the input_html_options' do
65
104
  discovery do
66
105
  with_form_for @user, :active, as: :select
@@ -2,12 +2,12 @@
2
2
  require 'test_helper'
3
3
 
4
4
  class FileInputTest < ActionView::TestCase
5
- test 'input should generate a file field' do
5
+ test 'input generates a file field' do
6
6
  with_input_for @user, :name, :file
7
7
  assert_select 'input#user_name[type=file]'
8
8
  end
9
9
 
10
- test "input should generate a file field that doesn't accept placeholder" do
10
+ test "input generates a file field that doesn't accept placeholder" do
11
11
  store_translations(:en, simple_form: { placeholders: { user: { name: "text" } } }) do
12
12
  with_input_for @user, :name, :file
13
13
  assert_no_select 'input[placeholder]'
@@ -2,7 +2,7 @@
2
2
  require 'test_helper'
3
3
 
4
4
  class InputTest < ActionView::TestCase
5
- test 'input should generate css class based on default input type' do
5
+ test 'input generates css class based on default input type' do
6
6
  with_input_for @user, :name, :string
7
7
  assert_select 'input.string'
8
8
  with_input_for @user, :description, :text
@@ -15,7 +15,7 @@ class InputTest < ActionView::TestCase
15
15
  assert_select 'select.datetime'
16
16
  end
17
17
 
18
- test 'string input should generate autofocus attribute when autofocus option is true' do
18
+ test 'string input generates autofocus attribute when autofocus option is true' do
19
19
  with_input_for @user, :name, :string, autofocus: true
20
20
  assert_select 'input.string[autofocus]'
21
21
  end
@@ -36,94 +36,94 @@ class InputTest < ActionView::TestCase
36
36
  end
37
37
  end
38
38
 
39
- test 'text input should generate autofocus attribute when autofocus option is true' do
39
+ test 'text input generates autofocus attribute when autofocus option is true' do
40
40
  with_input_for @user, :description, :text, autofocus: true
41
41
  assert_select 'textarea.text[autofocus]'
42
42
  end
43
43
 
44
- test 'numeric input should generate autofocus attribute when autofocus option is true' do
44
+ test 'numeric input generates autofocus attribute when autofocus option is true' do
45
45
  with_input_for @user, :age, :integer, autofocus: true
46
46
  assert_select 'input.integer[autofocus]'
47
47
  end
48
48
 
49
- test 'date input should generate autofocus attribute when autofocus option is true' do
49
+ test 'date input generates autofocus attribute when autofocus option is true' do
50
50
  with_input_for @user, :born_at, :date, autofocus: true
51
51
  assert_select 'select.date[autofocus]'
52
52
  end
53
53
 
54
- test 'datetime input should generate autofocus attribute when autofocus option is true' do
54
+ test 'datetime input generates autofocus attribute when autofocus option is true' do
55
55
  with_input_for @user, :created_at, :datetime, autofocus: true
56
56
  assert_select 'select.datetime[autofocus]'
57
57
  end
58
58
 
59
- test 'string input should generate autofocus attribute when autofocus option is false' do
59
+ test 'string input generates autofocus attribute when autofocus option is false' do
60
60
  with_input_for @user, :name, :string, autofocus: false
61
61
  assert_no_select 'input.string[autofocus]'
62
62
  end
63
63
 
64
- test 'text input should generate autofocus attribute when autofocus option is false' do
64
+ test 'text input generates autofocus attribute when autofocus option is false' do
65
65
  with_input_for @user, :description, :text, autofocus: false
66
66
  assert_no_select 'textarea.text[autofocus]'
67
67
  end
68
68
 
69
- test 'numeric input should generate autofocus attribute when autofocus option is false' do
69
+ test 'numeric input generates autofocus attribute when autofocus option is false' do
70
70
  with_input_for @user, :age, :integer, autofocus: false
71
71
  assert_no_select 'input.integer[autofocus]'
72
72
  end
73
73
 
74
- test 'date input should generate autofocus attribute when autofocus option is false' do
74
+ test 'date input generates autofocus attribute when autofocus option is false' do
75
75
  with_input_for @user, :born_at, :date, autofocus: false
76
76
  assert_no_select 'select.date[autofocus]'
77
77
  end
78
78
 
79
- test 'datetime input should generate autofocus attribute when autofocus option is false' do
79
+ test 'datetime input generates autofocus attribute when autofocus option is false' do
80
80
  with_input_for @user, :created_at, :datetime, autofocus: false
81
81
  assert_no_select 'select.datetime[autofocus]'
82
82
  end
83
83
 
84
- test 'string input should generate autofocus attribute when autofocus option is not present' do
84
+ test 'string input generates autofocus attribute when autofocus option is not present' do
85
85
  with_input_for @user, :name, :string
86
86
  assert_no_select 'input.string[autofocus]'
87
87
  end
88
88
 
89
- test 'text input should generate autofocus attribute when autofocus option is not present' do
89
+ test 'text input generates autofocus attribute when autofocus option is not present' do
90
90
  with_input_for @user, :description, :text
91
91
  assert_no_select 'textarea.text[autofocus]'
92
92
  end
93
93
 
94
- test 'numeric input should generate autofocus attribute when autofocus option is not present' do
94
+ test 'numeric input generates autofocus attribute when autofocus option is not present' do
95
95
  with_input_for @user, :age, :integer
96
96
  assert_no_select 'input.integer[autofocus]'
97
97
  end
98
98
 
99
- test 'date input should generate autofocus attribute when autofocus option is not present' do
99
+ test 'date input generates autofocus attribute when autofocus option is not present' do
100
100
  with_input_for @user, :born_at, :date
101
101
  assert_no_select 'select.date[autofocus]'
102
102
  end
103
103
 
104
- test 'datetime input should generate autofocus attribute when autofocus option is not present' do
104
+ test 'datetime input generates autofocus attribute when autofocus option is not present' do
105
105
  with_input_for @user, :created_at, :datetime
106
106
  assert_no_select 'select.datetime[autofocus]'
107
107
  end
108
108
 
109
109
  # With no object
110
- test 'input should be generated properly when object is not present' do
110
+ test 'input is generated properly when object is not present' do
111
111
  with_input_for :project, :name, :string
112
112
  assert_select 'input.string.required#project_name'
113
113
  end
114
114
 
115
- test 'input as radio should be generated properly when object is not present ' do
115
+ test 'input as radio is generated properly when object is not present ' do
116
116
  with_input_for :project, :name, :radio_buttons
117
117
  assert_select 'input.radio_buttons#project_name_true'
118
118
  assert_select 'input.radio_buttons#project_name_false'
119
119
  end
120
120
 
121
- test 'input as select with collection should be generated properly when object is not present' do
121
+ test 'input as select with collection is generated properly when object is not present' do
122
122
  with_input_for :project, :name, :select, collection: ['Jose', 'Carlos']
123
123
  assert_select 'select.select#project_name'
124
124
  end
125
125
 
126
- test 'input should not generate empty css class' do
126
+ test 'input does not generate empty css class' do
127
127
  swap SimpleForm, generate_additional_classes_for: [:wrapper, :label] do
128
128
  with_input_for :project, :name, :string
129
129
  assert_no_select 'input#project_name[class]'