rake_check 0.1.2 → 0.1.3
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.
- data/lib/rake_check/cane_checker.rb +7 -5
- data/lib/rake_check/rbp_checker.rb +9 -7
- data/lib/rake_check/reek_checker.rb +7 -2
- data/lib/rake_check/rspec_checker.rb +8 -7
- data/lib/rake_check/tasks/check.rake +3 -4
- data/lib/rake_check/version.rb +1 -1
- data/lib/rake_check/yard_checker.rb +6 -6
- data/rake_check.gemspec +0 -1
- metadata +11 -22
@@ -10,7 +10,11 @@ class CaneChecker
|
|
10
10
|
# @return [Hash] Checkresult
|
11
11
|
# @author dmasur
|
12
12
|
def result
|
13
|
-
@shell_output =
|
13
|
+
@shell_output = begin
|
14
|
+
`cane`
|
15
|
+
rescue Errno::ENOENT
|
16
|
+
"Cane not found"
|
17
|
+
end
|
14
18
|
{ :type => :cane, :check_output => @shell_output, :status => status }
|
15
19
|
end
|
16
20
|
|
@@ -39,10 +43,8 @@ class CaneChecker
|
|
39
43
|
# @return [String] Colored Validation Count
|
40
44
|
# @author dmasur
|
41
45
|
def color_violations
|
42
|
-
color =
|
43
|
-
|
44
|
-
else :red
|
45
|
-
end
|
46
|
+
color = :red
|
47
|
+
color = :yellow if @violations.between?(1, 9)
|
46
48
|
@violations = @violations.to_s.send color
|
47
49
|
end
|
48
50
|
end
|
@@ -10,7 +10,11 @@ class RbpChecker
|
|
10
10
|
# @return [Hash] Checkresult
|
11
11
|
# @author dmasur
|
12
12
|
def result
|
13
|
-
@shell_output =
|
13
|
+
@shell_output = begin
|
14
|
+
`rails_best_practices --silent --spec`
|
15
|
+
rescue Errno::ENOENT
|
16
|
+
"Rails best practices not found"
|
17
|
+
end
|
14
18
|
{:type => :rbp, :check_output => output, :status => status}
|
15
19
|
end
|
16
20
|
|
@@ -21,8 +25,8 @@ class RbpChecker
|
|
21
25
|
# @return [String] Checkoutput
|
22
26
|
# @author dmasur
|
23
27
|
def output
|
24
|
-
|
25
|
-
|
28
|
+
if state == :good
|
29
|
+
''
|
26
30
|
else
|
27
31
|
regexp = /Please go to .* to see more useful Rails Best Practices./
|
28
32
|
output_lines = @shell_output.gsub(regexp, '').split(/\n/)
|
@@ -36,8 +40,7 @@ class RbpChecker
|
|
36
40
|
# @return [String] Checkstatus
|
37
41
|
# @author dmasur
|
38
42
|
def status
|
39
|
-
|
40
|
-
case tmp_state
|
43
|
+
case state
|
41
44
|
when :good then 'OK'.green
|
42
45
|
when :error then 'N/A'
|
43
46
|
else error_message.red
|
@@ -50,8 +53,7 @@ class RbpChecker
|
|
50
53
|
# @return [String] Errormessage
|
51
54
|
# @author dmasur
|
52
55
|
def error_message
|
53
|
-
|
54
|
-
"Found #{warning_count} warnings"
|
56
|
+
/Found \d+ warnings/.match(@shell_output)[0]
|
55
57
|
end
|
56
58
|
|
57
59
|
##
|
@@ -10,8 +10,13 @@ class ReekChecker
|
|
10
10
|
# @author dmasur
|
11
11
|
def result
|
12
12
|
require_dependencies
|
13
|
-
|
14
|
-
@shell_output =
|
13
|
+
|
14
|
+
@shell_output = begin
|
15
|
+
`reek app lib -y 2>/dev/null`
|
16
|
+
rescue Errno::ENOENT
|
17
|
+
"Reek not found"
|
18
|
+
end
|
19
|
+
@shell_output = @shell_output.split("\n").
|
15
20
|
delete_if{|line| line.include?('already initialized constant') }.join("\n")
|
16
21
|
{:type => :reek, :check_output => output, :status => status}
|
17
22
|
end
|
@@ -10,7 +10,11 @@ class RspecChecker
|
|
10
10
|
# @return [Hash] Checkresult
|
11
11
|
# @author dmasur
|
12
12
|
def result directory="spec"
|
13
|
-
@shell_output =
|
13
|
+
@shell_output = begin
|
14
|
+
`export COVERAGE=true; rspec #{directory}; export COVERAGE=`
|
15
|
+
rescue Errno::ENOENT
|
16
|
+
"RSpec not found"
|
17
|
+
end
|
14
18
|
{:type => directory, :status => status + code_coverage, :check_output => output}
|
15
19
|
end
|
16
20
|
|
@@ -36,10 +40,7 @@ class RspecChecker
|
|
36
40
|
# @return [String] Output
|
37
41
|
# @author dmasur
|
38
42
|
def output
|
39
|
-
|
40
|
-
when / 0 failures/ then ''
|
41
|
-
else @shell_output
|
42
|
-
end
|
43
|
+
@shell_output =~ / 0 failures/ ? '' : @shell_output
|
43
44
|
end
|
44
45
|
|
45
46
|
##
|
@@ -48,11 +49,11 @@ class RspecChecker
|
|
48
49
|
# @return [String] Codecoverage
|
49
50
|
def code_coverage
|
50
51
|
if @shell_output.include?('Coverage report generated')
|
51
|
-
@coverage = /LOC \((\d
|
52
|
+
@coverage = /LOC \(([\d.]+)%\) covered/.match(@shell_output)[1].to_f
|
52
53
|
color_coverage
|
53
54
|
" with #{@coverage} Code Coverage"
|
54
55
|
else
|
55
|
-
|
56
|
+
''
|
56
57
|
end
|
57
58
|
end
|
58
59
|
|
@@ -39,12 +39,11 @@ end
|
|
39
39
|
# @author dmasur
|
40
40
|
def print_summary results
|
41
41
|
results.each do |result|
|
42
|
-
|
43
|
-
status = result[:status]
|
44
|
-
puts "#{type_name}:\t#{status}"
|
42
|
+
puts "#{result[:type]}:\t#{result[:status]}"
|
45
43
|
end
|
46
44
|
end
|
47
|
-
|
45
|
+
|
46
|
+
desc "Check all Metric tools"
|
48
47
|
task :check do
|
49
48
|
results ||= []
|
50
49
|
Dir["spec*"].each do |spec_dir|
|
data/lib/rake_check/version.rb
CHANGED
@@ -10,7 +10,11 @@ class YardChecker
|
|
10
10
|
# @return [Hash] Checkresult
|
11
11
|
# @author dmasur
|
12
12
|
def result
|
13
|
-
@shell_output =
|
13
|
+
@shell_output = begin
|
14
|
+
`yardoc`
|
15
|
+
rescue Errno::ENOENT
|
16
|
+
"Yardoc not found"
|
17
|
+
end
|
14
18
|
{:type => :yard, :check_output => output, :status => status}
|
15
19
|
end
|
16
20
|
|
@@ -58,10 +62,6 @@ class YardChecker
|
|
58
62
|
# @return [String] Output
|
59
63
|
# @author dmasur
|
60
64
|
def output
|
61
|
-
|
62
|
-
''
|
63
|
-
else
|
64
|
-
@shell_output
|
65
|
-
end
|
65
|
+
@shell_output.include?('documented') ? '' : @shell_output
|
66
66
|
end
|
67
67
|
end
|
data/rake_check.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake_check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-05-10 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &70265476630660 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70265476630660
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: colored
|
27
|
-
requirement: &
|
27
|
+
requirement: &70265476629760 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70265476629760
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rake
|
38
|
-
requirement: &
|
38
|
+
requirement: &70265476629220 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70265476629220
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: reek
|
49
|
-
requirement: &
|
49
|
+
requirement: &70265476628500 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,18 +54,7 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
58
|
-
- !ruby/object:Gem::Dependency
|
59
|
-
name: cane
|
60
|
-
requirement: &70203811965100 !ruby/object:Gem::Requirement
|
61
|
-
none: false
|
62
|
-
requirements:
|
63
|
-
- - ! '>='
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
version: '0'
|
66
|
-
type: :runtime
|
67
|
-
prerelease: false
|
68
|
-
version_requirements: *70203811965100
|
57
|
+
version_requirements: *70265476628500
|
69
58
|
description: Checking the Project for Code Smells and bad documentation
|
70
59
|
email:
|
71
60
|
- dominik.masur@googlemail.com
|
@@ -112,7 +101,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
112
101
|
version: '0'
|
113
102
|
segments:
|
114
103
|
- 0
|
115
|
-
hash:
|
104
|
+
hash: -1137789811781084893
|
116
105
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
106
|
none: false
|
118
107
|
requirements:
|
@@ -121,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
121
110
|
version: '0'
|
122
111
|
segments:
|
123
112
|
- 0
|
124
|
-
hash:
|
113
|
+
hash: -1137789811781084893
|
125
114
|
requirements: []
|
126
115
|
rubyforge_project:
|
127
116
|
rubygems_version: 1.8.10
|