rspectre 0.0.3 → 0.0.4

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: d0605c2e9efccc4a2b34893deb51bc2799504b56458b3ce954057b434cb5fd93
4
- data.tar.gz: b67d394f99ab11d29eae2327604ae70cde200268bd8f892138c44c95f45fedd4
3
+ metadata.gz: b0c337fb9cef9cb104d3ca686aa194cbb81062c0407e52ffdecec1e0c393d0fa
4
+ data.tar.gz: 144eee36cdd52ba9f99d38b3bc7bb57bcbd5d283accc4ba0eef11e474fe99ed6
5
5
  SHA512:
6
- metadata.gz: e0b080c91cd39d1b2649b55b3c92cbd68a2c43fae4b28829936b005da721d9a756541a5dbf6901f73960e4ac8507a1d4c5f197bc760d52dcd1e451c96a7fe8f7
7
- data.tar.gz: 485ed75293bcb98bdd40d7e5b6ac18d8bd2c015f9a110937ec92d05ea21526ad4d192553a38374edd3e889599cef7c4ff991432548a725cd38fda4994b7f9e21
6
+ metadata.gz: 1a5cd59d5dff5c9becdfc36c28e1605f7a3e222fe7ffa7543974ad6e80bb80238adb654140d3b976c910d5fda36e946456539720801dfdc72844c3c59040c8cf
7
+ data.tar.gz: ea374c050f039f1c027d12586f091c2fd15731b3a62648a95c15153bca1c03f145357ad3162eed228e3cedec293af7ba2009fc4178bf23d506bae33aa485f3c4
@@ -12,9 +12,10 @@ module RSpectre
12
12
  end
13
13
 
14
14
  def correct
15
- File.open(filename, 'w') do |file|
16
- file.write(rewrite(buffer, Parser::CurrentRuby.new.parse(buffer)))
17
- end
15
+ File.write(
16
+ filename,
17
+ rewrite(buffer, Parser::CurrentRuby.new.parse(buffer))
18
+ )
18
19
  end
19
20
 
20
21
  def on_block(node)
@@ -24,7 +24,7 @@ module RSpectre
24
24
  if block_given?
25
25
  yield node
26
26
  else
27
- return node
27
+ node
28
28
  end
29
29
  end
30
30
  end
@@ -26,16 +26,14 @@ module RSpectre
26
26
  puts to_s
27
27
  end
28
28
 
29
- # rubocop:disable Layout/IndentHeredoc
30
29
  def to_s
31
30
  <<~DOC
32
31
 
33
- #{source_id}: #{offense_type}: #{description}
34
- #{source_line}
35
- #{highlight}
32
+ #{source_id}: #{offense_type}: #{description}
33
+ #{source_line}
34
+ #{highlight}
36
35
  DOC
37
36
  end
38
- # rubocop:enable Layout/IndentHeredoc
39
37
 
40
38
  def description
41
39
  DESCRIPTIONS.fetch(type)
@@ -20,16 +20,26 @@ module RSpectre
20
20
  end
21
21
 
22
22
  def find_method(target_selector, line)
23
+ candidates = find_methods(target_selector, line)
24
+
25
+ if candidates.one?
26
+ candidates.first
27
+ else
28
+ warn Color.yellow("Unable to resolve `#{target_selector}` on line #{line}.")
29
+ end
30
+ end
31
+
32
+ private
33
+
34
+ def find_methods(target_selector, line)
23
35
  block_nodes(line).select do |node|
24
36
  send, = *node
25
37
  _receiver, selector = *send
26
38
 
27
39
  selector.equal?(target_selector)
28
- end.first
40
+ end
29
41
  end
30
42
 
31
- private
32
-
33
43
  def block_nodes(line)
34
44
  map.fetch(line, []).select { |node| node.type.equal?(:block) }
35
45
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RSpectre
4
- VERSION = '0.0.3'
4
+ VERSION = '0.0.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspectre
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Gollahon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-25 00:00:00.000000000 Z
11
+ date: 2022-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: anima
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: parser
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '2.3'
47
+ version: '2.6'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '2.3'
54
+ version: '2.6'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -72,42 +72,42 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0.10'
75
+ version: '0.14'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0.10'
82
+ version: '0.14'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rubocop
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.60.0
89
+ version: 1.24.1
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.60.0
96
+ version: 1.24.1
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rubocop-rspec
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 1.30.1
103
+ version: 2.7.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 1.30.1
110
+ version: 2.7.0
111
111
  description:
112
112
  email:
113
113
  executables:
@@ -134,7 +134,8 @@ files:
134
134
  homepage: http://github.com/dgollahon/rspectre
135
135
  licenses:
136
136
  - MIT
137
- metadata: {}
137
+ metadata:
138
+ rubygems_mfa_required: 'true'
138
139
  post_install_message:
139
140
  rdoc_options: []
140
141
  require_paths:
@@ -143,14 +144,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
143
144
  requirements:
144
145
  - - ">="
145
146
  - !ruby/object:Gem::Version
146
- version: '2.5'
147
+ version: '2.6'
147
148
  required_rubygems_version: !ruby/object:Gem::Requirement
148
149
  requirements:
149
150
  - - ">="
150
151
  - !ruby/object:Gem::Version
151
152
  version: '0'
152
153
  requirements: []
153
- rubygems_version: 3.0.8
154
+ rubygems_version: 3.1.6
154
155
  signing_key:
155
156
  specification_version: 4
156
157
  summary: A tool for linting RSpec test suites.