rails_best_practices 1.19.1 → 1.19.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/Guardfile +1 -1
  4. data/README.md +1 -0
  5. data/Rakefile +2 -2
  6. data/bin/rails_best_practices +2 -1
  7. data/lib/rails_best_practices.rb +2 -1
  8. data/lib/rails_best_practices/analyzer.rb +13 -12
  9. data/lib/rails_best_practices/colorize.rb +2 -0
  10. data/lib/rails_best_practices/command.rb +6 -5
  11. data/lib/rails_best_practices/core.rb +2 -1
  12. data/lib/rails_best_practices/core/check.rb +19 -17
  13. data/lib/rails_best_practices/core/checks_loader.rb +3 -2
  14. data/lib/rails_best_practices/core/configs.rb +2 -1
  15. data/lib/rails_best_practices/core/controllers.rb +4 -1
  16. data/lib/rails_best_practices/core/error.rb +3 -2
  17. data/lib/rails_best_practices/core/gems.rb +4 -3
  18. data/lib/rails_best_practices/core/helpers.rb +4 -1
  19. data/lib/rails_best_practices/core/klasses.rb +3 -2
  20. data/lib/rails_best_practices/core/mailers.rb +2 -1
  21. data/lib/rails_best_practices/core/methods.rb +9 -10
  22. data/lib/rails_best_practices/core/model_associations.rb +6 -5
  23. data/lib/rails_best_practices/core/model_attributes.rb +2 -1
  24. data/lib/rails_best_practices/core/models.rb +2 -1
  25. data/lib/rails_best_practices/core/modules.rb +2 -1
  26. data/lib/rails_best_practices/core/routes.rb +2 -1
  27. data/lib/rails_best_practices/core/runner.rb +7 -6
  28. data/lib/rails_best_practices/core_ext/erubis.rb +4 -5
  29. data/lib/rails_best_practices/lexicals.rb +2 -1
  30. data/lib/rails_best_practices/lexicals/long_line_check.rb +2 -1
  31. data/lib/rails_best_practices/lexicals/remove_tab_check.rb +2 -1
  32. data/lib/rails_best_practices/lexicals/remove_trailing_whitespace_check.rb +2 -1
  33. data/lib/rails_best_practices/prepares.rb +2 -1
  34. data/lib/rails_best_practices/prepares/config_prepare.rb +3 -2
  35. data/lib/rails_best_practices/prepares/controller_prepare.rb +9 -8
  36. data/lib/rails_best_practices/prepares/gemfile_prepare.rb +2 -1
  37. data/lib/rails_best_practices/prepares/helper_prepare.rb +4 -3
  38. data/lib/rails_best_practices/prepares/initializer_prepare.rb +2 -1
  39. data/lib/rails_best_practices/prepares/mailer_prepare.rb +3 -2
  40. data/lib/rails_best_practices/prepares/model_prepare.rb +12 -12
  41. data/lib/rails_best_practices/prepares/route_prepare.rb +8 -7
  42. data/lib/rails_best_practices/prepares/schema_prepare.rb +3 -2
  43. data/lib/rails_best_practices/reviews.rb +2 -1
  44. data/lib/rails_best_practices/reviews/add_model_virtual_attribute_review.rb +7 -4
  45. data/lib/rails_best_practices/reviews/always_add_db_index_review.rb +8 -7
  46. data/lib/rails_best_practices/reviews/check_destroy_return_value_review.rb +4 -3
  47. data/lib/rails_best_practices/reviews/check_save_return_value_review.rb +5 -4
  48. data/lib/rails_best_practices/reviews/default_scope_is_evil_review.rb +2 -1
  49. data/lib/rails_best_practices/reviews/dry_bundler_in_capistrano_review.rb +2 -1
  50. data/lib/rails_best_practices/reviews/hash_syntax_review.rb +2 -1
  51. data/lib/rails_best_practices/reviews/isolate_seed_data_review.rb +3 -2
  52. data/lib/rails_best_practices/reviews/keep_finders_on_their_own_model_review.rb +3 -2
  53. data/lib/rails_best_practices/reviews/law_of_demeter_review.rb +3 -2
  54. data/lib/rails_best_practices/reviews/move_code_into_controller_review.rb +3 -2
  55. data/lib/rails_best_practices/reviews/move_code_into_helper_review.rb +2 -1
  56. data/lib/rails_best_practices/reviews/move_code_into_model_review.rb +3 -2
  57. data/lib/rails_best_practices/reviews/move_finder_to_named_scope_review.rb +3 -2
  58. data/lib/rails_best_practices/reviews/move_model_logic_into_model_review.rb +3 -2
  59. data/lib/rails_best_practices/reviews/needless_deep_nesting_review.rb +5 -4
  60. data/lib/rails_best_practices/reviews/not_rescue_exception_review.rb +2 -1
  61. data/lib/rails_best_practices/reviews/not_use_default_route_review.rb +2 -1
  62. data/lib/rails_best_practices/reviews/not_use_time_ago_in_words_review.rb +2 -1
  63. data/lib/rails_best_practices/reviews/overuse_route_customizations_review.rb +3 -2
  64. data/lib/rails_best_practices/reviews/protect_mass_assignment_review.rb +4 -3
  65. data/lib/rails_best_practices/reviews/remove_empty_helpers_review.rb +2 -1
  66. data/lib/rails_best_practices/reviews/remove_unused_methods_in_controllers_review.rb +11 -10
  67. data/lib/rails_best_practices/reviews/remove_unused_methods_in_helpers_review.rb +4 -3
  68. data/lib/rails_best_practices/reviews/remove_unused_methods_in_models_review.rb +6 -5
  69. data/lib/rails_best_practices/reviews/replace_complex_creation_with_factory_method_review.rb +2 -2
  70. data/lib/rails_best_practices/reviews/replace_instance_variable_with_local_variable_review.rb +2 -1
  71. data/lib/rails_best_practices/reviews/restrict_auto_generated_routes_review.rb +8 -8
  72. data/lib/rails_best_practices/reviews/review.rb +4 -3
  73. data/lib/rails_best_practices/reviews/simplify_render_in_controllers_review.rb +2 -1
  74. data/lib/rails_best_practices/reviews/simplify_render_in_views_review.rb +3 -2
  75. data/lib/rails_best_practices/reviews/use_before_filter_review.rb +5 -4
  76. data/lib/rails_best_practices/reviews/use_model_association_review.rb +2 -2
  77. data/lib/rails_best_practices/reviews/use_multipart_alternative_as_content_type_of_email_review.rb +5 -5
  78. data/lib/rails_best_practices/reviews/use_observer_review.rb +2 -1
  79. data/lib/rails_best_practices/reviews/use_parentheses_in_method_def_review.rb +2 -1
  80. data/lib/rails_best_practices/reviews/use_query_attribute_review.rb +4 -3
  81. data/lib/rails_best_practices/reviews/use_say_with_time_in_migrations_review.rb +4 -3
  82. data/lib/rails_best_practices/reviews/use_scope_access_review.rb +2 -1
  83. data/lib/rails_best_practices/reviews/use_turbo_sprockets_rails3_review.rb +2 -1
  84. data/lib/rails_best_practices/version.rb +3 -2
  85. data/rails_best_practices.gemspec +11 -10
  86. data/spec/fixtures/lib/rails_best_practices/plugins/reviews/not_use_rails_root_review.rb +3 -2
  87. data/spec/rails_best_practices/analyzer_spec.rb +6 -8
  88. data/spec/rails_best_practices/core/check_spec.rb +2 -0
  89. data/spec/rails_best_practices/core/checks_loader_spec.rb +2 -0
  90. data/spec/rails_best_practices/core/configs_spec.rb +2 -0
  91. data/spec/rails_best_practices/core/controllers_spec.rb +2 -0
  92. data/spec/rails_best_practices/core/error_spec.rb +2 -0
  93. data/spec/rails_best_practices/core/except_methods_spec.rb +2 -0
  94. data/spec/rails_best_practices/core/gems_spec.rb +2 -0
  95. data/spec/rails_best_practices/core/helpers_spec.rb +2 -0
  96. data/spec/rails_best_practices/core/klasses_spec.rb +2 -0
  97. data/spec/rails_best_practices/core/mailers_spec.rb +2 -0
  98. data/spec/rails_best_practices/core/methods_spec.rb +6 -4
  99. data/spec/rails_best_practices/core/model_associations_spec.rb +4 -2
  100. data/spec/rails_best_practices/core/model_attributes_spec.rb +2 -0
  101. data/spec/rails_best_practices/core/models_spec.rb +2 -0
  102. data/spec/rails_best_practices/core/modules_spec.rb +2 -0
  103. data/spec/rails_best_practices/core/routes_spec.rb +4 -2
  104. data/spec/rails_best_practices/core/runner_spec.rb +2 -0
  105. data/spec/rails_best_practices/core_ext/erubis_spec.rb +3 -1
  106. data/spec/rails_best_practices/lexicals/long_line_check_spec.rb +8 -7
  107. data/spec/rails_best_practices/lexicals/remove_tab_check_spec.rb +8 -6
  108. data/spec/rails_best_practices/lexicals/remove_trailing_whitespace_check_spec.rb +9 -7
  109. data/spec/rails_best_practices/prepares/config_prepare_spec.rb +3 -1
  110. data/spec/rails_best_practices/prepares/controller_prepare_spec.rb +23 -21
  111. data/spec/rails_best_practices/prepares/gemfile_prepare_spec.rb +3 -1
  112. data/spec/rails_best_practices/prepares/helper_prepare_spec.rb +7 -5
  113. data/spec/rails_best_practices/prepares/initializer_prepare_spec.rb +4 -2
  114. data/spec/rails_best_practices/prepares/mailer_prepare_spec.rb +3 -1
  115. data/spec/rails_best_practices/prepares/model_prepare_spec.rb +56 -54
  116. data/spec/rails_best_practices/prepares/route_prepare_spec.rb +39 -37
  117. data/spec/rails_best_practices/prepares/schema_prepare_spec.rb +3 -1
  118. data/spec/rails_best_practices/reviews/add_model_virtual_attribute_review_spec.rb +2 -0
  119. data/spec/rails_best_practices/reviews/always_add_db_index_review_spec.rb +7 -5
  120. data/spec/rails_best_practices/reviews/check_destroy_return_value_review_spec.rb +12 -10
  121. data/spec/rails_best_practices/reviews/check_save_return_value_review_spec.rb +20 -18
  122. data/spec/rails_best_practices/reviews/default_scope_is_evil_review_spec.rb +2 -0
  123. data/spec/rails_best_practices/reviews/dry_bundler_in_capistrano_review_spec.rb +2 -0
  124. data/spec/rails_best_practices/reviews/hash_syntax_review_spec.rb +9 -7
  125. data/spec/rails_best_practices/reviews/isolate_seed_data_review_spec.rb +2 -0
  126. data/spec/rails_best_practices/reviews/keep_finders_on_their_own_model_review_spec.rb +2 -0
  127. data/spec/rails_best_practices/reviews/law_of_demeter_review_spec.rb +2 -0
  128. data/spec/rails_best_practices/reviews/move_code_into_controller_review_spec.rb +2 -0
  129. data/spec/rails_best_practices/reviews/move_code_into_helper_review_spec.rb +2 -0
  130. data/spec/rails_best_practices/reviews/move_code_into_model_review_spec.rb +11 -9
  131. data/spec/rails_best_practices/reviews/move_finder_to_named_scope_review_spec.rb +2 -0
  132. data/spec/rails_best_practices/reviews/move_model_logic_into_model_review_spec.rb +2 -0
  133. data/spec/rails_best_practices/reviews/needless_deep_nesting_review_spec.rb +2 -0
  134. data/spec/rails_best_practices/reviews/not_rescue_exception_review_spec.rb +9 -7
  135. data/spec/rails_best_practices/reviews/not_use_default_route_review_spec.rb +2 -0
  136. data/spec/rails_best_practices/reviews/not_use_time_ago_in_words_review_spec.rb +7 -5
  137. data/spec/rails_best_practices/reviews/overuse_route_customizations_review_spec.rb +2 -0
  138. data/spec/rails_best_practices/reviews/protect_mass_assignment_review_spec.rb +21 -19
  139. data/spec/rails_best_practices/reviews/remove_empty_helpers_review_spec.rb +6 -4
  140. data/spec/rails_best_practices/reviews/remove_unused_methods_in_controllers_review_spec.rb +33 -31
  141. data/spec/rails_best_practices/reviews/remove_unused_methods_in_helpers_review_spec.rb +13 -11
  142. data/spec/rails_best_practices/reviews/remove_unused_methods_in_models_review_spec.rb +65 -63
  143. data/spec/rails_best_practices/reviews/replace_complex_creation_with_factory_method_review_spec.rb +2 -0
  144. data/spec/rails_best_practices/reviews/replace_instance_variable_with_local_variable_review_spec.rb +2 -0
  145. data/spec/rails_best_practices/reviews/restrict_auto_generated_routes_review_spec.rb +24 -22
  146. data/spec/rails_best_practices/reviews/simplify_render_in_controllers_review_spec.rb +9 -7
  147. data/spec/rails_best_practices/reviews/simplify_render_in_views_review_spec.rb +13 -11
  148. data/spec/rails_best_practices/reviews/use_before_filter_review_spec.rb +3 -1
  149. data/spec/rails_best_practices/reviews/use_model_association_review_spec.rb +2 -0
  150. data/spec/rails_best_practices/reviews/use_multipart_alternative_as_content_type_of_email_review_spec.rb +2 -0
  151. data/spec/rails_best_practices/reviews/use_observer_review_spec.rb +7 -5
  152. data/spec/rails_best_practices/reviews/use_parentheses_in_method_def_review_spec.rb +2 -0
  153. data/spec/rails_best_practices/reviews/use_query_attribute_review_spec.rb +3 -1
  154. data/spec/rails_best_practices/reviews/use_say_with_time_in_migrations_review_spec.rb +9 -7
  155. data/spec/rails_best_practices/reviews/use_scope_access_review_spec.rb +2 -0
  156. data/spec/rails_best_practices/reviews/use_turbo_sprockets_rails3_review_spec.rb +2 -0
  157. data/spec/spec_helper.rb +2 -0
  158. metadata +26 -26
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -7,7 +9,7 @@ module RailsBestPractices
7
9
 
8
10
  describe 'resources' do
9
11
  before :each do
10
- content =<<-EOF
12
+ content = <<-EOF
11
13
  class PostsController < ApplicationController
12
14
  def show; end
13
15
  def new; end
@@ -21,7 +23,7 @@ module RailsBestPractices
21
23
  end
22
24
 
23
25
  it 'should restrict auto-generated routes' do
24
- content =<<-EOF
26
+ content = <<-EOF
25
27
  RailsBestPracticesCom::Application.routes.draw do
26
28
  resources :posts
27
29
  end
@@ -32,7 +34,7 @@ module RailsBestPractices
32
34
  end
33
35
 
34
36
  it 'should not restrict auto-generated routes with only' do
35
- content =<<-EOF
37
+ content = <<-EOF
36
38
  RailsBestPracticesCom::Application.routes.draw do
37
39
  resources :posts, only: %w(show new create edit update destroy)
38
40
  end
@@ -42,7 +44,7 @@ module RailsBestPractices
42
44
  end
43
45
 
44
46
  it 'should not restrict auto-generated routes with except' do
45
- content =<<-EOF
47
+ content = <<-EOF
46
48
  RailsBestPracticesCom::Application.routes.draw do
47
49
  resources :posts, except: :index
48
50
  end
@@ -53,7 +55,7 @@ module RailsBestPractices
53
55
 
54
56
  describe 'specify a controller' do
55
57
  it 'should restrict auto-generated routes' do
56
- content =<<-EOF
58
+ content = <<-EOF
57
59
  RailsBestPracticesCom::Application.routes.draw do
58
60
  resources :articles, controller: "posts"
59
61
  end
@@ -66,7 +68,7 @@ module RailsBestPractices
66
68
 
67
69
  describe 'namespace' do
68
70
  before do
69
- content =<<-EOF
71
+ content = <<-EOF
70
72
  class Admin::CommentsController < ApplicationController
71
73
  def show; end
72
74
  def new; end
@@ -80,7 +82,7 @@ module RailsBestPractices
80
82
  end
81
83
 
82
84
  it 'should restrict auto-generated routes' do
83
- content =<<-EOF
85
+ content = <<-EOF
84
86
  RailsBestPracticesCom::Application.routes.draw do
85
87
  namespace :admin do
86
88
  resources :comments
@@ -93,7 +95,7 @@ module RailsBestPractices
93
95
  end
94
96
 
95
97
  it 'should restrict auto-generated routes with scope :module' do
96
- content =<<-EOF
98
+ content = <<-EOF
97
99
  RailsBestPracticesCom::Application.routes.draw do
98
100
  scope module: :admin do
99
101
  resources :comments
@@ -106,7 +108,7 @@ module RailsBestPractices
106
108
  end
107
109
 
108
110
  it 'should restrict auto-generated routes with resources :module' do
109
- content =<<-EOF
111
+ content = <<-EOF
110
112
  RailsBestPracticesCom::Application.routes.draw do
111
113
  resources :comments, module: :admin
112
114
  end
@@ -119,7 +121,7 @@ module RailsBestPractices
119
121
 
120
122
  describe 'nested routes' do
121
123
  before :each do
122
- content =<<-EOF
124
+ content = <<-EOF
123
125
  class CommentsController < ApplicationController
124
126
  def index; end
125
127
  def show; end
@@ -134,7 +136,7 @@ module RailsBestPractices
134
136
  end
135
137
 
136
138
  it 'should restrict auto-generated routes' do
137
- content =<<-EOF
139
+ content = <<-EOF
138
140
  RailsBestPracticesCom::Application.routes.draw do
139
141
  resources :posts do
140
142
  resources :comments
@@ -147,7 +149,7 @@ module RailsBestPractices
147
149
  end
148
150
 
149
151
  it 'should not restrict auto-generated routes with only' do
150
- content =<<-EOF
152
+ content = <<-EOF
151
153
  RailsBestPracticesCom::Application.routes.draw do
