guard-reek 1.0.2 → 1.1.0

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
  SHA1:
3
- metadata.gz: 6fba5213bcdd89e4ff8253b5c9606710e3664e14
4
- data.tar.gz: e03e22053c7b1352f441771458deefbff098e930
3
+ metadata.gz: 3e14145294d2397904b31818eca863d6c8d0fc29
4
+ data.tar.gz: 83f8324385d5faf09c04205d38dcc281eb6564dc
5
5
  SHA512:
6
- metadata.gz: 761bfe9e74aba431d56dd4d754f577f970a3c8d74b01ba173ea2a441c5aebc35dbb284f406cdfe7b29399082e822c6a6cb2855cb24277f0fc8dae0e8226d1662
7
- data.tar.gz: 7465ab59910af91d92b75a42eee2ddb351f0c4225c797e81ffdfbf47783633435c81bf9bdc87c9d7ae1ddb00fb26cec14400793beb4ac1cd86638c8668e44bba
6
+ metadata.gz: ed13bded7c1a6889fff97b47abf83b68afed9ba5e2acf795ea13759be9233bd17dfdb8943285a211c4a6eb9e308aeeba72c37a790bdca10e75a60ba677f32e06
7
+ data.tar.gz: f8ccbff9580d94599e85d772b6bd46762dcc82b869fda20243c2a9f12b1922d5ce4f448f3d9cdbb81cca49f11a1be5008267459e752a768de7f19ef93d3a25fe
data/.gitignore CHANGED
@@ -1,6 +1,7 @@
1
1
  *.gem
2
2
  *.rbc
3
3
  .bundle
4
+ vendor/bundle
4
5
  .config
5
6
  .yardoc
6
7
  Gemfile.lock
data/.travis.yml CHANGED
@@ -4,5 +4,10 @@ rvm:
4
4
  - 2.2.5
5
5
  - 2.3.1
6
6
  - jruby-9.0.5.0
7
- - rbx-2
8
-
7
+ - jruby-9.1.5.0
8
+ env:
9
+ global:
10
+ - RUBY_ENV=test
11
+ matrix:
12
+ - REEK_VERSION=3.0
13
+ - REEK_VERSION=4.0
data/Gemfile CHANGED
@@ -1,4 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
+ reek_version = ENV['REEK_VERSION']
4
+ gem 'reek', "~> #{reek_version}" if reek_version
5
+ # gem 'unparser', '0.2.4'
6
+
3
7
  # Specify your gem's dependencies in guard-reek.gemspec
4
8
  gemspec
data/Guardfile CHANGED
@@ -1,15 +1,10 @@
1
- guard :rspec do
1
+ guard :rspec, cmd: 'bundle exec rspec', all_on_start: true do
2
2
  watch(%r{^spec/.+_spec\.rb$})
3
3
  watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
4
4
  watch('spec/spec_helper.rb') { "spec" }
5
5
  end
6
6
 
7
- guard :bundler do
8
- watch('Gemfile')
9
- watch('guard-reek.gemspec')
10
- end
11
-
12
- guard :reek do
13
- watch("lib/guard/reek.rb")
7
+ guard :reek, cli: '--single-line' do
8
+ watch('config.reek')
14
9
  watch(/^lib\/.*\.rb$/)
