guard-reek 0.0.4 → 1.0.1
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 +4 -4
- data/.travis.yml +5 -15
- data/Gemfile +1 -6
- data/Guardfile +1 -1
- data/README.md +48 -10
- data/guard-reek.gemspec +10 -7
- data/lib/guard/reek/runner.rb +45 -0
- data/lib/guard/reek/templates/Guardfile +1 -0
- data/lib/guard/reek/version.rb +16 -0
- data/lib/guard/reek.rb +83 -36
- data/spec/guard/reek/runner_spec.rb +49 -0
- data/spec/guard/reek_spec.rb +63 -63
- data/spec/spec_helper.rb +17 -6
- metadata +53 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a87f04d28a74b87228e49e2df7143a2d0584f705
|
4
|
+
data.tar.gz: b681f7c6d7f90d2866d6d83ba47aff9a492ad4ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55afeb44a44b20fe2bc93d3941427093fbb6c7151dd92d800a6cd8b57db842249160ef0f0013d046fe32d59049c17e488a1660fd4c8020703b58718d9fd4c6d5
|
7
|
+
data.tar.gz: d0240943bfc1cd5629b67228e44af9af50ff7f938e41772d1cbabfdc029ba8ca70b0e3ad4dad20fde0da1a878129bca368e2766becea481f79ac021d5840fd41
|
data/.travis.yml
CHANGED
@@ -1,18 +1,8 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
-
- 1.9
|
4
|
-
-
|
5
|
-
- 2.
|
6
|
-
-
|
7
|
-
-
|
8
|
-
- jruby-head
|
9
|
-
- rbx-19mode
|
10
|
-
matrix:
|
11
|
-
allow_failures:
|
12
|
-
- rvm: ruby-head
|
13
|
-
- rvm: jruby-head
|
14
|
-
notifications:
|
15
|
-
recipients:
|
16
|
-
- gvillalta99@gmail.com
|
17
|
-
webhooks: https://www.buildheroes.com/api/projects/13bfb2e0028c5838d6fd6a2b6445c4c32a4f26ca/builds
|
3
|
+
- 2.1.9
|
4
|
+
- 2.2.5
|
5
|
+
- 2.3.1
|
6
|
+
- jruby-9.0.5.0
|
7
|
+
- rbx-2
|
18
8
|
|
data/Gemfile
CHANGED
data/Guardfile
CHANGED
data/README.md
CHANGED
@@ -1,24 +1,62 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
[](http://badge.fury.io/rb/guard-reek)
|
2
|
+
[](https://travis-ci.org/my-grocery-price-book/guard-reek)
|
3
|
+
|
4
|
+
# guard-reek
|
5
|
+
|
6
|
+
**guard-reek** allows you to automatically detect code smells with [Reek](https://github.com/troessner/reek) when files are modified.
|
4
7
|
|
5
8
|
## Installation
|
6
9
|
|
7
|
-
|
10
|
+
Please make sure to have [Guard](https://github.com/guard/guard) installed before continue.
|
11
|
+
|
12
|
+
Add `guard-reek` to your `Gemfile`:
|
13
|
+
|
14
|
+
```ruby
|
15
|
+
group :development do
|
16
|
+
gem 'guard-reek'
|
17
|
+
end
|
18
|
+
```
|
19
|
+
|
20
|
+
and then execute:
|
8
21
|
|
9
|
-
|
22
|
+
```sh
|
23
|
+
$ bundle install
|
24
|
+
```
|
10
25
|
|
11
|
-
|
26
|
+
or install it yourself as:
|
12
27
|
|
13
|
-
|
28
|
+
```sh
|
29
|
+
$ gem install guard-reek
|
30
|
+
```
|
14
31
|
|
15
|
-
|
32
|
+
Add the default Guard::Reek definition to your `Guardfile` by running:
|
16
33
|
|
17
|
-
|
34
|
+
```sh
|
35
|
+
$ guard init reek
|
36
|
+
```
|
18
37
|
|
19
38
|
## Usage
|
20
39
|
|
21
|
-
|
40
|
+
Please read the [Guard usage documentation](https://github.com/guard/guard#readme).
|
41
|
+
|
42
|
+
## Options
|
43
|
+
|
44
|
+
You can pass some options in `Guardfile` like the following example:
|
45
|
+
|
46
|
+
```ruby
|
47
|
+
guard :reek, all_on_start: false, run_all: false do
|
48
|
+
# ...
|
49
|
+
end
|
50
|
+
```
|
51
|
+
|
52
|
+
### Available Options
|
53
|
+
|
54
|
+
```
|
55
|
+
all_on_start: true # Check all files at Guard startup.
|
56
|
+
# default: true
|
57
|
+
run_all: true # Check all files on "Enter"
|
58
|
+
# default: true
|
59
|
+
```
|
22
60
|
|
23
61
|
## Contributing
|
24
62
|
|
data/guard-reek.gemspec
CHANGED
@@ -2,28 +2,31 @@
|
|
2
2
|
lib = File.expand_path('../lib', __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
4
|
|
5
|
+
require 'guard/reek/version'
|
6
|
+
|
5
7
|
Gem::Specification.new do |gem|
|
6
8
|
gem.name = "guard-reek"
|
7
|
-
gem.version =
|
8
|
-
gem.authors = [
|
9
|
-
gem.email = [
|
9
|
+
gem.version = Guard::ReekVersion.to_s
|
10
|
+
gem.authors = ['Grant Petersen-Speelman', 'Gustavo Villalta']
|
11
|
+
gem.email = ['grant@my-grocery-price-book.co.za', 'gvillalta99@gmail.com']
|
10
12
|
gem.description = %q{Guard::Reek automatically runs Reek when files change}
|
11
13
|
gem.summary = %q{Guard plugin for Reek}
|
12
|
-
gem.homepage = "https://github.com/
|
14
|
+
gem.homepage = "https://github.com/my-grocery-price-book/guard-reek"
|
13
15
|
gem.license = "MIT"
|
14
16
|
|
15
17
|
gem.files = `git ls-files`.split($/)
|
16
18
|
gem.executables = gem.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
17
|
-
gem.test_files = gem.files.grep(%r{^(
|
19
|
+
gem.test_files = gem.files.grep(%r{^(spec|gem|features)/})
|
18
20
|
gem.require_paths = ["lib"]
|
19
21
|
|
20
22
|
gem.add_dependency 'reek'
|
21
|
-
gem.add_dependency 'guard'
|
23
|
+
gem.add_dependency 'guard-compat', '~> 1.1'
|
22
24
|
|
25
|
+
gem.add_development_dependency 'listen', '~> 3.0.8'
|
23
26
|
gem.add_development_dependency "bundler", "~> 1.3"
|
24
27
|
gem.add_development_dependency "guard-rspec"
|
25
28
|
gem.add_development_dependency "guard-bundler"
|
26
29
|
gem.add_development_dependency "simplecov"
|
27
|
-
gem.add_development_dependency "rspec"
|
30
|
+
gem.add_development_dependency "rspec", "~> 3.0"
|
28
31
|
gem.add_development_dependency "rake"
|
29
32
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
module Guard
|
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.
|
7
|
+
class Runner
|
8
|
+
attr_reader :notifier, :ui, :result
|
9
|
+
|
10
|
+
def initialize(options)
|
11
|
+
@options = options
|
12
|
+
@notifier = options[:notifier] || Notifier
|
13
|
+
@ui = options[:ui] || UI
|
14
|
+
end
|
15
|
+
|
16
|
+
def run(paths = [])
|
17
|
+
paths = [] if paths.include?('.reek')
|
18
|
+
ui_message(paths)
|
19
|
+
|
20
|
+
command = ['reek'].concat(paths)
|
21
|
+
@result = system(*command)
|
22
|
+
|
23
|
+
notify_about_result
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def ui_message(paths)
|
29
|
+
if paths.empty?
|
30
|
+
ui.info('Guard::Reek running on all')
|
31
|
+
else
|
32
|
+
ui.info("Guard::Reek is running on #{paths}")
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def notify_about_result
|
37
|
+
if result
|
38
|
+
notifier.notify('Reek Results', title: 'Passed', image: :success)
|
39
|
+
else
|
40
|
+
notifier.notify('Reek Results', title: 'Failed', image: :failed)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
module Guard
|
4
|
+
# A workaround for declaring `class RuboCop`
|
5
|
+
# before `class Reek < Guard` in reek.rb
|
6
|
+
module ReekVersion
|
7
|
+
# http://semver.org/
|
8
|
+
MAJOR = 1
|
9
|
+
MINOR = 0
|
10
|
+
PATCH = 1
|
11
|
+
|
12
|
+
def self.to_s
|
13
|
+
[MAJOR, MINOR, PATCH].join('.')
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/guard/reek.rb
CHANGED
@@ -1,56 +1,103 @@
|
|
1
|
-
require 'guard'
|
2
|
-
require 'guard/guard'
|
1
|
+
require 'guard/compat/plugin'
|
3
2
|
|
4
3
|
module Guard
|
5
4
|
# Guard::Reek class, it implements an guard for reek task
|
6
|
-
class Reek <
|
7
|
-
|
8
|
-
FAILED = ["Failed", { title: "Failed", image: :failed }]
|
5
|
+
class Reek < Plugin
|
6
|
+
autoload :Runner, 'guard/reek/runner'
|
9
7
|
|
10
|
-
attr_reader :
|
8
|
+
attr_reader :runner, :ui, :options
|
11
9
|
|
12
|
-
|
10
|
+
# Initializes a Guard plugin.
|
11
|
+
# Don't do any work here, especially as Guard plugins get initialized even if they are not in an active group!
|
12
|
+
#
|
13
|
+
# @param [Hash] options the custom Guard plugin options
|
14
|
+
# @option options [Array<Guard::Watcher>] watchers the Guard plugin file watchers
|
15
|
+
# @option options [Symbol] group the group this Guard plugin belongs to
|
16
|
+
# @option options [Boolean] any_return allow any object to be returned from a watcher
|
17
|
+
def initialize(options = {})
|
13
18
|
super
|
14
|
-
@options = options
|
15
|
-
@files = Dir["**/*"]
|
16
|
-
@files.select! do |file|
|
17
|
-
watchers.reduce(false) { |res, watcher| res || watcher.match(file) }
|
18
|
-
end
|
19
|
-
end
|
20
19
|
|
21
|
-
|
22
|
-
|
23
|
-
|
20
|
+
@options = { all_on_start: true, run_all: true }.merge(options)
|
21
|
+
@runner = @options[:runner] || Runner.new(options)
|
22
|
+
@ui = @options[:ui] || UI
|
24
23
|
end
|
25
24
|
|
26
|
-
|
27
|
-
|
28
|
-
|
25
|
+
# Called once when Guard starts. Please override initialize method to init stuff.
|
26
|
+
#
|
27
|
+
# @raise [:task_has_failed] when start has failed
|
28
|
+
# @return [Object] the task result
|
29
|
+
#
|
30
|
+
def start
|
31
|
+
runner.run if options[:all_on_start]
|
32
|
+
rescue
|
33
|
+
throw :task_has_failed
|
29
34
|
end
|
30
35
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
36
|
+
# Called when `stop|quit|exit|s|q|e + enter` is pressed (when Guard quits).
|
37
|
+
#
|
38
|
+
# @raise [:task_has_failed] when stop has failed
|
39
|
+
# @return [Object] the task result
|
40
|
+
#
|
41
|
+
# def stop
|
42
|
+
# end
|
35
43
|
|
36
|
-
|
37
|
-
|
44
|
+
# Called when `reload|r|z + enter` is pressed.
|
45
|
+
# This method should be mainly used for "reload" (really!) actions like reloading passenger/spork/bundler/...
|
46
|
+
#
|
47
|
+
# @raise [:task_has_failed] when reload has failed
|
48
|
+
# @return [Object] the task result
|
49
|
+
#
|
50
|
+
# def reload
|
51
|
+
# end
|
38
52
|
|
39
|
-
|
40
|
-
|
41
|
-
|
53
|
+
# Called when just `enter` is pressed
|
54
|
+
# This method should be principally used for long action like running all specs/tests/...
|
55
|
+
#
|
56
|
+
# @raise [:task_has_failed] when run_all has failed
|
57
|
+
# @return [Object] the task result
|
58
|
+
#
|
59
|
+
def run_all
|
60
|
+
if options[:run_all]
|
61
|
+
ui.info('Guard::Reek is running on all files')
|
62
|
+
runner.run
|
63
|
+
else
|
64
|
+
ui.info('Guard::Reek is not allowed to run on all files')
|
65
|
+
end
|
66
|
+
rescue
|
67
|
+
throw :task_has_failed
|
42
68
|
end
|
43
69
|
|
44
|
-
|
45
|
-
|
70
|
+
# Called on file(s) additions that the Guard plugin watches.
|
71
|
+
#
|
72
|
+
# @param [Array<String>] paths the changes files or paths
|
73
|
+
# @raise [:task_has_failed] when run_on_additions has failed
|
74
|
+
# @return [Object] the task result
|
75
|
+
#
|
76
|
+
def run_on_additions(paths)
|
77
|
+
runner.run paths
|
78
|
+
rescue
|
79
|
+
throw :task_has_failed
|
46
80
|
end
|
47
81
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
82
|
+
# Called on file(s) modifications that the Guard plugin watches.
|
83
|
+
#
|
84
|
+
# @param [Array<String>] paths the changes files or paths
|
85
|
+
# @raise [:task_has_failed] when run_on_modifications has failed
|
86
|
+
# @return [Object] the task result
|
87
|
+
#
|
88
|
+
def run_on_modifications(paths)
|
89
|
+
runner.run paths
|
90
|
+
rescue
|
91
|
+
throw :task_has_failed
|
54
92
|
end
|
93
|
+
|
94
|
+
# Called on file(s) removals that the Guard plugin watches.
|
95
|
+
#
|
96
|
+
# @param [Array<String>] paths the changes files or paths
|
97
|
+
# @raise [:task_has_failed] when run_on_removals has failed
|
98
|
+
# @return [Object] the task result
|
99
|
+
#
|
100
|
+
# def run_on_removals(paths)
|
101
|
+
# end
|
55
102
|
end
|
56
103
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Guard::Reek::Runner do
|
4
|
+
subject { Guard::Reek::Runner.new(options) }
|
5
|
+
let(:options) { { ui: ui, notifier: notifier } }
|
6
|
+
let(:ui) { class_double('Guard::UI', info: true) }
|
7
|
+
let(:notifier) { class_double('Guard::Notifier', notify: true) }
|
8
|
+
|
9
|
+
before do
|
10
|
+
allow(subject).to receive(:system)
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'executes reek' do
|
14
|
+
expect(subject).to receive(:system).with('reek')
|
15
|
+
subject.run
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'executes reek with file' do
|
19
|
+
expect(subject).to receive(:system).with('reek', 'test.rb')
|
20
|
+
subject.run(['test.rb'])
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'executes reek when .reek updated' do
|
24
|
+
expect(subject).to receive(:system).with('reek')
|
25
|
+
subject.run(['.reek'])
|
26
|
+
end
|
27
|
+
|
28
|
+
context 'when reek exited with 0 status' do
|
29
|
+
before do
|
30
|
+
allow(subject).to receive(:system).and_return(true)
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'notifies about success' do
|
34
|
+
expect(notifier).to receive(:notify).with('Reek Results', title: 'Passed', image: :success)
|
35
|
+
subject.run
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
context 'when reek exited with non 0 status' do
|
40
|
+
before do
|
41
|
+
allow(subject).to receive(:system).and_return(false)
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'notifies about failure' do
|
45
|
+
expect(notifier).to receive(:notify).with('Reek Results', title: 'Failed', image: :failed)
|
46
|
+
subject.run
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
data/spec/guard/reek_spec.rb
CHANGED
@@ -1,96 +1,96 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Guard::Reek do
|
4
|
-
subject {
|
5
|
-
let(:
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
describe "#start" do
|
15
|
-
subject(:start) { guard.start }
|
16
|
-
|
17
|
-
it "runs all" do
|
18
|
-
guard.should_receive :run_all
|
4
|
+
subject { described_class.new options }
|
5
|
+
let(:options) { { runner: runner, ui: ui } }
|
6
|
+
let(:ui) { class_double('Guard::UI', info: true) }
|
7
|
+
let(:runner) { instance_double('Guard::Reek::Runner') }
|
8
|
+
|
9
|
+
describe '#start' do
|
10
|
+
def start
|
11
|
+
subject.start
|
12
|
+
end
|
19
13
|
|
14
|
+
it 'runs by default' do
|
15
|
+
expect(runner).to receive(:run).with(no_args)
|
20
16
|
start
|
21
17
|
end
|
22
|
-
end
|
23
18
|
|
24
|
-
|
25
|
-
|
19
|
+
it 'wont run when all_on_start is false' do
|
20
|
+
options[:all_on_start] = false
|
21
|
+
expect(runner).to_not receive(:run)
|
22
|
+
start
|
23
|
+
end
|
26
24
|
|
27
|
-
it
|
28
|
-
|
25
|
+
it 'runs when all_on_start is true' do
|
26
|
+
options[:all_on_start] = true
|
27
|
+
expect(runner).to receive(:run).with(no_args)
|
28
|
+
start
|
29
|
+
end
|
29
30
|
|
30
|
-
|
31
|
+
it 'raises :task_has_failed if runner throws exception' do
|
32
|
+
allow(runner).to receive(:run).and_raise(RuntimeError)
|
33
|
+
expect { start }.to raise_exception(UncaughtThrowError)
|
31
34
|
end
|
32
35
|
end
|
33
36
|
|
34
|
-
describe
|
35
|
-
|
36
|
-
|
37
|
-
it "runs changed paths" do
|
38
|
-
described_class.should_receive(:reek).with("path")
|
39
|
-
|
40
|
-
run_on_changes
|
37
|
+
describe '#run_all' do
|
38
|
+
def run_all
|
39
|
+
subject.run_all
|
41
40
|
end
|
42
|
-
end
|
43
41
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
described_class.stub(:command)
|
48
|
-
described_class.stub(:system).and_return(true)
|
42
|
+
it 'runs by default' do
|
43
|
+
expect(runner).to receive(:run).with(no_args)
|
44
|
+
run_all
|
49
45
|
end
|
50
46
|
|
51
|
-
|
47
|
+
it 'wont run when run_all is false' do
|
48
|
+
options[:run_all] = false
|
49
|
+
expect(runner).to_not receive(:run)
|
50
|
+
run_all
|
51
|
+
end
|
52
52
|
|
53
|
-
it
|
54
|
-
|
53
|
+
it 'runs when all_on_start is true' do
|
54
|
+
options[:run_all] = true
|
55
|
+
expect(runner).to receive(:run).with(no_args)
|
56
|
+
run_all
|
55
57
|
end
|
56
58
|
|
57
|
-
it
|
58
|
-
|
59
|
+
it 'raises :task_has_failed if runner throws exception' do
|
60
|
+
allow(runner).to receive(:run).and_raise(RuntimeError)
|
61
|
+
expect { run_all }.to raise_exception(UncaughtThrowError)
|
59
62
|
end
|
63
|
+
end
|
60
64
|
|
61
|
-
|
62
|
-
|
65
|
+
describe '#run_on_additions' do
|
66
|
+
def run_on_additions(paths)
|
67
|
+
subject.run_on_additions(paths)
|
63
68
|
end
|
64
69
|
|
65
|
-
|
66
|
-
|
70
|
+
it 'runs by default' do
|
71
|
+
expect(runner).to receive(:run).with(['lib/myfile.rb'])
|
72
|
+
run_on_additions(['lib/myfile.rb'])
|
67
73
|
end
|
68
|
-
end
|
69
74
|
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
it { should =~ /path$/ }
|
75
|
+
it 'raises :task_has_failed if runner throws exception' do
|
76
|
+
allow(runner).to receive(:run).and_raise(RuntimeError)
|
77
|
+
expect { run_on_additions(['lib/myfile.rb']) }.to raise_exception(UncaughtThrowError)
|
78
|
+
end
|
75
79
|
end
|
76
80
|
|
77
|
-
describe
|
78
|
-
|
79
|
-
subject(
|
80
|
-
it "notifies the success to notifier" do
|
81
|
-
Guard::Notifier.should_receive(:notify).with(*Guard::Reek::SUCCESS)
|
82
|
-
|
83
|
-
notify
|
84
|
-
end
|
81
|
+
describe '#run_on_modifications' do
|
82
|
+
def run_on_modifications(paths)
|
83
|
+
subject.run_on_modifications(paths)
|
85
84
|
end
|
86
85
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
86
|
+
it 'runs by default' do
|
87
|
+
expect(runner).to receive(:run).with(['lib/myfile.rb'])
|
88
|
+
run_on_modifications(['lib/myfile.rb'])
|
89
|
+
end
|
91
90
|
|
92
|
-
|
93
|
-
|
91
|
+
it 'raises :task_has_failed if runner throws exception' do
|
92
|
+
allow(runner).to receive(:run).and_raise(RuntimeError)
|
93
|
+
expect { run_on_modifications(['lib/myfile.rb']) }.to raise_exception(UncaughtThrowError)
|
94
94
|
end
|
95
95
|
end
|
96
96
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,18 +1,29 @@
|
|
1
|
-
require '
|
2
|
-
|
1
|
+
require 'rubygems'
|
2
|
+
require 'simplecov'
|
3
|
+
SimpleCov.start
|
3
4
|
|
4
5
|
ENV['RUBY_ENV'] ||= 'test'
|
5
6
|
|
6
|
-
require '
|
7
|
+
require 'bundler/setup'
|
7
8
|
|
8
9
|
SimpleCov.start do
|
9
|
-
add_group
|
10
|
+
add_group 'Libs', 'lib'
|
11
|
+
add_filter '/vendor/bundle/'
|
10
12
|
end
|
11
13
|
|
12
|
-
|
13
|
-
SimpleCov.
|
14
|
+
if RUBY_PLATFORM != 'java'
|
15
|
+
SimpleCov.minimum_coverage 98
|
16
|
+
SimpleCov.maximum_coverage_drop 2
|
17
|
+
end
|
18
|
+
|
19
|
+
# Initialize Guard for running tests.
|
20
|
+
require 'guard'
|
21
|
+
Guard.setup(notify: false)
|
14
22
|
|
15
23
|
require 'guard/reek'
|
16
24
|
|
25
|
+
#make jruby and ruby 2.1 happy on travis
|
26
|
+
UncaughtThrowError = ArgumentError unless defined?(UncaughtThrowError)
|
27
|
+
|
17
28
|
RSpec.configure do |config|
|
18
29
|
end
|
metadata
CHANGED
@@ -1,137 +1,153 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-reek
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Grant Petersen-Speelman
|
7
8
|
- Gustavo Villalta
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2016-09-21 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: reek
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
|
-
- -
|
18
|
+
- - ">="
|
18
19
|
- !ruby/object:Gem::Version
|
19
20
|
version: '0'
|
20
21
|
type: :runtime
|
21
22
|
prerelease: false
|
22
23
|
version_requirements: !ruby/object:Gem::Requirement
|
23
24
|
requirements:
|
24
|
-
- -
|
25
|
+
- - ">="
|
25
26
|
- !ruby/object:Gem::Version
|
26
27
|
version: '0'
|
27
28
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: guard
|
29
|
+
name: guard-compat
|
29
30
|
requirement: !ruby/object:Gem::Requirement
|
30
31
|
requirements:
|
31
|
-
- -
|
32
|
+
- - "~>"
|
32
33
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
34
|
+
version: '1.1'
|
34
35
|
type: :runtime
|
35
36
|
prerelease: false
|
36
37
|
version_requirements: !ruby/object:Gem::Requirement
|
37
38
|
requirements:
|
38
|
-
- -
|
39
|
+
- - "~>"
|
39
40
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
41
|
+
version: '1.1'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: listen
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 3.0.8
|
49
|
+
type: :development
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 3.0.8
|
41
56
|
- !ruby/object:Gem::Dependency
|
42
57
|
name: bundler
|
43
58
|
requirement: !ruby/object:Gem::Requirement
|
44
59
|
requirements:
|
45
|
-
- - ~>
|
60
|
+
- - "~>"
|
46
61
|
- !ruby/object:Gem::Version
|
47
62
|
version: '1.3'
|
48
63
|
type: :development
|
49
64
|
prerelease: false
|
50
65
|
version_requirements: !ruby/object:Gem::Requirement
|
51
66
|
requirements:
|
52
|
-
- - ~>
|
67
|
+
- - "~>"
|
53
68
|
- !ruby/object:Gem::Version
|
54
69
|
version: '1.3'
|
55
70
|
- !ruby/object:Gem::Dependency
|
56
71
|
name: guard-rspec
|
57
72
|
requirement: !ruby/object:Gem::Requirement
|
58
73
|
requirements:
|
59
|
-
- -
|
74
|
+
- - ">="
|
60
75
|
- !ruby/object:Gem::Version
|
61
76
|
version: '0'
|
62
77
|
type: :development
|
63
78
|
prerelease: false
|
64
79
|
version_requirements: !ruby/object:Gem::Requirement
|
65
80
|
requirements:
|
66
|
-
- -
|
81
|
+
- - ">="
|
67
82
|
- !ruby/object:Gem::Version
|
68
83
|
version: '0'
|
69
84
|
- !ruby/object:Gem::Dependency
|
70
85
|
name: guard-bundler
|
71
86
|
requirement: !ruby/object:Gem::Requirement
|
72
87
|
requirements:
|
73
|
-
- -
|
88
|
+
- - ">="
|
74
89
|
- !ruby/object:Gem::Version
|
75
90
|
version: '0'
|
76
91
|
type: :development
|
77
92
|
prerelease: false
|
78
93
|
version_requirements: !ruby/object:Gem::Requirement
|
79
94
|
requirements:
|
80
|
-
- -
|
95
|
+
- - ">="
|
81
96
|
- !ruby/object:Gem::Version
|
82
97
|
version: '0'
|
83
98
|
- !ruby/object:Gem::Dependency
|
84
99
|
name: simplecov
|
85
100
|
requirement: !ruby/object:Gem::Requirement
|
86
101
|
requirements:
|
87
|
-
- -
|
102
|
+
- - ">="
|
88
103
|
- !ruby/object:Gem::Version
|
89
104
|
version: '0'
|
90
105
|
type: :development
|
91
106
|
prerelease: false
|
92
107
|
version_requirements: !ruby/object:Gem::Requirement
|
93
108
|
requirements:
|
94
|
-
- -
|
109
|
+
- - ">="
|
95
110
|
- !ruby/object:Gem::Version
|
96
111
|
version: '0'
|
97
112
|
- !ruby/object:Gem::Dependency
|
98
113
|
name: rspec
|
99
114
|
requirement: !ruby/object:Gem::Requirement
|
100
115
|
requirements:
|
101
|
-
- -
|
116
|
+
- - "~>"
|
102
117
|
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
118
|
+
version: '3.0'
|
104
119
|
type: :development
|
105
120
|
prerelease: false
|
106
121
|
version_requirements: !ruby/object:Gem::Requirement
|
107
122
|
requirements:
|
108
|
-
- -
|
123
|
+
- - "~>"
|
109
124
|
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
125
|
+
version: '3.0'
|
111
126
|
- !ruby/object:Gem::Dependency
|
112
127
|
name: rake
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
114
129
|
requirements:
|
115
|
-
- -
|
130
|
+
- - ">="
|
116
131
|
- !ruby/object:Gem::Version
|
117
132
|
version: '0'
|
118
133
|
type: :development
|
119
134
|
prerelease: false
|
120
135
|
version_requirements: !ruby/object:Gem::Requirement
|
121
136
|
requirements:
|
122
|
-
- -
|
137
|
+
- - ">="
|
123
138
|
- !ruby/object:Gem::Version
|
124
139
|
version: '0'
|
125
140
|
description: Guard::Reek automatically runs Reek when files change
|
126
141
|
email:
|
142
|
+
- grant@my-grocery-price-book.co.za
|
127
143
|
- gvillalta99@gmail.com
|
128
144
|
executables: []
|
129
145
|
extensions: []
|
130
146
|
extra_rdoc_files: []
|
131
147
|
files:
|
132
|
-
- .gitignore
|
133
|
-
- .rspec
|
134
|
-
- .travis.yml
|
148
|
+
- ".gitignore"
|
149
|
+
- ".rspec"
|
150
|
+
- ".travis.yml"
|
135
151
|
- Gemfile
|
136
152
|
- Guardfile
|
137
153
|
- LICENSE.txt
|
@@ -139,10 +155,13 @@ files:
|
|
139
155
|
- Rakefile
|
140
156
|
- guard-reek.gemspec
|
141
157
|
- lib/guard/reek.rb
|
158
|
+
- lib/guard/reek/runner.rb
|
142
159
|
- lib/guard/reek/templates/Guardfile
|
160
|
+
- lib/guard/reek/version.rb
|
161
|
+
- spec/guard/reek/runner_spec.rb
|
143
162
|
- spec/guard/reek_spec.rb
|
144
163
|
- spec/spec_helper.rb
|
145
|
-
homepage: https://github.com/
|
164
|
+
homepage: https://github.com/my-grocery-price-book/guard-reek
|
146
165
|
licenses:
|
147
166
|
- MIT
|
148
167
|
metadata: {}
|
@@ -152,18 +171,21 @@ require_paths:
|
|
152
171
|
- lib
|
153
172
|
required_ruby_version: !ruby/object:Gem::Requirement
|
154
173
|
requirements:
|
155
|
-
- -
|
174
|
+
- - ">="
|
156
175
|
- !ruby/object:Gem::Version
|
157
176
|
version: '0'
|
158
177
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
159
178
|
requirements:
|
160
|
-
- -
|
179
|
+
- - ">="
|
161
180
|
- !ruby/object:Gem::Version
|
162
181
|
version: '0'
|
163
182
|
requirements: []
|
164
183
|
rubyforge_project:
|
165
|
-
rubygems_version: 2.
|
184
|
+
rubygems_version: 2.5.1
|
166
185
|
signing_key:
|
167
186
|
specification_version: 4
|
168
187
|
summary: Guard plugin for Reek
|
169
|
-
test_files:
|
188
|
+
test_files:
|
189
|
+
- spec/guard/reek/runner_spec.rb
|
190
|
+
- spec/guard/reek_spec.rb
|
191
|
+
- spec/spec_helper.rb
|