kevinrutherford-reek 1.1.3.13 → 1.1.3.14

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.
Files changed (37) hide show
  1. data/History.txt +8 -2
  2. data/config/defaults.reek +13 -2
  3. data/features/masking_smells.feature +29 -1
  4. data/features/samples.feature +17 -4
  5. data/lib/reek/adapters/object_source.rb +2 -1
  6. data/lib/reek/class_context.rb +7 -0
  7. data/lib/reek/code_parser.rb +3 -1
  8. data/lib/reek/configuration.rb +51 -0
  9. data/lib/reek/detector_stack.rb +1 -3
  10. data/lib/reek/exceptions.reek +3 -0
  11. data/lib/reek/smell_warning.rb +10 -2
  12. data/lib/reek/smells/duplication.rb +4 -2
  13. data/lib/reek/smells/large_class.rb +8 -4
  14. data/lib/reek/smells/long_method.rb +4 -6
  15. data/lib/reek/smells/long_parameter_list.rb +11 -3
  16. data/lib/reek/smells/simulated_polymorphism.rb +58 -0
  17. data/lib/reek/smells/smell_detector.rb +53 -51
  18. data/lib/reek/smells/uncommunicative_name.rb +13 -9
  19. data/lib/reek/sniffer.rb +4 -0
  20. data/lib/reek.rb +1 -1
  21. data/reek.gemspec +3 -3
  22. data/spec/reek/adapters/report_spec.rb +5 -4
  23. data/spec/reek/class_context_spec.rb +21 -0
  24. data/spec/reek/configuration_spec.rb +12 -0
  25. data/spec/reek/smell_warning_spec.rb +30 -2
  26. data/spec/reek/smells/duplication_spec.rb +2 -1
  27. data/spec/reek/smells/feature_envy_spec.rb +15 -0
  28. data/spec/reek/smells/large_class_spec.rb +21 -20
  29. data/spec/reek/smells/simulated_polymorphism_spec.rb +50 -0
  30. data/spec/reek/smells/smell_detector_spec.rb +5 -5
  31. data/spec/reek/smells/uncommunicative_name_spec.rb +14 -0
  32. data/spec/samples/exceptions.reek +4 -0
  33. data/spec/samples/overrides/masked/dirty.rb +7 -0
  34. data/spec/samples/overrides/masked/lower.reek +5 -0
  35. data/spec/samples/overrides/upper.reek +5 -0
  36. data/tasks/test.rake +6 -1
  37. metadata +12 -3
@@ -0,0 +1,4 @@
1
+ ---
2
+ UncommunicativeName:
3
+ accept:
4
+ - md5
@@ -0,0 +1,7 @@
1
+ class Dirty
2
+ def a
3
+ puts @s.title
4
+ @s.map {|x| x.each {|key| key += 3}}
5
+ puts @s.title
6
+ end
7
+ end
@@ -0,0 +1,5 @@
1
+ ---
2
+ Duplication:
3
+ enabled: true
4
+ UncommunicativeName:
5
+ enabled: false
@@ -0,0 +1,5 @@
1
+ ---
2
+ Duplication:
3
+ enabled: false
4
+ NestedIterators:
5
+ enabled: false
data/tasks/test.rake CHANGED
@@ -27,12 +27,17 @@ namespace 'test' do
27
27
  t.rcov_dir = 'build/coverage'
28
28
  end
29
29
 
30
+ desc 'Checks all supported versions of Ruby'
31
+ task :multiruby do
32
+ sh "multiruby -S rake spec"
33
+ end
34
+
30
35
  Cucumber::Rake::Task.new(:features) do |t|
31
36
  t.cucumber_opts = "features --format progress --no-color"
32
37
  end
33
38
 
34
39
  desc 'Runs all unit tests, acceptance tests and quality checks'
35
- task 'all' => ['test:spec', 'test:features', 'test:quality']
40
+ task 'all' => ['test:spec', 'test:features', 'test:quality', 'test:multiruby']
36
41
  end
