roodi1.9 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. data/.gitignore +2 -0
  2. data/Gemfile +0 -0
  3. data/History.txt +88 -0
  4. data/Manifest.txt +56 -0
  5. data/README.md +123 -0
  6. data/Rakefile +40 -0
  7. data/bin/roodi1.9 +21 -0
  8. data/bin/roodi1.9-describe +7 -0
  9. data/lib/roodi/checks/abc_metric_method_check.rb +77 -0
  10. data/lib/roodi/checks/assignment_in_conditional_check.rb +34 -0
  11. data/lib/roodi/checks/case_missing_else_check.rb +20 -0
  12. data/lib/roodi/checks/check.rb +61 -0
  13. data/lib/roodi/checks/class_line_count_check.rb +18 -0
  14. data/lib/roodi/checks/class_name_check.rb +21 -0
  15. data/lib/roodi/checks/class_variable_check.rb +24 -0
  16. data/lib/roodi/checks/control_coupling_check.rb +20 -0
  17. data/lib/roodi/checks/cyclomatic_complexity_block_check.rb +39 -0
  18. data/lib/roodi/checks/cyclomatic_complexity_check.rb +47 -0
  19. data/lib/roodi/checks/cyclomatic_complexity_method_check.rb +40 -0
  20. data/lib/roodi/checks/empty_rescue_body_check.rb +32 -0
  21. data/lib/roodi/checks/for_loop_check.rb +20 -0
  22. data/lib/roodi/checks/line_count_check.rb +29 -0
  23. data/lib/roodi/checks/method_line_count_check.rb +19 -0
  24. data/lib/roodi/checks/method_name_check.rb +21 -0
  25. data/lib/roodi/checks/missing_foreign_key_index_check.rb +98 -0
  26. data/lib/roodi/checks/module_line_count_check.rb +18 -0
  27. data/lib/roodi/checks/module_name_check.rb +21 -0
  28. data/lib/roodi/checks/name_check.rb +23 -0
  29. data/lib/roodi/checks/npath_complexity_check.rb +73 -0
  30. data/lib/roodi/checks/npath_complexity_method_check.rb +28 -0
  31. data/lib/roodi/checks/parameter_number_check.rb +30 -0
  32. data/lib/roodi/checks.rb +18 -0
  33. data/lib/roodi/core/checking_visitor.rb +26 -0
  34. data/lib/roodi/core/error.rb +17 -0
  35. data/lib/roodi/core/parser.rb +30 -0
  36. data/lib/roodi/core/runner.rb +80 -0
  37. data/lib/roodi/core/visitable_sexp.rb +25 -0
  38. data/lib/roodi/core.rb +1 -0
  39. data/lib/roodi.rb +6 -0
  40. data/lib/roodi_task.rb +35 -0
  41. data/roodi.yml +19 -0
  42. data/roodi1.9.gemspec +17 -0
  43. data/spec/roodi/checks/abc_metric_method_check_spec.rb +89 -0
  44. data/spec/roodi/checks/assignment_in_conditional_check_spec.rb +105 -0
  45. data/spec/roodi/checks/case_missing_else_check_spec.rb +32 -0
  46. data/spec/roodi/checks/class_line_count_check_spec.rb +39 -0
  47. data/spec/roodi/checks/class_name_check_spec.rb +39 -0
  48. data/spec/roodi/checks/class_variable_check_spec.rb +17 -0
  49. data/spec/roodi/checks/control_coupling_check_spec.rb +23 -0
  50. data/spec/roodi/checks/cyclomatic_complexity_block_check_spec.rb +67 -0
  51. data/spec/roodi/checks/cyclomatic_complexity_method_check_spec.rb +200 -0
  52. data/spec/roodi/checks/empty_rescue_body_check_spec.rb +140 -0
  53. data/spec/roodi/checks/for_loop_check_spec.rb +18 -0
  54. data/spec/roodi/checks/method_line_count_check_spec.rb +56 -0
  55. data/spec/roodi/checks/method_name_check_spec.rb +76 -0
  56. data/spec/roodi/checks/missing_foreign_key_index_check_spec.rb +33 -0
  57. data/spec/roodi/checks/module_line_count_check_spec.rb +39 -0
  58. data/spec/roodi/checks/module_name_check_spec.rb +27 -0
  59. data/spec/roodi/checks/npath_complexity_method_check_spec.rb +53 -0
  60. data/spec/roodi/checks/parameter_number_check_spec.rb +47 -0
  61. data/spec/roodi/core/runner_spec.rb +25 -0
  62. data/spec/roodi/roodi.yml +1 -0
  63. data/spec/spec_helper.rb +3 -0
  64. metadata +112 -0