15
10
  end
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  [![Gem Version](http://img.shields.io/gem/v/guard-reek.svg)](http://badge.fury.io/rb/guard-reek)
2
- [![Build Status](https://travis-ci.org/my-grocery-price-book/guard-reek.svg?branch=master)](https://travis-ci.org/my-grocery-price-book/guard-reek)
2
+ [![Build Status](https://travis-ci.org/grantspeelman/guard-reek.svg?branch=master)](https://travis-ci.org/grantspeelman/guard-reek)
3
3
 
4
4
  # guard-reek
5
5
 
@@ -44,7 +44,7 @@ Please read the [Guard usage documentation](https://github.com/guard/guard#readm
44
44
  You can pass some options in `Guardfile` like the following example:
45
45
 
46
46
  ```ruby
47
- guard :reek, all_on_start: false, run_all: false do
47
+ guard :reek, all_on_start: false, run_all: false, cli: '--single-line --no-wiki-links' do
48
48
  # ...
49
49
  end
50
50
  ```
@@ -54,6 +54,9 @@ end
54
54
  ```
55
55
  all_on_start: true # Check all files at Guard startup.
56
56
  # default: true
57
+ cli: '--single-line' # Pass arbitrary reek CLI arguments.
58
+ # An array or string is acceptable.
59
+ # default: nil
57
60
  run_all: true # Check all files on "Enter"
58
61
  # default: true
59
62
  ```
data/config.reek ADDED
@@ -0,0 +1,2 @@
1
+ exclude_paths:
2
+ - vendor
@@ -2,13 +2,13 @@
2
2
 
3
3
  module Guard
4
4
  class Reek
5
- # This class runs `rubocop` command, retrieves result and notifies.
6
- # An instance of this class is intended to invoke `rubocop` only once in its lifetime.
5
+ # This class runs `reek` command, retrieves result and notifies.
6
+ # An instance of this class is intended to invoke `reek` only once in its lifetime.
7
7
  class Runner
8
8
  attr_reader :notifier, :ui, :result
9
9
 
10
10
  def initialize(options)
11
- @options = options
11
+ @cli = options[:cli]
12
12
  @notifier = options[:notifier] || Notifier
13
13
  @ui = options[:ui] || UI
14
14
  end
@@ -17,14 +17,18 @@ module Guard
17
17
  paths = [] if paths.include?('.reek')
18
18
  ui_message(paths)
19
19
 
20
- command = ['reek'].concat(paths)
21
- @result = system(*command)
20
+ command = reek_cmd.concat(paths)
21
+ @result = Kernel.system(*command)
22
22
 
23
23
  notify_about_result
24
24
  end
25
25
 
26
26
  private
27
27
 
28
+ def reek_cmd
29
+ ['reek', @cli].compact
30
+ end
31
+
28
32
  def ui_message(paths)
29
33
  if paths.empty?
30
34
  ui.info('Guard::Reek running on all')
@@ -1,13 +1,13 @@
1
1
  # coding: utf-8
2
2
 
3
3
  module Guard
4
- # A workaround for declaring `class RuboCop`
4
+ # A workaround for declaring `class Reek`
5
5
  # before `class Reek < Guard` in reek.rb
6
6
  module ReekVersion
7
7
  # http://semver.org/
8
8
  MAJOR = 1
9
- MINOR = 0
10
- PATCH = 2
9
+ MINOR = 1
10
+ PATCH = 0
11
11
 
12
12
  def self.to_s
13
13
  [MAJOR, MINOR, PATCH].join('.')
@@ -3,31 +3,38 @@ require 'spec_helper'
3
3
  describe Guard::Reek::Runner do
4
4
  subject { Guard::Reek::Runner.new(options) }
5
5
  let(:options) { { ui: ui, notifier: notifier } }
6
+ let(:kernel) { class_double('Kernel', system: true) }
6
7
  let(:ui) { class_double('Guard::UI', info: true) }
7
8
  let(:notifier) { class_double('Guard::Notifier', notify: true) }
8
9
 
9
10
  before do
10
- allow(subject).to receive(:system)
11
+ allow(Kernel).to receive(:system)
11
12
  end
12
13
 
13
14
  it 'executes reek' do
14
- expect(subject).to receive(:system).with('reek')
15
+ expect(Kernel).to receive(:system).with('reek')
15
16
  subject.run
16
17
  end
17
18
 
18
19
  it 'executes reek with file' do
19
- expect(subject).to receive(:system).with('reek', 'test.rb')
20
+ expect(Kernel).to receive(:system).with('reek', 'test.rb')
20
21
  subject.run(['test.rb'])
21
22
  end
22
23
 
23
24
  it 'executes reek when .reek updated' do
24
- expect(subject).to receive(:system).with('reek')
25
+ expect(Kernel).to receive(:system).with('reek')
25
26
  subject.run(['.reek'])
26
27
  end
27
28
 
29
+ it 'executes reek with cli options' do
30
+ options[:cli] = '-s'
31
+ expect(Kernel).to receive(:system).with('reek', '-s')
32
+ subject.run
33
+ end
34
+
28
35
  context 'when reek exited with 0 status' do
29
36
  before do
30
- allow(subject).to receive(:system).and_return(true)
37
+ allow(Kernel).to receive(:system).and_return(true)
31
38
  end
32
39
 
33
40
  it 'notifies about success' do
@@ -38,7 +45,7 @@ describe Guard::Reek::Runner do
38
45
 
39
46
  context 'when reek exited with non 0 status' do
40
47
  before do
41
- allow(subject).to receive(:system).and_return(false)
48
+ allow(Kernel).to receive(:system).and_return(false)
42
49
  end
43
50
 
44
51
  it 'notifies about failure' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guard-reek
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grant Petersen-Speelman
@@ -9,132 +9,132 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-09-21 00:00:00.000000000 Z
12
+ date: 2017-05-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: reek
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - '>='
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - '>='
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: guard-compat
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
32
+ - - ~>
33
33
  - !ruby/object:Gem::Version
34
34
  version: '1.1'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "~>"
39
+ - - ~>
40
40
  - !ruby/object:Gem::Version
41
41
  version: '1.1'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: listen
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ~>
47
47
  - !ruby/object:Gem::Version
48
48
  version: 3.0.8
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ~>
54
54
  - !ruby/object:Gem::Version
55
55
  version: 3.0.8
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: bundler
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ~>
61
61
  - !ruby/object:Gem::Version
62
62
  version: '1.3'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - ~>
68
68
  - !ruby/object:Gem::Version
69
69
  version: '1.3'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: guard-rspec
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ">="
74
+ - - '>='
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ">="
81
+ - - '>='
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: guard-bundler
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ">="
88
+ - - '>='
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ">="
95
+ - - '>='
96
96
  - !ruby/object:Gem::Version
97
97
  version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: simplecov
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ">="
102
+ - - '>='
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ">="
109
+ - - '>='
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: rspec
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - "~>"
116
+ - - ~>
117
117
  - !ruby/object:Gem::Version
118
118
  version: '3.0'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - "~>"
123
+ - - ~>
124
124
  - !ruby/object:Gem::Version
125
125
  version: '3.0'
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: rake
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ">="
130
+ - - '>='
131
131
  - !ruby/object:Gem::Version
132
132
  version: '0'
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ">="
137
+ - - '>='
138
138
  - !ruby/object:Gem::Version
139
139
  version: '0'
140
140
  description: Guard::Reek automatically runs Reek when files change
@@ -145,14 +145,15 @@ executables: []
145
145
  extensions: []
146
146
  extra_rdoc_files: []
147
147
  files:
148
- - ".gitignore"
149
- - ".rspec"
150
- - ".travis.yml"
148
+ - .gitignore
149
+ - .rspec
150
+ - .travis.yml
151
151
  - Gemfile
152
152
  - Guardfile
153
153
  - LICENSE.txt
154
154
  - README.md
155
155
  - Rakefile
156
+ - config.reek
156
157
  - guard-reek.gemspec
157
158
  - lib/guard/reek.rb
158
159
  - lib/guard/reek/runner.rb
@@ -171,17 +172,17 @@ require_paths:
171
172
  - lib
172
173
  required_ruby_version: !ruby/object:Gem::Requirement
173
174
  requirements:
174
- - - ">="
175
+ - - '>='
175
176
  - !ruby/object:Gem::Version
176
177
  version: '0'
177
178
  required_rubygems_version: !ruby/object:Gem::Requirement
178
179
  requirements:
179
- - - ">="
180
+ - - '>='
180
181
  - !ruby/object:Gem::Version
181
182
  version: '0'
182
183
  requirements: []
183
184
  rubyforge_project:
184
- rubygems_version: 2.5.1
185
+ rubygems_version: 2.6.11
185
186
  signing_key:
186
187
  specification_version: 4
187
188
  summary: Guard plugin for Reek