152
154
  resources :posts, only: %w(show new create edit update destroy) do
153
155
  resources :comments
@@ -159,7 +161,7 @@ module RailsBestPractices
159
161
  end
160
162
 
161
163
  it 'should not restrict auto-generated routes with except' do
162
- content =<<-EOF
164
+ content = <<-EOF
163
165
  RailsBestPracticesCom::Application.routes.draw do
164
166
  resources :posts, except: :index do
165
167
  resources :comments
@@ -174,7 +176,7 @@ module RailsBestPractices
174
176
 
175
177
  describe 'resource' do
176
178
  before :each do
177
- content =<<-EOF
179
+ content = <<-EOF
178
180
  class AccountsController < ApplicationController
179
181
  def show; end
180
182
  def new; end
@@ -187,7 +189,7 @@ module RailsBestPractices
187
189
  end
188
190
 
189
191
  it 'should restrict auto-generated routes' do
190
- content =<<-EOF
192
+ content = <<-EOF
191
193
  ActionController::Routing::Routes.draw do |map|
192
194
  map.resource :account
193
195
  end
@@ -198,7 +200,7 @@ module RailsBestPractices
198
200
  end
199
201
 
200
202
  it 'should not restrict auto-generated routes with only' do
201
- content =<<-EOF
203
+ content = <<-EOF
202
204
  ActionController::Routing::Routes.draw do |map|
203
205
  map.resource :account, only: %w(show new create edit update)
204
206
  end
@@ -208,7 +210,7 @@ module RailsBestPractices
208
210
  end
209
211
 
210
212
  it 'should not restrict auto-generated routes with except' do
211
- content =<<-EOF
213
+ content = <<-EOF
212
214
  ActionController::Routing::Routes.draw do |map|
213
215
  map.resource :account, except: :destroy
214
216
  end
@@ -221,7 +223,7 @@ module RailsBestPractices
221
223
  runner = Core::Runner.new(prepares: Prepares::ControllerPrepare.new,
222
224
  reviews: RestrictAutoGeneratedRoutesReview.new(ignored_files: /config\/routes\.rb/))
223
225
 
224
- content =<<-EOF
226
+ content = <<-EOF
225
227
  ActionController::Routing::Routes.draw do |map|
226
228
  map.resource :account
227
229
  end
@@ -235,7 +237,7 @@ module RailsBestPractices
235
237
  let(:runner) { Core::Runner.new(prepares: [Prepares::ConfigPrepare.new, Prepares::ControllerPrepare.new], reviews: RestrictAutoGeneratedRoutesReview.new) }
236
238
 
237
239
  before do
238
- content =<<-EOF
240
+ content = <<-EOF
239
241
  module RailsBestPracticesCom
240
242
  class Application < Rails::Application
241
243
  config.api_only = true
@@ -243,7 +245,7 @@ module RailsBestPractices
243
245
  end
244
246
  EOF
245
247
  runner.prepare('config/application.rb', content)
246
- content =<<-EOF
248
+ content = <<-EOF
247
249
  class PostsController < ApplicationController
248
250
  def show; end
249
251
  def create; end
@@ -255,7 +257,7 @@ module RailsBestPractices
255
257
  end
256
258
 
257
259
  it 'should restrict auto-generated routes' do
258
- content =<<-EOF
260
+ content = <<-EOF
259
261
  RailsBestPracticesCom::Application.routes.draw do
260
262
  resources :posts
261
263
  end