@@ -0,0 +1,25 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+
3
+ describe Roodi::Core::Runner do
4
+
5
+ describe "given a custom config file" do
6
+ before do
7
+ @runner = Roodi::Core::Runner.new
8
+ @runner.config= File.expand_path(File.dirname(__FILE__) + '/../roodi.yml')
9
+ end
10
+
11
+ it "uses check from it" do
12
+ # @runner.check_file(File.expand_path(File.dirname(__FILE__) + '/../fixtures/test_class.rb'))
13
+ content = <<-RUBY
14
+ class TestClass
15
+
16
+ def METHOD
17
+
18
+ end
19
+ end
20
+ RUBY
21
+ @runner.check_content(content)
22
+ @runner.errors.should be_empty
23
+ end
24
+ end
25
+ end
@@ -0,0 +1 @@
1
+ MethodNameCheck: { pattern: !ruby/regexp /^[A-Z]+$/ }
@@ -0,0 +1,3 @@
1
+ $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + "/../lib"))
2
+ require 'roodi'
3
+ require 'spec'
metadata ADDED
@@ -0,0 +1,112 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: roodi1.9
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Marty Andrews
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-07-19 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Roodi stands for Ruby Object Oriented Design Inferometer. It parses your
15
+ Ruby code and warns you about design issues you have based on the checks that is
16
+ has configured.
17
+ email:
18
+ - marty@martyandrews.net
19
+ executables:
20
+ - roodi1.9
21
+ - roodi1.9-describe
22
+ extensions: []
23
+ extra_rdoc_files: []
24
+ files:
25
+ - .gitignore
26
+ - Gemfile
27
+ - History.txt
28
+ - Manifest.txt
29
+ - README.md
30
+ - Rakefile
31
+ - bin/roodi1.9
32
+ - bin/roodi1.9-describe
33
+ - lib/roodi.rb
34
+ - lib/roodi/checks.rb
35
+ - lib/roodi/checks/abc_metric_method_check.rb
36
+ - lib/roodi/checks/assignment_in_conditional_check.rb
37
+ - lib/roodi/checks/case_missing_else_check.rb
38
+ - lib/roodi/checks/check.rb
39
+ - lib/roodi/checks/class_line_count_check.rb
40
+ - lib/roodi/checks/class_name_check.rb
41
+ - lib/roodi/checks/class_variable_check.rb
42
+ - lib/roodi/checks/control_coupling_check.rb
43
+ - lib/roodi/checks/cyclomatic_complexity_block_check.rb
44
+ - lib/roodi/checks/cyclomatic_complexity_check.rb
45
+ - lib/roodi/checks/cyclomatic_complexity_method_check.rb
46
+ - lib/roodi/checks/empty_rescue_body_check.rb
47
+ - lib/roodi/checks/for_loop_check.rb
48
+ - lib/roodi/checks/line_count_check.rb
49
+ - lib/roodi/checks/method_line_count_check.rb
50
+ - lib/roodi/checks/method_name_check.rb
51
+ - lib/roodi/checks/missing_foreign_key_index_check.rb
52
+ - lib/roodi/checks/module_line_count_check.rb
53
+ - lib/roodi/checks/module_name_check.rb
54
+ - lib/roodi/checks/name_check.rb
55
+ - lib/roodi/checks/npath_complexity_check.rb
56
+ - lib/roodi/checks/npath_complexity_method_check.rb
57
+ - lib/roodi/checks/parameter_number_check.rb
58
+ - lib/roodi/core.rb
59
+ - lib/roodi/core/checking_visitor.rb
60
+ - lib/roodi/core/error.rb
61
+ - lib/roodi/core/parser.rb
62
+ - lib/roodi/core/runner.rb
63
+ - lib/roodi/core/visitable_sexp.rb
64
+ - lib/roodi_task.rb
65
+ - roodi.yml
66
+ - roodi1.9.gemspec
67
+ - spec/roodi/checks/abc_metric_method_check_spec.rb
68
+ - spec/roodi/checks/assignment_in_conditional_check_spec.rb
69
+ - spec/roodi/checks/case_missing_else_check_spec.rb
70
+ - spec/roodi/checks/class_line_count_check_spec.rb
71
+ - spec/roodi/checks/class_name_check_spec.rb
72
+ - spec/roodi/checks/class_variable_check_spec.rb
73
+ - spec/roodi/checks/control_coupling_check_spec.rb
74
+ - spec/roodi/checks/cyclomatic_complexity_block_check_spec.rb
75
+ - spec/roodi/checks/cyclomatic_complexity_method_check_spec.rb
76
+ - spec/roodi/checks/empty_rescue_body_check_spec.rb
77
+ - spec/roodi/checks/for_loop_check_spec.rb
78
+ - spec/roodi/checks/method_line_count_check_spec.rb
79
+ - spec/roodi/checks/method_name_check_spec.rb
80
+ - spec/roodi/checks/missing_foreign_key_index_check_spec.rb
81
+ - spec/roodi/checks/module_line_count_check_spec.rb
82
+ - spec/roodi/checks/module_name_check_spec.rb
83
+ - spec/roodi/checks/npath_complexity_method_check_spec.rb
84
+ - spec/roodi/checks/parameter_number_check_spec.rb
85
+ - spec/roodi/core/runner_spec.rb
86
+ - spec/roodi/roodi.yml
87
+ - spec/spec_helper.rb
88
+ homepage: http://github.com/grsmv/roodi1.9
89
+ licenses: []
90
+ post_install_message:
91
+ rdoc_options: []
92
+ require_paths:
93
+ - lib
94
+ required_ruby_version: !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ! '>='
98
+ - !ruby/object:Gem::Version
99
+ version: '0'
100
+ required_rubygems_version: !ruby/object:Gem::Requirement
101
+ none: false
102
+ requirements:
103
+ - - ! '>='
104
+ - !ruby/object:Gem::Version
105
+ version: '0'
106
+ requirements: []
107
+ rubyforge_project: roodi
108
+ rubygems_version: 1.8.11
109
+ signing_key:
110
+ specification_version: 3
111
+ summary: Fork of Ruby Object Oriented Design Inferometer for Ruby 1.9
112
+ test_files: []