rubocop-obsession 0.1.5 → 0.1.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9bfae7e0b1e495fad34ada943845fd9399fe6763dd0b6eca0a946f87754ba4a2
4
- data.tar.gz: 1651b96c4cd6ace35e62dfc968ec4dd8b690118c1b7e8aa5432abd59e5e0b8ad
3
+ metadata.gz: 4b1e6edfacbf86e2ac264de49f2ac818af6ee693c6cabe9865894b556953e3ad
4
+ data.tar.gz: 9d523c4878734ef93c3b0052622ffe49e1a3913505963a91fe10327ddac17660
5
5
  SHA512:
6
- metadata.gz: a0dd211e0748686195f25c2505aeef9baecae83e1648a4c7ddddf011a31e1de94e5e6cb239a6d8e67e3bf55b39c766af8e5d19f55aec70213993f7d7ae0dbea8
7
- data.tar.gz: 2e427f1f22dca52e0c417b53c8e5b390aaaf801335d379e888a8131dd7b3e005abe0a32628e1efd9dbe9af4ab3ef749edb38ebb4143c634b74c5ffeff0385bd8
6
+ metadata.gz: eed54a03536307d0bfdda7b43b8346306420d1037068921b238f67fbd938c276d84f5802f70ce42bc0a26f3d46f399a5db9e3864ac73adfc01e6e5911f8f5f83
7
+ data.tar.gz: bc7e712ec48bbe05f8419754a9b9d1f443973e154ca4525dc0712a3c0576be840b66c65e67c8a206a12a628af97d703c7b84d50a15951dc8446dc1bda5c5461e
data/README.md CHANGED
@@ -9,6 +9,9 @@ There are some lower-level cops as well.
9
9
  Use the provided cops as is, or as inspiration to build custom cops aligned
10
10
  with your project's best practices.
11
11
 
12
+ Does your project have any cool custom cops that you think others might benefit
13
+ from? Then please open a PR!
14
+
12
15
  ## Installation
13
16
 
14
17
  Install the gem:
data/config/default.yml CHANGED
@@ -66,8 +66,6 @@ Obsession/Rails/ServiceName:
66
66
  - 'app/jobs/**/*'
67
67
  Exclude:
68
68
  - 'app/jobs/application_job.rb'
69
- - 'app/jobs/scheduled/scheduled_job.rb'
70
- - '**/*events/**'
71
69
  Obsession/Rails/ServicePerformMethod:
72
70
  Enabled: true
73
71
  Include:
@@ -56,7 +56,7 @@ module RuboCop
56
56
  # def method_c; ...; end
57
57
  class MethodOrder < Base
58
58
  include Helpers
59
- include RangeHelp
59
+ include CommentsHelp
60
60
  include VisibilityHelp
61
61
  extend AutoCorrector
62
62
 
@@ -209,40 +209,18 @@ module RuboCop
209
209
 
210
210
  def autocorrect(corrector, method, previous_method)
211
211
  previous_method_range = source_range_with_comment(previous_method)
212
+ if buffer.source[previous_method_range.end_pos + 1] == "\n"
213
+ previous_method_range = previous_method_range.adjust(end_pos: 1)
214
+ end
215
+
212
216
  method_range = source_range_with_comment(method)
217
+ if buffer.source[method_range.begin_pos - 1] == "\n"
218
+ method_range = method_range.adjust(end_pos: 1)
219
+ end
213
220
 
214
221
  corrector.insert_after(previous_method_range, method_range.source)
215
222
  corrector.remove(method_range)
216
223
  end
217
-
218
- def source_range_with_comment(node)
219
- range_between(start_position_with_comment(node), end_position(node) + 1)
220
- end
221
-
222
- def start_position_with_comment(node)
223
- first_comment = nil
224
-
225
- (node.first_line - 1).downto(1) do |annotation_line|
226
- comment = processed_source.comment_at_line(annotation_line)
227
- break if !comment
228
- first_comment = comment if whole_line_comment_at_line?(annotation_line)
229
- end
230
-
231
- start_line_position(first_comment || node)
232
- end
233
-
234
- def whole_line_comment_at_line?(line)
235
- /\A\s*#/.match?(processed_source.lines[line - 1])
236
- end
237
-
238
- def start_line_position(node)
239
- processed_source.buffer.line_range(node.loc.line).begin_pos - 1
240
- end
241
-
242
- def end_position(node)
243
- end_line = processed_source.buffer.line_for_position(node.loc.expression.end_pos)
244
- processed_source.buffer.line_range(end_line).end_pos
245
- end
246
224
  end
247
225
  end
248
226
  end
@@ -1,5 +1,5 @@
1
1
  module Rubocop
2
2
  module Obsession
3
- VERSION = '0.1.5'
3
+ VERSION = '0.1.6'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-obsession
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jerome Dalbert
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-28 00:00:00.000000000 Z
11
+ date: 2024-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport