rake_check 0.1.1 → 0.1.2

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/Gemfile CHANGED
@@ -9,3 +9,4 @@ gem 'yard', :require => false
9
9
  gem 'cane', :require => false
10
10
  gem 'redcarpet', :require => false
11
11
  gem 'reek', :require => false
12
+ gem 'cucumber', :require => false
@@ -9,9 +9,7 @@ class ReekChecker
9
9
  # @return [Hash] Checkresult
10
10
  # @author dmasur
11
11
  def result
12
- require 'reek'
13
- require 'colored'
14
- require 'yaml'
12
+ require_dependencies
15
13
  shell_output = `reek app lib -y 2>/dev/null`
16
14
  @shell_output = shell_output.split("\n").
17
15
  delete_if{|line| line.include?('already initialized constant') }.join("\n")
@@ -19,6 +17,15 @@ class ReekChecker
19
17
  end
20
18
 
21
19
  private
20
+ ##
21
+ # Require Dependencies
22
+ #
23
+ # @author dmasur
24
+ def require_dependencies
25
+ require 'reek'
26
+ require 'colored'
27
+ require 'yaml'
28
+ end
22
29
  ##
23
30
  # Gives the Check Status
24
31
  #
@@ -41,7 +48,6 @@ class ReekChecker
41
48
  # @return [Array] SmellWarnings
42
49
  # @author dmasur
43
50
  def parsed_output
44
- puts @shell_output
45
51
  YAML::load(@shell_output)
46
52
  end
47
53
 
@@ -9,9 +9,9 @@ class RspecChecker
9
9
  #
10
10
  # @return [Hash] Checkresult
11
11
  # @author dmasur
12
- def result
13
- @shell_output = `export COVERAGE=true; rspec spec spec_no_rails; export COVERAGE=`
14
- {:type => :rspec, :status => status + code_coverage, :check_output => output}
12
+ def result directory="spec"
13
+ @shell_output = `export COVERAGE=true; rspec #{directory}; export COVERAGE=`
14
+ {:type => directory, :status => status + code_coverage, :check_output => output}
15
15
  end
16
16
 
17
17
  private
@@ -41,15 +41,18 @@ def print_summary results
41
41
  results.each do |result|
42
42
  type_name = result[:type].to_s
43
43
  status = result[:status]
44
- puts "puts #{type_name}:\t#{status}"
44
+ puts "#{type_name}:\t#{status}"
45
45
  end
46
46
  end
47
47
  desc "Check Rails Best Practices and RSpec"
48
48
  task :check do
49
- rspec = RspecChecker.new.result
50
- rbp = RbpChecker.new.result
51
- yard = YardChecker.new.result
52
- reek = ReekChecker.new.result
53
- cane = CaneChecker.new.result
54
- print_check_result [rspec, rbp, yard, reek, cane]
49
+ results ||= []
50
+ Dir["spec*"].each do |spec_dir|
51
+ results << RspecChecker.new.result(spec_dir)
52
+ end
53
+ results << RbpChecker.new.result
54
+ results << YardChecker.new.result
55
+ results << ReekChecker.new.result
56
+ results << CaneChecker.new.result
57
+ print_check_result results
55
58
  end
@@ -3,5 +3,5 @@ module RakeCheck
3
3
  # The Version Constant
4
4
  #
5
5
  # @author dmasur
6
- VERSION = "0.1.1"
6
+ VERSION = "0.1.2"
7
7
  end
