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.
@@ -10,7 +10,11 @@ class CaneChecker
10
10
  # @return [Hash] Checkresult
11
11
  # @author dmasur
12
12
  def result
13
- @shell_output = `cane`
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 = case @violations
43
- when 1..9 then :yellow
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 = `rails_best_practices --silent --spec`
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
- case state
25
- when :good then ''
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
- tmp_state = state
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
- warning_count = /Found (\d+) warnings/.match(@shell_output)[1]
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
- shell_output = `reek app lib -y 2>/dev/null`
14
- @shell_output = shell_output.split("\n").
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 = `export COVERAGE=true; rspec #{directory}; export COVERAGE=`
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
- case @shell_output
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+\.\d+)%\) covered/.match(@shell_output)[1].to_f
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
- type_name = result[:type].to_s
43
- status = result[:status]
44
- puts "#{type_name}:\t#{status}"
42
+ puts "#{result[:type]}:\t#{result[:status]}"
45
43
  end
46
44
  end
47
- desc "Check Rails Best Practices and RSpec"
45
+
46
+ desc "Check all Metric tools"
48
47
  task :check do
49
48
  results ||= []
50
49
  Dir["spec*"].each do |spec_dir|
@@ -3,5 +3,5 @@ module RakeCheck
3
3
  # The Version Constant
4
4
  #
5
5
  # @author dmasur
6
- VERSION = "0.1.2"
6
+ VERSION = "0.1.3"
7
7
  end
@@ -10,7 +10,11 @@ class YardChecker
10
10
  # @return [Hash] Checkresult
11
11
  # @author dmasur
12
12
  def result
13
- @shell_output = `yardoc`
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
- if @shell_output.include? 'documented'
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
@@ -19,5 +19,4 @@ Gem::Specification.new do |gem|
19
19
  gem.add_dependency "colored"
20
20
  gem.add_dependency "rake"
21
21
  gem.add_dependency "reek"
22
- gem.add_dependency "cane"
23
22
  end
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.2
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: &70203811968860 !ruby/object:Gem::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: *70203811968860
24
+ version_requirements: *70265476630660
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: colored
27
- requirement: &70203811968160 !ruby/object:Gem::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: *70203811968160
35
+ version_requirements: *70265476629760
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70203811967360 !ruby/object:Gem::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: *70203811967360
46
+ version_requirements: *70265476629220
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: reek
49
- requirement: &70203811966280 !ruby/object:Gem::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: *70203811966280
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: 3766777700523133814
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: 3766777700523133814
113
+ hash: -1137789811781084893
125
114
  requirements: []
126
115
  rubyforge_project:
127
116
  rubygems_version: 1.8.10