@@ -266,7 +268,7 @@ module RailsBestPractices
266
268
  end
267
269
 
268
270
  it 'should not restrict auto-generated routes with only' do
269
- content =<<-EOF
271
+ content = <<-EOF
270
272
  RailsBestPracticesCom::Application.routes.draw do
271
273
  resources :posts, only: %w(show create update destroy)
272
274
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -6,7 +8,7 @@ module RailsBestPractices
6
8
  let(:runner) { Core::Runner.new(reviews: SimplifyRenderInControllersReview.new) }
7
9
 
8
10
  it 'should simplify render action view' do
9
- content =<<-EOF
11
+ content = <<-EOF
10
12
  def edit
11
13
  render action: :edit
12
14
  end
@@ -17,7 +19,7 @@ module RailsBestPractices
17
19
  end
18
20
 
19
21
  it "should simplify render actions's template" do
20
- content =<<-EOF
22
+ content = <<-EOF
21
23
  def edit
22
24
  render template: 'books/edit'
23
25
  end
@@ -28,7 +30,7 @@ module RailsBestPractices
28
30
  end
29
31
 
30
32
  it 'should simplify render an arbitrary file' do
31
- content =<<-EOF
33
+ content = <<-EOF
32
34
  def edit
33
35
  render file: '/path/to/rails/app/views/books/edit'
34
36
  end
@@ -39,7 +41,7 @@ module RailsBestPractices
39
41
  end
40
42
 
41
43
  it 'should not simplify render action view' do
42
- content =<<-EOF
44
+ content = <<-EOF
43
45
  render :edit
44
46
  EOF
45
47
  runner.review('app/controllers/posts_controller', content)
@@ -47,7 +49,7 @@ module RailsBestPractices
47
49
  end
48
50
 
49
51
  it "should not simplify render actions's template" do
50
- content =<<-EOF
52
+ content = <<-EOF
51
53
  def edit
52
54
  render 'books/edit'
53
55
  end
@@ -57,7 +59,7 @@ module RailsBestPractices
57
59
  end
58
60
 
59
61
  it 'should not simplify render an arbitrary file' do
60
- content =<<-EOF
62
+ content = <<-EOF
61
63
  def edit
62
64
  render '/path/to/rails/app/views/books/edit'
63
65
  end
@@ -68,7 +70,7 @@ module RailsBestPractices
68
70
 
69
71
  it 'should not check ignored files' do
70
72
  runner = Core::Runner.new(reviews: SimplifyRenderInControllersReview.new(ignored_files: /posts_controller/))
71
- content =<<-EOF
73
+ content = <<-EOF
72
74
  def edit
73
75
  render action: :edit
74
76
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -6,7 +8,7 @@ module RailsBestPractices
6
8
  let(:runner) { Core::Runner.new(reviews: SimplifyRenderInViewsReview.new) }
7
9
 
8
10
  it 'should simplify render simple partial' do
9
- content =<<-EOF
11
+ content = <<-EOF
10
12
  <%= render partial: 'sidebar' %>
11
13
  EOF
12
14
  runner.review('app/views/posts/index.html.erb', content)
@@ -15,7 +17,7 @@ module RailsBestPractices
15
17
  end
16
18
 
17
19
  it 'should simplify render partial with object' do
18
- content =<<-EOF
20
+ content = <<-EOF
19
21
  <%= render partial: 'post', object: @post %>
20
22
  EOF
21
23
  runner.review('app/views/posts/index.html.erb', content)
@@ -24,7 +26,7 @@ module RailsBestPractices
24
26
  end
25
27
 
26
28
  it 'should simplify render partial with collection' do
27
- content =<<-EOF
29
+ content = <<-EOF
28
30
  <%= render partial: 'posts', collection: @posts %>
29
31
  EOF
30
32
  runner.review('app/views/posts/index.html.erb', content)
@@ -33,7 +35,7 @@ module RailsBestPractices
33
35
  end
34
36
 
35
37
  it 'should simplify render partial with local variables' do
36
- content =<<-EOF
38
+ content = <<-EOF
37
39
  <%= render partial: 'comment', locals: { parent: post } %>
38
40
  EOF
39
41
  runner.review('app/views/posts/index.html.erb', content)
@@ -42,7 +44,7 @@ module RailsBestPractices
42
44
  end
43
45
 
44
46
  it 'should not simplify render simple partial' do
45
- content =<<-EOF
47
+ content = <<-EOF
46
48
  <%= render 'sidebar' %>