@@ -3,20 +3,20 @@ require File.expand_path(File.dirname(__FILE__) + '/../../../lib/rake_check/rspe
3
3
  describe RspecChecker do
4
4
  it "gives N/A on Error" do
5
5
  subject.stub('`' => 'Error')
6
- subject.result.should == { type: :rspec, check_output: 'Error', status: 'N/A' }
6
+ subject.result.should == { type: "spec", check_output: 'Error', status: 'N/A' }
7
7
  end
8
8
  it "gives OK with no Errors" do
9
9
  subject.stub('`' => '6 examples, 0 failures')
10
- subject.result.should == { type: :rspec, check_output: '', status: "\e[32mOK\e[0m" }
10
+ subject.result.should == { type: "spec", check_output: '', status: "\e[32mOK\e[0m" }
11
11
  end
12
12
  it "gives warning message with Errors" do
13
13
  subject.stub('`' => '6 examples, 3 failures')
14
- subject.result.should == { type: :rspec, check_output: '6 examples, 3 failures',
14
+ subject.result.should == { type: "spec", check_output: '6 examples, 3 failures',
15
15
  status: "\e[31m3 failures\e[0m" }
16
16
  end
17
17
  it "gives warning message with one Error" do
18
18
  subject.stub('`' => '6 examples, 1 failure')
19
- subject.result.should == { type: :rspec, check_output: '6 examples, 1 failure',
19
+ subject.result.should == { type: "spec", check_output: '6 examples, 1 failure',
20
20
  status: "\e[31m1 failure\e[0m" }
21
21
  end
22
22
  describe "Code Coverage" do
@@ -24,21 +24,21 @@ describe RspecChecker do
24
24
  check_output = "6 examples, 0 failures
25
25
  Coverage report generated for RSpec to /foo/bar/coverage. 38 / 38 LOC (93.90%) covered."
26
26
  subject.stub('`' => check_output)
27
- subject.result.should == { type: :rspec, check_output: '',
27
+ subject.result.should == { type: "spec", check_output: '',
28
28
  status: "\e[32mOK\e[0m with \e[32m93.9%\e[0m Code Coverage" }
29
29
  end
30
30
  it "is green over 70%" do
31
31
  check_output = "6 examples, 0 failures
32
32
  Coverage report generated for RSpec to /foo/bar/coverage. 38 / 38 LOC (73.90%) covered."
33
33
  subject.stub('`' => check_output)
34
- subject.result.should == { type: :rspec, check_output: '',
34
+ subject.result.should == { type: "spec", check_output: '',
35
35
  status: "\e[32mOK\e[0m with \e[33m73.9%\e[0m Code Coverage" }
36
36
  end
37
37
  it "is green over 10%" do
38
38
  check_output = "6 examples, 0 failures
39
39
  Coverage report generated for RSpec to /foo/bar/coverage. 38 / 38 LOC (13.90%) covered."
40
40
  subject.stub('`' => check_output)
41
- subject.result.should == { type: :rspec, check_output: '',
41
+ subject.result.should == { type: "spec", check_output: '',
42
42
  status: "\e[32mOK\e[0m with \e[31m13.9%\e[0m Code Coverage" }
43
43
  end
44
44
  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.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-09 00:00:00.000000000 Z
12
+ date: 2012-05-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70213128680300 !ruby/object:Gem::Requirement
16
+ requirement: &70203811968860 !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: *70213128680300
24
+ version_requirements: *70203811968860
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: colored
27
- requirement: &70213128678900 !ruby/object:Gem::Requirement
27
+ requirement: &70203811968160 !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: *70213128678900
35
+ version_requirements: *70203811968160
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70213128678240 !ruby/object:Gem::Requirement
38
+ requirement: &70203811967360 !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: *70213128678240
46
+ version_requirements: *70203811967360
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: reek
49
- requirement: &70213128677780 !ruby/object:Gem::Requirement
49
+ requirement: &70203811966280 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70213128677780
57
+ version_requirements: *70203811966280
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: cane
60
- requirement: &70213128677300 !ruby/object:Gem::Requirement
60
+ requirement: &70203811965100 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70213128677300
68
+ version_requirements: *70203811965100
69
69
  description: Checking the Project for Code Smells and bad documentation
70
70
  email:
71
71
  - dominik.masur@googlemail.com
@@ -112,7 +112,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
112
112
  version: '0'
113
113
  segments:
114
114
  - 0
115
- hash: 3126639798450896785
115
+ hash: 3766777700523133814
116
116
  required_rubygems_version: !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
@@ -121,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  version: '0'
122
122
  segments:
123
123
  - 0
124
- hash: 3126639798450896785
124
+ hash: 3766777700523133814
125
125
  requirements: []
126
126
  rubyforge_project:
127
127
  rubygems_version: 1.8.10