rake_check 0.1.6 → 0.1.7
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/brakeman_checker.rb +81 -0
- data/lib/rake_check/cucumber_checker.rb +15 -1
- data/lib/rake_check/tasks/check.rake +5 -2
- data/lib/rake_check/version.rb +1 -1
- data/rake_check.gemspec +1 -0
- data/spec/files/brakeman_error.json +53 -0
- data/spec/files/brakeman_ok.json +100 -0
- data/spec/files/brakeman_warning.json +63 -0
- data/spec/lib/rake_check/brakeman_checker_spec.rb +40 -0
- data/{spec_no_rails → spec}/lib/rake_check/cucumber_checker_spec.rb +1 -1
- metadata +55 -27
- data/spec +0 -0
- /data/{spec_no_rails → spec}/files/cucumber_fail_output.txt +0 -0
- /data/{spec_no_rails → spec}/files/reek_output.yaml +0 -0
- /data/{spec_no_rails → spec}/lib/rake_check/cane_checker_spec.rb +0 -0
- /data/{spec_no_rails → spec}/lib/rake_check/rbp_checker_spec.rb +0 -0
- /data/{spec_no_rails → spec}/lib/rake_check/reek_checker_spec.rb +0 -0
- /data/{spec_no_rails → spec}/lib/rake_check/rspec_checker_spec.rb +0 -0
- /data/{spec_no_rails → spec}/lib/rake_check/yard_checker_spec.rb +0 -0
- /data/{spec_no_rails → spec}/spec_helper.rb +0 -0
@@ -0,0 +1,81 @@
|
|
1
|
+
require 'colored'
|
2
|
+
require 'json'
|
3
|
+
##
|
4
|
+
# BrakemanChecker checks the output for undocumented classes and methods
|
5
|
+
#
|
6
|
+
# @author dmasur
|
7
|
+
class BrakemanChecker
|
8
|
+
##
|
9
|
+
# Gives the Checkresult
|
10
|
+
#
|
11
|
+
# @return [Hash] Checkresult
|
12
|
+
# @author dmasur
|
13
|
+
def result
|
14
|
+
@shell_output = begin
|
15
|
+
`brakeman -f json 2>/dev/null`
|
16
|
+
rescue Errno::ENOENT
|
17
|
+
"Brakeman not found"
|
18
|
+
end
|
19
|
+
{:type => :brakeman, :check_output => output, :status => status}
|
20
|
+
end
|
21
|
+
|
22
|
+
private
|
23
|
+
##
|
24
|
+
# Color the Coverage
|
25
|
+
#
|
26
|
+
# @return [String] colored Coverage
|
27
|
+
# @author dmasur
|
28
|
+
def color_count count
|
29
|
+
case count
|
30
|
+
when 0 then count.to_s.green
|
31
|
+
else count.to_s.red
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
##
|
36
|
+
# Gives the Check Status
|
37
|
+
#
|
38
|
+
# @return [String] Checkstatus
|
39
|
+
# @author dmasur
|
40
|
+
def status
|
41
|
+
if @shell_output == ''
|
42
|
+
return 'N/A'
|
43
|
+
else
|
44
|
+
begin
|
45
|
+
warnings_string = "#{color_count data["warnings"].count} Warnings"
|
46
|
+
errors_string = "#{color_count data["errors"].count} Errors"
|
47
|
+
return "#{warnings_string}, #{errors_string}"
|
48
|
+
rescue JSON::ParserError
|
49
|
+
return 'Parse Error'
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
##
|
55
|
+
# Parses the JSON Output
|
56
|
+
#
|
57
|
+
# @author dmasur
|
58
|
+
def data
|
59
|
+
raise JSON::ParserError if @shell_output.empty?
|
60
|
+
json_string = @shell_output.split("Generating report...").last
|
61
|
+
json = JSON.parse(json_string)
|
62
|
+
end
|
63
|
+
|
64
|
+
##
|
65
|
+
# Gives the check output
|
66
|
+
#
|
67
|
+
# @return [String] Output
|
68
|
+
# @author dmasur
|
69
|
+
def output
|
70
|
+
if @shell_output == ''
|
71
|
+
return ''
|
72
|
+
else
|
73
|
+
begin
|
74
|
+
(data["warnings"].map { |warning| warning["message"] } +
|
75
|
+
data["errors"].map { |error| error["error"] }).join(", ")
|
76
|
+
rescue JSON::ParserError
|
77
|
+
return @shell_output
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
@@ -15,7 +15,7 @@ class CucumberChecker
|
|
15
15
|
rescue Errno::ENOENT
|
16
16
|
"Cucumber not found"
|
17
17
|
end
|
18
|
-
{:type => :cucumber, :check_output =>
|
18
|
+
{:type => :cucumber, :check_output => output, :status => status}
|
19
19
|
end
|
20
20
|
|
21
21
|
private
|
@@ -38,4 +38,18 @@ class CucumberChecker
|
|
38
38
|
'N/A'
|
39
39
|
end
|
40
40
|
end
|
41
|
+
|
42
|
+
##
|
43
|
+
# Cucumber Output
|
44
|
+
#
|
45
|
+
# @author dmasur
|
46
|
+
def output
|
47
|
+
if status == "N/A"
|
48
|
+
''
|
49
|
+
elsif status == "OK".green
|
50
|
+
''
|
51
|
+
else
|
52
|
+
@shell_output
|
53
|
+
end
|
54
|
+
end
|
41
55
|
end
|
@@ -5,6 +5,7 @@ require 'rake_check/reek_checker'
|
|
5
5
|
require 'rake_check/yard_checker'
|
6
6
|
require 'rake_check/cane_checker'
|
7
7
|
require 'rake_check/cucumber_checker'
|
8
|
+
require 'rake_check/brakeman_checker'
|
8
9
|
##
|
9
10
|
# Do exakt what it is called
|
10
11
|
#
|
@@ -39,9 +40,10 @@ end
|
|
39
40
|
#
|
40
41
|
# @author dmasur
|
41
42
|
def print_summary results
|
42
|
-
results.
|
43
|
-
|
43
|
+
result = results.map do |result|
|
44
|
+
"#{result[:type]} #{result[:status]}"
|
44
45
|
end
|
46
|
+
puts `echo "#{result.join("\n")}" | column -t`
|
45
47
|
end
|
46
48
|
|
47
49
|
desc "Check all Metric tools"
|
@@ -55,5 +57,6 @@ task :check do
|
|
55
57
|
results << YardChecker.new.result
|
56
58
|
results << ReekChecker.new.result
|
57
59
|
results << CaneChecker.new.result
|
60
|
+
results << BrakemanChecker.new.result
|
58
61
|
print_check_result results
|
59
62
|
end
|
data/lib/rake_check/version.rb
CHANGED
data/rake_check.gemspec
CHANGED
@@ -0,0 +1,53 @@
|
|
1
|
+
{
|
2
|
+
"scan_info": {
|
3
|
+
"app_path": "/path/to/app",
|
4
|
+
"rails_version": "3.2.6",
|
5
|
+
"security_warnings": 1,
|
6
|
+
"timestamp": "2012-06-19 10:18:54 +0200",
|
7
|
+
"checks_performed": [
|
8
|
+
"BasicAuth",
|
9
|
+
"CrossSiteScripting",
|
10
|
+
"DefaultRoutes",
|
11
|
+
"EscapeFunction",
|
12
|
+
"Evaluation",
|
13
|
+
"Execute",
|
14
|
+
"FileAccess",
|
15
|
+
"FilterSkipping",
|
16
|
+
"ForgerySetting",
|
17
|
+
"LinkTo",
|
18
|
+
"LinkToHref",
|
19
|
+
"MailTo",
|
20
|
+
"MassAssignment",
|
21
|
+
"ModelAttributes",
|
22
|
+
"NestedAttributes",
|
23
|
+
"QuoteTableName",
|
24
|
+
"Redirect",
|
25
|
+
"Render",
|
26
|
+
"ResponseSplitting",
|
27
|
+
"SQL",
|
28
|
+
"SafeBufferManipulation",
|
29
|
+
"SelectVulnerability",
|
30
|
+
"Send",
|
31
|
+
"SendFile",
|
32
|
+
"SessionSettings",
|
33
|
+
"SkipBeforeFilter",
|
34
|
+
"StripTags",
|
35
|
+
"TranslateBug",
|
36
|
+
"ValidationRegex",
|
37
|
+
"WithoutProtection"
|
38
|
+
],
|
39
|
+
"number_of_controllers": 16,
|
40
|
+
"number_of_models": 32,
|
41
|
+
"number_of_templates": 67,
|
42
|
+
"ruby_version": "1.9.3",
|
43
|
+
"brakeman_version": "1.6.2"
|
44
|
+
},
|
45
|
+
"warnings": [
|
46
|
+
],
|
47
|
+
"errors": [
|
48
|
+
{
|
49
|
+
"error": "unterminated string meets end of file. near line 13: \"\" While processing /path/to/app/controllers/admin/admins_controller.rb",
|
50
|
+
"location": "/path/to/gem_dir/gems/brakeman-1.6.2/lib/ruby_parser/ruby_lexer.rb:398:in `rb_compile_error'"
|
51
|
+
}
|
52
|
+
]
|
53
|
+
}
|
@@ -0,0 +1,100 @@
|
|
1
|
+
[Notice] Detected Rails 3 application
|
2
|
+
Loading scanner...
|
3
|
+
[Notice] Using Ruby 1.9.3. Please make sure this matches the one used to run your Rails application.
|
4
|
+
Processing application in /Users/dmasur/code/jobmensa2
|
5
|
+
Processing configuration...
|
6
|
+
[Notice] Escaping HTML by default
|
7
|
+
Processing gems...
|
8
|
+
Processing initializers...
|
9
|
+
Processing libs...
|
10
|
+
Processing routes...
|
11
|
+
Processing templates...
|
12
|
+
Processing data flow in templates...
|
13
|
+
Processing models...
|
14
|
+
Processing controllers...
|
15
|
+
Processing data flow in controllers...
|
16
|
+
Indexing call sites...
|
17
|
+
Running checks in parallel...
|
18
|
+
- CheckBasicAuth
|
19
|
+
- CheckCrossSiteScripting
|
20
|
+
- CheckDefaultRoutes
|
21
|
+
- CheckEscapeFunction
|
22
|
+
- CheckEvaluation
|
23
|
+
- CheckExecute
|
24
|
+
- CheckFileAccess
|
25
|
+
- CheckFilterSkipping
|
26
|
+
- CheckForgerySetting
|
27
|
+
- CheckLinkTo
|
28
|
+
- CheckLinkToHref
|
29
|
+
- CheckMailTo
|
30
|
+
- CheckMassAssignment
|
31
|
+
- CheckModelAttributes
|
32
|
+
- CheckNestedAttributes
|
33
|
+
- CheckQuoteTableName
|
34
|
+
- CheckRedirect
|
35
|
+
- CheckRender
|
36
|
+
- CheckResponseSplitting
|
37
|
+
- CheckSafeBufferManipulation
|
38
|
+
- CheckSelectVulnerability
|
39
|
+
- CheckSend
|
40
|
+
- CheckSendFile
|
41
|
+
- CheckSessionSettings
|
42
|
+
- CheckSkipBeforeFilter
|
43
|
+
- CheckSQL
|
44
|
+
- CheckStripTags
|
45
|
+
- CheckTranslateBug
|
46
|
+
- CheckValidationRegex
|
47
|
+
- CheckWithoutProtection
|
48
|
+
Checks finished, collecting results...
|
49
|
+
Generating report...
|
50
|
+
{
|
51
|
+
"scan_info": {
|
52
|
+
"app_path": "/Users/dmasur/code/jobmensa2",
|
53
|
+
"rails_version": "3.2.6",
|
54
|
+
"security_warnings": 0,
|
55
|
+
"timestamp": "2012-06-19 09:19:41 +0200",
|
56
|
+
"checks_performed": [
|
57
|
+
"BasicAuth",
|
58
|
+
"CrossSiteScripting",
|
59
|
+
"DefaultRoutes",
|
60
|
+
"EscapeFunction",
|
61
|
+
"Evaluation",
|
62
|
+
"Execute",
|
63
|
+
"FileAccess",
|
64
|
+
"FilterSkipping",
|
65
|
+
"ForgerySetting",
|
66
|
+
"LinkTo",
|
67
|
+
"LinkToHref",
|
68
|
+
"MailTo",
|
69
|
+
"MassAssignment",
|
70
|
+
"ModelAttributes",
|
71
|
+
"NestedAttributes",
|
72
|
+
"QuoteTableName",
|
73
|
+
"Redirect",
|
74
|
+
"Render",
|
75
|
+
"ResponseSplitting",
|
76
|
+
"SQL",
|
77
|
+
"SafeBufferManipulation",
|
78
|
+
"SelectVulnerability",
|
79
|
+
"Send",
|
80
|
+
"SendFile",
|
81
|
+
"SessionSettings",
|
82
|
+
"SkipBeforeFilter",
|
83
|
+
"StripTags",
|
84
|
+
"TranslateBug",
|
85
|
+
"ValidationRegex",
|
86
|
+
"WithoutProtection"
|
87
|
+
],
|
88
|
+
"number_of_controllers": 17,
|
89
|
+
"number_of_models": 32,
|
90
|
+
"number_of_templates": 67,
|
91
|
+
"ruby_version": "1.9.3",
|
92
|
+
"brakeman_version": "1.6.2"
|
93
|
+
},
|
94
|
+
"warnings": [
|
95
|
+
|
96
|
+
],
|
97
|
+
"errors": [
|
98
|
+
|
99
|
+
]
|
100
|
+
}
|
@@ -0,0 +1,63 @@
|
|
1
|
+
{
|
2
|
+
"scan_info": {
|
3
|
+
"app_path": "/path/to/app",
|
4
|
+
"rails_version": "3.2.6",
|
5
|
+
"security_warnings": 0,
|
6
|
+
"timestamp": "2012-06-19 10:06:35 +0200",
|
7
|
+
"checks_performed": [
|
8
|
+
"BasicAuth",
|
9
|
+
"CrossSiteScripting",
|
10
|
+
"DefaultRoutes",
|
11
|
+
"EscapeFunction",
|
12
|
+
"Evaluation",
|
13
|
+
"Execute",
|
14
|
+
"FileAccess",
|
15
|
+
"FilterSkipping",
|
16
|
+
"ForgerySetting",
|
17
|
+
"LinkTo",
|
18
|
+
"LinkToHref",
|
19
|
+
"MailTo",
|
20
|
+
"MassAssignment",
|
21
|
+
"ModelAttributes",
|
22
|
+
"NestedAttributes",
|
23
|
+
"QuoteTableName",
|
24
|
+
"Redirect",
|
25
|
+
"Render",
|
26
|
+
"ResponseSplitting",
|
27
|
+
"SQL",
|
28
|
+
"SafeBufferManipulation",
|
29
|
+
"SelectVulnerability",
|
30
|
+
"Send",
|
31
|
+
"SendFile",
|
32
|
+
"SessionSettings",
|
33
|
+
"SkipBeforeFilter",
|
34
|
+
"StripTags",
|
35
|
+
"TranslateBug",
|
36
|
+
"ValidationRegex",
|
37
|
+
"WithoutProtection"
|
38
|
+
],
|
39
|
+
"number_of_controllers": 16,
|
40
|
+
"number_of_models": 32,
|
41
|
+
"number_of_templates": 67,
|
42
|
+
"ruby_version": "1.9.3",
|
43
|
+
"brakeman_version": "1.6.2"
|
44
|
+
},
|
45
|
+
"warnings": [
|
46
|
+
{
|
47
|
+
"warning_type": "SQL Injection",
|
48
|
+
"message": "Possible SQL injection",
|
49
|
+
"file": "/path/to/app/controllers/admin/admins_controller.rb",
|
50
|
+
"line": 13,
|
51
|
+
"code": "Admin.order(\"name #{parms[:direction]}\")",
|
52
|
+
"location": {
|
53
|
+
"type": "method",
|
54
|
+
"class": "Admin::AdminsController",
|
55
|
+
"method": "index"
|
56
|
+
},
|
57
|
+
"user_input": "parms[:direction]",
|
58
|
+
"confidence": "Medium"
|
59
|
+
}
|
60
|
+
],
|
61
|
+
"errors": [
|
62
|
+
]
|
63
|
+
}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../../lib/rake_check/brakeman_checker')
|
2
|
+
|
3
|
+
describe BrakemanChecker do
|
4
|
+
it "gives N/A on no Rails Apps" do
|
5
|
+
subject.stub('`' => '')
|
6
|
+
subject.result.should == { type: :brakeman, check_output: '', status: 'N/A' }
|
7
|
+
end
|
8
|
+
it "gives N/A on Error" do
|
9
|
+
subject.stub('`' => 'Error')
|
10
|
+
subject.result.should == { type: :brakeman, check_output: 'Error', status: 'Parse Error' }
|
11
|
+
end
|
12
|
+
it "gives OK with no Errors" do
|
13
|
+
shell_output = File.read(File.expand_path(File.dirname(__FILE__) +
|
14
|
+
'/../../files/brakeman_ok.json'))
|
15
|
+
subject.stub('`' => shell_output)
|
16
|
+
subject.result.should == { type: :brakeman,
|
17
|
+
check_output: '',
|
18
|
+
status: "\e[32m0\e[0m Warnings, \e[32m0\e[0m Errors" }
|
19
|
+
end
|
20
|
+
describe "Code Coverage" do
|
21
|
+
it "is red with errors" do
|
22
|
+
shell_output = File.read(File.expand_path(File.dirname(__FILE__) +
|
23
|
+
'/../../files/brakeman_error.json'))
|
24
|
+
subject.stub('`' => shell_output)
|
25
|
+
output = 'unterminated string meets end of file. near line 13:' +
|
26
|
+
' "" While processing /path/to/app/controllers/admin/admins_controller.rb'
|
27
|
+
subject.result.should == { type: :brakeman,
|
28
|
+
check_output: output,
|
29
|
+
status: "\e[32m0\e[0m Warnings, \e[31m1\e[0m Errors" }
|
30
|
+
end
|
31
|
+
it "is red with warnings" do
|
32
|
+
shell_output = File.read(File.expand_path(File.dirname(__FILE__) +
|
33
|
+
'/../../files/brakeman_warning.json'))
|
34
|
+
subject.stub('`' => shell_output)
|
35
|
+
subject.result.should == { type: :brakeman,
|
36
|
+
check_output: 'Possible SQL injection',
|
37
|
+
status: "\e[31m1\e[0m Warnings, \e[32m0\e[0m Errors" }
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -14,7 +14,7 @@ describe CucumberChecker do
|
|
14
14
|
it "is red on Error" do
|
15
15
|
subject.stub('`' => "8 scenarios (1 failed, 7 passed)")
|
16
16
|
subject.result.should == { type: :cucumber,
|
17
|
-
check_output: '',
|
17
|
+
check_output: '8 scenarios (1 failed, 7 passed)',
|
18
18
|
status: "\e[31m1 failed scenarios\e[0m" }
|
19
19
|
end
|
20
20
|
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.
|
4
|
+
version: 0.1.7
|
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-
|
12
|
+
date: 2012-06-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &70129581054120 !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: *70129581054120
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: colored
|
27
|
-
requirement: &
|
27
|
+
requirement: &70129581052460 !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: *70129581052460
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rake
|
38
|
-
requirement: &
|
38
|
+
requirement: &70129581050700 !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: *70129581050700
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: reek
|
49
|
-
requirement: &
|
49
|
+
requirement: &70129581049100 !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: *
|
57
|
+
version_requirements: *70129581049100
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: cane
|
60
|
-
requirement: &
|
60
|
+
requirement: &70129581048080 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70129581048080
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: cucumber
|
71
|
-
requirement: &
|
71
|
+
requirement: &70129581084760 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,18 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70129581084760
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: brakeman
|
82
|
+
requirement: &70129581081740 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :runtime
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *70129581081740
|
80
91
|
description: Checking the Project for Code Smells and bad documentation
|
81
92
|
email:
|
82
93
|
- dominik.masur@googlemail.com
|
@@ -94,6 +105,7 @@ files:
|
|
94
105
|
- README.md
|
95
106
|
- Rakefile
|
96
107
|
- lib/rake_check.rb
|
108
|
+
- lib/rake_check/brakeman_checker.rb
|
97
109
|
- lib/rake_check/cane_checker.rb
|
98
110
|
- lib/rake_check/cucumber_checker.rb
|
99
111
|
- lib/rake_check/rbp_checker.rb
|
@@ -103,16 +115,19 @@ files:
|
|
103
115
|
- lib/rake_check/version.rb
|
104
116
|
- lib/rake_check/yard_checker.rb
|
105
117
|
- rake_check.gemspec
|
106
|
-
- spec
|
107
|
-
-
|
108
|
-
-
|
109
|
-
-
|
110
|
-
-
|
111
|
-
-
|
112
|
-
-
|
113
|
-
-
|
114
|
-
-
|
115
|
-
-
|
118
|
+
- spec/files/brakeman_error.json
|
119
|
+
- spec/files/brakeman_ok.json
|
120
|
+
- spec/files/brakeman_warning.json
|
121
|
+
- spec/files/cucumber_fail_output.txt
|
122
|
+
- spec/files/reek_output.yaml
|
123
|
+
- spec/lib/rake_check/brakeman_checker_spec.rb
|
124
|
+
- spec/lib/rake_check/cane_checker_spec.rb
|
125
|
+
- spec/lib/rake_check/cucumber_checker_spec.rb
|
126
|
+
- spec/lib/rake_check/rbp_checker_spec.rb
|
127
|
+
- spec/lib/rake_check/reek_checker_spec.rb
|
128
|
+
- spec/lib/rake_check/rspec_checker_spec.rb
|
129
|
+
- spec/lib/rake_check/yard_checker_spec.rb
|
130
|
+
- spec/spec_helper.rb
|
116
131
|
homepage: https://github.com/TBAA/rake_check
|
117
132
|
licenses: []
|
118
133
|
post_install_message:
|
@@ -127,7 +142,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
127
142
|
version: '0'
|
128
143
|
segments:
|
129
144
|
- 0
|
130
|
-
hash:
|
145
|
+
hash: 2895400743441379252
|
131
146
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
132
147
|
none: false
|
133
148
|
requirements:
|
@@ -136,12 +151,25 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
136
151
|
version: '0'
|
137
152
|
segments:
|
138
153
|
- 0
|
139
|
-
hash:
|
154
|
+
hash: 2895400743441379252
|
140
155
|
requirements: []
|
141
156
|
rubyforge_project:
|
142
157
|
rubygems_version: 1.8.10
|
143
158
|
signing_key:
|
144
159
|
specification_version: 3
|
145
160
|
summary: Checking the Project for Code Smells and bad documentation
|
146
|
-
test_files:
|
161
|
+
test_files:
|
162
|
+
- spec/files/brakeman_error.json
|
163
|
+
- spec/files/brakeman_ok.json
|
164
|
+
- spec/files/brakeman_warning.json
|
165
|
+
- spec/files/cucumber_fail_output.txt
|
166
|
+
- spec/files/reek_output.yaml
|
167
|
+
- spec/lib/rake_check/brakeman_checker_spec.rb
|
168
|
+
- spec/lib/rake_check/cane_checker_spec.rb
|
169
|
+
- spec/lib/rake_check/cucumber_checker_spec.rb
|
170
|
+
- spec/lib/rake_check/rbp_checker_spec.rb
|
171
|
+
- spec/lib/rake_check/reek_checker_spec.rb
|
172
|
+
- spec/lib/rake_check/rspec_checker_spec.rb
|
173
|
+
- spec/lib/rake_check/yard_checker_spec.rb
|
174
|
+
- spec/spec_helper.rb
|
147
175
|
has_rdoc:
|
data/spec
DELETED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|