47
49
  <%= render 'shared/sidebar' %>
48
50
  EOF
@@ -51,7 +53,7 @@ module RailsBestPractices
51
53
  end
52
54
 
53
55
  it 'should not simplify render partial with object' do
54
- content =<<-EOF
56
+ content = <<-EOF
55
57
  <%= render @post %>
56
58
  EOF
57
59
  runner.review('app/views/posts/index.html.erb', content)
@@ -59,7 +61,7 @@ module RailsBestPractices
59
61
  end
60
62
 
61
63
  it 'should not simplify render partial with collection' do
62
- content =<<-EOF
64
+ content = <<-EOF
63
65
  <%= render @posts %>
64
66
  EOF
65
67
  runner.review('app/views/posts/index.html.erb', content)
@@ -67,7 +69,7 @@ module RailsBestPractices
67
69
  end
68
70
 
69
71
  it 'should not simplify render partial with local variables' do
70
- content =<<-EOF
72
+ content = <<-EOF
71
73
  <%= render 'comment', parent: post %>
72
74
  EOF
73
75
  runner.review('app/views/posts/index.html.erb', content)
@@ -75,7 +77,7 @@ module RailsBestPractices
75
77
  end
76
78
 
77
79
  it 'should not simplify render partial with complex partial' do
78
- content =<<-EOF
80
+ content = <<-EOF
79
81
  <%= render partial: 'shared/post', object: @post %>
80
82
  EOF
81
83
  runner.review('app/views/posts/index.html.erb', content)
@@ -83,7 +85,7 @@ module RailsBestPractices
83
85
  end
84
86
 
85
87
  it 'should not simplify render partial with layout option' do
86
- content =<<-EOF
88
+ content = <<-EOF
87
89
  <%= render partial: 'post', layout: 'post' %>
88
90
  EOF
89
91
  runner.review('app/views/posts/index.html.erb', content)
@@ -92,7 +94,7 @@ module RailsBestPractices
92
94
 
93
95
  it 'should not check ignored files' do
94
96
  runner = Core::Runner.new(reviews: SimplifyRenderInViewsReview.new(ignored_files: /views\/posts\/index/))
95
- content =<<-EOF
97
+ content = <<-EOF
96
98
  <%= render partial: 'sidebar' %>
97
99
  EOF
98
100
  runner.review('app/views/posts/index.html.erb', content)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -85,7 +87,7 @@ module RailsBestPractices
85
87
  end
86
88
 
87
89
  it 'should not use before_filter for protected/private methods' do
88
- content =<<-EOF
90
+ content = <<-EOF
89
91
  class PostsController < ApplicationController
90
92
  protected
91
93
  def load_comments
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  module RailsBestPractices
@@ -6,7 +8,7 @@ module RailsBestPractices
6
8
  let(:runner) { Core::Runner.new(prepares: Prepares::MailerPrepare.new, reviews: UseObserverReview.new) }
7
9
 
8
10
  before :each do
9
- content =<<-EOF
11
+ content = <<-EOF
10
12
  class ProjectMailer < ActionMailer::Base
11
13
  end
12
14
  EOF
@@ -14,7 +16,7 @@ module RailsBestPractices
14
16
  end
15
17
 
16
18
  it 'should use observer' do
17
- content =<<-EOF
19
+ content = <<-EOF
18
20
  class Project < ActiveRecord::Base
19
21
  after_create :send_create_notification
20
22
 
@@ -32,7 +34,7 @@ module RailsBestPractices
32
34
  end
33
35
 
34
36
  it 'should not use observer without callback' do
35
- content =<<-EOF
37
+ content = <<-EOF
36
38
  class Project < ActiveRecord::Base
37
39
  private
38
40
  def send_create_notification
@@ -47,7 +49,7 @@ module RailsBestPractices
47
49
  end
48
50
 
49
51
  it 'should use observer with two after_create' do
50
- content =<<-EOF
52
+ content = <<-EOF
51
53
  class Project < ActiveRecord::Base
52
54
  after_create :send_create_notification, :update_author
53
55
 
@@ -68,7 +70,7 @@ module RailsBestPractices
68
70
  end
69
71
 
70
72
  it 'should not raise when initiate an object in callback' do
71
- content =<<-EOF
73
+ content = <<-EOF
72
74
  class Project < ActiveRecord::Base
73
75
  after_create ProjectMailer.new
74
76
  end