37
42
 
38
43
  task 'clobber_rcov' => 'test:clobber_rcov'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kevinrutherford-reek
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3.13
4
+ version: 1.1.3.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Rutherford
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-07-26 00:00:00 -07:00
12
+ date: 2009-08-20 00:00:00 -07:00
13
13
  default_executable: reek
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -81,6 +81,7 @@ files:
81
81
  - lib/reek/code_context.rb
82
82
  - lib/reek/code_parser.rb
83
83
  - lib/reek/command_line.rb
84
+ - lib/reek/configuration.rb
84
85
  - lib/reek/detector_stack.rb
85
86
  - lib/reek/exceptions.reek
86
87
  - lib/reek/if_context.rb
@@ -99,6 +100,7 @@ files:
99
100
  - lib/reek/smells/long_parameter_list.rb
100
101
  - lib/reek/smells/long_yield_list.rb
101
102
  - lib/reek/smells/nested_iterators.rb
103
+ - lib/reek/smells/simulated_polymorphism.rb
102
104
  - lib/reek/smells/smell_detector.rb
103
105
  - lib/reek/smells/uncommunicative_name.rb
104
106
  - lib/reek/smells/utility_function.rb
@@ -116,6 +118,7 @@ files:
116
118
  - spec/reek/code_context_spec.rb
117
119
  - spec/reek/code_parser_spec.rb
118
120
  - spec/reek/config_spec.rb
121
+ - spec/reek/configuration_spec.rb
119
122
  - spec/reek/if_context_spec.rb
120
123
  - spec/reek/method_context_spec.rb
121
124
  - spec/reek/module_context_spec.rb
@@ -131,6 +134,7 @@ files:
131
134
  - spec/reek/smells/long_method_spec.rb
132
135
  - spec/reek/smells/long_parameter_list_spec.rb
133
136
  - spec/reek/smells/nested_iterators_spec.rb
137
+ - spec/reek/smells/simulated_polymorphism_spec.rb
134
138
  - spec/reek/smells/smell_detector_spec.rb
135
139
  - spec/reek/smells/uncommunicative_name_spec.rb
136
140
  - spec/reek/smells/utility_function_spec.rb
@@ -148,6 +152,7 @@ files:
148
152
  - spec/samples/corrupt_config_file/dirty.rb
149
153
  - spec/samples/empty_config_file/dirty.rb
150
154
  - spec/samples/empty_config_file/empty.reek
155
+ - spec/samples/exceptions.reek
151
156
  - spec/samples/inline.rb
152
157
  - spec/samples/masked/dirty.rb
153
158
  - spec/samples/masked/masked.reek
@@ -159,6 +164,9 @@ files:
159
164
  - spec/samples/not_quite_masked/dirty.rb
160
165
  - spec/samples/not_quite_masked/masked.reek
161
166
  - spec/samples/optparse.rb
167
+ - spec/samples/overrides/masked/dirty.rb
168
+ - spec/samples/overrides/masked/lower.reek
169
+ - spec/samples/overrides/upper.reek
162
170
  - spec/samples/redcloth.rb
163
171
  - spec/samples/three_clean_files/clean_one.rb
164
172
  - spec/samples/three_clean_files/clean_three.rb
@@ -171,6 +179,7 @@ files:
171
179
  - tasks/test.rake
172
180
  has_rdoc: false
173
181
  homepage: http://wiki.github.com/kevinrutherford/reek
182
+ licenses:
174
183
  post_install_message: |
175
184
 
176
185
  For more information on reek, see http://wiki.github.com/kevinrutherford/reek
@@ -195,7 +204,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
204
  requirements: []
196
205
 
197
206
  rubyforge_project: reek
198
- rubygems_version: 1.2.0
207
+ rubygems_version: 1.3.5
199
208
  signing_key:
200
209
  specification_version: 3
201
210
  summary: Code smell detector for Ruby