kevinrutherford-reek 1.0.1 → 1.1.1

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 (50) hide show
  1. data/History.txt +42 -22
  2. data/config/defaults.reek +1 -0
  3. data/lib/reek.rb +1 -1
  4. data/lib/reek/block_context.rb +27 -5
  5. data/lib/reek/class_context.rb +5 -4
  6. data/lib/reek/code_parser.rb +26 -11
  7. data/lib/reek/method_context.rb +18 -12
  8. data/lib/reek/module_context.rb +1 -1
  9. data/lib/reek/name.rb +8 -1
  10. data/lib/reek/object_refs.rb +2 -3
  11. data/lib/reek/report.rb +11 -4
  12. data/lib/reek/sexp_formatter.rb +4 -46
  13. data/lib/reek/smells/large_class.rb +26 -7
  14. data/lib/reek/smells/long_parameter_list.rb +1 -1
  15. data/lib/reek/smells/smells.rb +4 -8
  16. data/lib/reek/source.rb +31 -4
  17. data/lib/reek/spec.rb +6 -0
  18. data/lib/reek/stop_context.rb +4 -16
  19. data/lib/reek/yield_call_context.rb +1 -3
  20. data/reek.gemspec +8 -5
  21. data/spec/reek/block_context_spec.rb +40 -0
  22. data/spec/reek/class_context_spec.rb +11 -0
  23. data/spec/reek/code_context_spec.rb +2 -1
  24. data/spec/reek/code_parser_spec.rb +0 -10
  25. data/spec/reek/config_spec.rb +2 -2
  26. data/spec/reek/method_context_spec.rb +14 -0
  27. data/spec/reek/name_spec.rb +13 -0
  28. data/spec/reek/object_refs_spec.rb +11 -9
  29. data/spec/reek/report_spec.rb +1 -1
  30. data/spec/reek/sexp_formatter_spec.rb +5 -4
  31. data/spec/reek/singleton_method_context_spec.rb +1 -1
  32. data/spec/reek/smells/duplication_spec.rb +2 -2
  33. data/spec/reek/smells/feature_envy_spec.rb +132 -36
  34. data/spec/reek/smells/large_class_spec.rb +48 -47
  35. data/spec/reek/smells/long_method_spec.rb +1 -1
  36. data/spec/reek/smells/long_parameter_list_spec.rb +4 -11
  37. data/spec/reek/smells/uncommunicative_name_spec.rb +6 -1
  38. data/spec/reek/smells/utility_function_spec.rb +6 -9
  39. data/spec/{samples → slow}/inline_spec.rb +14 -10
  40. data/spec/{samples → slow}/optparse_spec.rb +20 -12
  41. data/spec/{samples → slow}/redcloth_spec.rb +16 -8
  42. data/spec/{integration → slow}/reek_source_spec.rb +0 -0
  43. data/spec/{samples → slow/samples}/inline.rb +0 -0
  44. data/spec/{samples → slow/samples}/optparse.rb +0 -0
  45. data/spec/{samples → slow/samples}/redcloth.rb +0 -0
  46. data/spec/{integration → slow}/script_spec.rb +0 -0
  47. data/spec/{reek/source_spec.rb → slow/source_list_spec.rb} +3 -3
  48. data/spec/spec_helper.rb +2 -0
  49. data/tasks/rspec.rake +1 -1
  50. metadata +24 -12
@@ -46,6 +46,11 @@ describe UncommunicativeName, "local variable name" do
46
46
  it 'should report variable name only once' do
47
47
  'def simple(fred) x = jim(45); x = y end'.should reek_only_of(:UncommunicativeName, /x/)
48
48
  end
49
+
50
+ it 'should report a bad name inside a block' do
51
+ src = 'def clean(text) text.each { q2 = 3 } end'
52
+ src.should reek_of(:UncommunicativeName, /q2/)
53
+ end
49
54
  end
50
55
 
51
56
  describe UncommunicativeName, "parameter name" do
@@ -64,7 +69,7 @@ describe UncommunicativeName, "block parameter name" do
64
69
  it "should report parameter's name" do
65
70
  'def help() @stuff.each {|x|} end'.should reek_only_of(:UncommunicativeName, /x/, /block/, /variable name/)
66
71
  end
67
-
72
+
68
73
  it "should report method name via if context" do
69
74
  src = <<EOS
70
75
  def bad
@@ -7,17 +7,11 @@ include Reek::Smells
7
7
 
8
8
  describe UtilityFunction do
9
9
 
10
- before(:each) do
11
- @rpt = Report.new
12
- @cchk = CodeParser.new(@rpt, SmellConfig.new.smell_listeners)
13
- end
14
-
15
10
  it 'should not report attrset' do
16
11
  class Fred
17
12
  attr_writer :xyz
18
13
  end
19
- @cchk.check_object(Fred)
20
- @rpt.should be_empty
14
+ Fred.should_not reek
21
15
  end
22
16
 
23
17
  it 'should count usages of self'do
@@ -43,8 +37,7 @@ describe UtilityFunction do
43
37
  class Son < Father
44
38
  def thing(ff); ff; end
45
39
  end
46
- @cchk.check_object(Son)
47
- @rpt.should be_empty
40
+ Son.should_not reek
48
41
  end
49
42
 
50
43
  it 'should not report class method' do
@@ -93,4 +86,8 @@ describe UtilityFunction, 'should only report a method containing a call' do
93
86
  it 'should not report references to self' do
94
87
  'def into; self; end'.should_not reek
95
88
  end
89
+
90
+ it 'should recognise an ivar reference within a block' do
91
+ 'def clean(text) text.each { @fred = 3} end'.should_not reek
92
+ end
96
93
  end
@@ -2,23 +2,27 @@ require File.dirname(__FILE__) + '/../spec_helper.rb'
2
2
 
3
3
  describe 'sample gem source code' do
4
4
  it "reports the correct smells in inline.rb" do
5
- ruby = File.new('spec/samples/inline.rb').to_source
5
+ ruby = File.new("#{SAMPLES_DIR}/inline.rb").to_source
6
6
  ruby.should reek_of(:ControlCouple, /Inline::C#parse_signature/, /raw/)
7
7
  ruby.should reek_of(:ControlCouple, /Module#inline/, /options/)
8
- ruby.should reek_of(:Duplication, /Inline::C#build/, /\$\?\.==\(0\)/)
8
+ ruby.should reek_of(:Duplication, /Inline::C#build/, /\(\$\?\ == 0\)/)
9
9
  ruby.should reek_of(:Duplication, /Inline::C#build/, /Inline.directory/)
10
10
  ruby.should reek_of(:Duplication, /Inline::C#build/, /io.puts/)
11
- ruby.should reek_of(:Duplication, /Inline::C#build/, /io.puts\(#endif\)/)
12
- ruby.should reek_of(:Duplication, /Inline::C#build/, /io.puts\(#ifdef __cplusplus\)/)
13
- ruby.should reek_of(:Duplication, /Inline::C#crap_for_windoze/, /Config::CONFIG\[libdir\]/)
14
- ruby.should reek_of(:Duplication, /Inline::C#generate/, /result.sub!\(\(\?-mix:\\A\\n\), \)/)
15
- ruby.should reek_of(:Duplication, /Inline::C#generate/, /signature\[args\]/)
16
- ruby.should reek_of(:Duplication, /Inline::C#generate/, /signature\[args\].map/)
11
+ ruby.should reek_of(:Duplication, /Inline::C#build/, /io.puts\("#endif"\)/)
12
+ ruby.should reek_of(:Duplication, /Inline::C#build/, /io.puts\("#ifdef __cplusplus"\)/)
13
+ ruby.should reek_of(:Duplication, /Inline::C#build/, /module_name/)
14
+ ruby.should reek_of(:Duplication, /Inline::C#build/, /warn\("Output:\\n\#\{result\}"\)/)
15
+ ruby.should reek_of(:Duplication, /Inline::C#crap_for_windoze/, /Config::CONFIG\["libdir"\]/)
16
+ ruby.should reek_of(:Duplication, /Inline::C#generate/, /result.sub!\(\/\\A\\n\/, ""\)/)
17
+ ruby.should reek_of(:Duplication, /Inline::C#generate/, /signature\["args"\]/)
18
+ ruby.should reek_of(:Duplication, /Inline::C#generate/, /signature\["args"\].map/)
17
19
  ruby.should reek_of(:Duplication, /Inline::C#initialize/, /stack.empty?/)
20
+ ruby.should reek_of(:Duplication, /Inline::C#load/, /so_name/)
18
21
  ruby.should reek_of(:Duplication, /Inline::self.rootdir/, /env.nil?/)
19
22
  ruby.should reek_of(:Duplication, /Module#inline/, /Inline.const_get\(lang\)/)
20
23
  ruby.should reek_of(:FeatureEnvy, /Inline::C#strip_comments/, /src/)
21
- ruby.should reek_of(:LargeClass, /Inline::C/)
24
+ ruby.should reek_of(:LargeClass, /Inline::C/, /methods/)
25
+ ruby.should reek_of(:LargeClass, /Inline::C/, /instance variables/)
22
26
  ruby.should reek_of(:LongMethod, /File#self.write_with_backup/)
23
27
  ruby.should reek_of(:LongMethod, /Inline::C#build/)
24
28
  ruby.should reek_of(:LongMethod, /Inline::C#generate/)
@@ -35,6 +39,6 @@ describe 'sample gem source code' do
35
39
  ruby.should reek_of(:UncommunicativeName, /Inline::C#module_name/, /'x'/)
36
40
  ruby.should reek_of(:UncommunicativeName, /Inline::C#parse_signature/, /'x'/)
37
41
  ruby.should reek_of(:UtilityFunction, /Inline::C#strip_comments/)
38
- ruby.report.should have_at_most(32).smells
42
+ ruby.report.should have_at_most(36).smells
39
43
  end
40
44
  end
@@ -2,7 +2,7 @@ require File.dirname(__FILE__) + '/../spec_helper.rb'
2
2
 
3
3
  describe 'sample gem source code' do
4
4
  it "reports the correct smells in optparse.rb" do
5
- ruby = File.new('spec/samples/optparse.rb').to_source
5
+ ruby = File.new("#{SAMPLES_DIR}/optparse.rb").to_source
6
6
  ruby.should reek_of(:ControlCouple, /OptionParser#List#accept/, /pat/)
7
7
  ruby.should reek_of(:ControlCouple, /OptionParser#List#update/, /lopts/)
8
8
  ruby.should reek_of(:ControlCouple, /OptionParser#List#update/, /sopts/)
@@ -10,24 +10,33 @@ describe 'sample gem source code' do
10
10
  ruby.should reek_of(:ControlCouple, /OptionParser#Switch#NoArgument#parse/, /arg/)
11
11
  ruby.should reek_of(:ControlCouple, /OptionParser#Switch#OptionalArgument#parse/, /arg/)
12
12
  ruby.should reek_of(:ControlCouple, /OptionParser#Switch#RequiredArgument#parse/, /arg/)
13
+ ruby.should reek_of(:ControlCouple, /OptionParser#block/, /o/)
14
+ ruby.should reek_of(:ControlCouple, /OptionParser#block/, /s/)
15
+ ruby.should reek_of(:ControlCouple, /OptionParser#block\/block/, /pkg/)
16
+ ruby.should reek_of(:ControlCouple, /OptionParser#getopts\/block/, /val/)
13
17
  ruby.should reek_of(:ControlCouple, /OptionParser#parse_in_order/, /setter/)
14
18
  ruby.should reek_of(:Duplication, /OptionParser#Completion::complete/, /candidates.size/)
15
19
  ruby.should reek_of(:Duplication, /OptionParser#Completion::complete/, /k.id2name/)
16
20
  ruby.should reek_of(:Duplication, /OptionParser#Switch#parse_arg/, /s.length/)
17
- ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /block.max/)
18
- ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /block.max.to_i/)
19
- ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /indent.+\(l\)/)
21
+ ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /left.collect \{ \|s\| s\.length \}\.max/)
22
+ ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /left.collect \{ \|s\| s\.length \}\.max\.to_i/)
23
+ ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /\(indent \+ l\)/)
20
24
  ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /left.collect/)
21
25
  ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /left.shift/)
22
26
  ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /left\[-1\]/)
23
27
  ruby.should reek_of(:Duplication, /OptionParser#Switch#summarize/, /s.length/)
24
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /default_style.guess\(arg=a\)/)
25
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /long.<<\(o=q.downcase\)/)
26
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.method\(convert\)/)
27
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.method\(convert\).to_proc/)
28
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.respond_to\?\(convert\)/)
28
+ ruby.should reek_of(:Duplication, /OptionParser#getopts/, /result\[opt\] = false/)
29
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /default_style.guess\(arg = a\)/)
30
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /\(long << o = q.downcase\)/)
31
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /notwice\(a \? \(Object\) : \(TrueClass\), klass, "type"\)/)
32
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /notwice\(NilClass, klass, "type"\)/)
33
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.method\(:convert\)/)
34
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.method\(:convert\).to_proc/)
35
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /pattern.respond_to\?\(:convert\)/)
29
36
  ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /q.downcase/)
30
- ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /sdesc.<<\("-\#\{q\}"\)/)
37
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /search\(:atype, o\)/)
38
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /search\(:atype, FalseClass\)/)
39
+ ruby.should reek_of(:Duplication, /OptionParser#make_switch/, /\(sdesc << "-\#\{q\}"\)/)
31
40
  ruby.should reek_of(:Duplication, /OptionParser#order/, /argv\[0\]/)
32
41
  ruby.should reek_of(:Duplication, /OptionParser#parse/, /argv\[0\]/)
33
42
  ruby.should reek_of(:Duplication, /OptionParser#parse_in_order/, /\$\!.set_option\(arg, true\)/)
@@ -45,7 +54,6 @@ describe 'sample gem source code' do
45
54
  ruby.should reek_of(:LargeClass, /OptionParser/)
46
55
  ruby.should reek_of(:LongMethod, /OptionParser#Completion::complete/)
47
56
  ruby.should reek_of(:LongMethod, /OptionParser#List#update/)
48
- ruby.should reek_of(:LongMethod, /OptionParser#Switch#PlacedArgument#parse/)
49
57
  ruby.should reek_of(:LongMethod, /OptionParser#Switch#parse_arg/)
50
58
  ruby.should reek_of(:LongMethod, /OptionParser#Switch#summarize/)
51
59
  ruby.should reek_of(:LongMethod, /OptionParser#getopts/)
@@ -95,6 +103,6 @@ describe 'sample gem source code' do
95
103
  ruby.should reek_of(:UncommunicativeName, /OptionParser#summarize/, /'l'/)
96
104
  ruby.should reek_of(:UncommunicativeName, /OptionParser#ver/, /'v'/)
97
105
  ruby.should reek_of(:UncommunicativeName, /block/, /'q'/)
98
- ruby.report.should have_at_most(92).smells
106
+ ruby.report.should have_at_most(116).smells
99
107
  end
100
108
  end
@@ -2,7 +2,7 @@ require File.dirname(__FILE__) + '/../spec_helper.rb'
2
2
 
3
3
  describe 'sample gem source code' do
4
4
  it "reports the correct smells in redcloth.rb" do
5
- ruby = File.new('spec/samples/redcloth.rb').to_source
5
+ ruby = File.new("#{SAMPLES_DIR}/redcloth.rb").to_source
6
6
  ruby.should reek_of(:ControlCouple, /RedCloth#blocks\/block/, /deep_code/)
7
7
  ruby.should reek_of(:ControlCouple, /RedCloth#check_refs/, /text/)
8
8
  ruby.should reek_of(:ControlCouple, /RedCloth#pba/, /text_in/)
@@ -13,23 +13,31 @@ describe 'sample gem source code' do
13
13
  ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /depth.last/)
14
14
  ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /depth.last.length/)
15
15
  ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /depth\[i\]/)
16
- ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /line_id.-\(1\)/)
17
- ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /lines\[line_id.-\(1\)\]/)
16
+ ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /\(line_id - 1\)/)
17
+ ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /lines\[\(line_id - 1\)\]/)
18
18
  ruby.should reek_of(:Duplication, /RedCloth#block_textile_lists/, /tl.length/)
19
19
  ruby.should reek_of(:Duplication, /RedCloth#clean_html/, /tags\[tag\]/)
20
20
  ruby.should reek_of(:Duplication, /RedCloth#pba/, /\$1.length/)
21
21
  ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /@pre_list.last/)
22
- ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /@pre_list.last.<<\(line\)/)
23
- ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /codepre.-\(used_offtags.length\)/)
24
- ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /codepre.-\(used_offtags.length\).>\(0\)/)
22
+ ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /\(@pre_list.last << line\)/)
23
+ ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /\(codepre - used_offtags.length\)/)
24
+ ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /\(\(codepre - used_offtags.length\) > 0\)/)
25
25
  ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /codepre.zero?/)
26
+ ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /htmlesc\(line, :NoQuotes\)/)
26
27
  ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /used_offtags.length/)
27
- ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /used_offtags\[notextile\]/)
28
+ ruby.should reek_of(:Duplication, /RedCloth#rip_offtags/, /used_offtags\["notextile"\]/)
29
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#block_markdown_atx/, /text/)
30
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#block_markdown_rule/, /text/)
31
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#block_markdown_setext/, /text/)
32
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#block_textile_lists/, /depth/)
33
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#clean_html/, /raw/)
28
34
  ruby.should reek_of(:FeatureEnvy, /RedCloth#clean_html/, /tags/)
29
35
  ruby.should reek_of(:FeatureEnvy, /RedCloth#clean_white_space/, /text/)
30
36
  ruby.should reek_of(:FeatureEnvy, /RedCloth#flush_left/, /indt/)
31
37
  ruby.should reek_of(:FeatureEnvy, /RedCloth#flush_left/, /text/)
38
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#footnote_ref/, /text/)
32
39
  ruby.should reek_of(:FeatureEnvy, /RedCloth#htmlesc/, /str/)
40
+ ruby.should reek_of(:FeatureEnvy, /RedCloth#incoming_entities/, /text/)
33
41
  ruby.should reek_of(:FeatureEnvy, /RedCloth#no_textile/, /text/)
34
42
  ruby.should reek_of(:FeatureEnvy, /RedCloth#pba/, /style/)
35
43
  ruby.should reek_of(:FeatureEnvy, /RedCloth#pba/, /text/)
@@ -88,6 +96,6 @@ describe 'sample gem source code' do
88
96
  ruby.should reek_of(:UtilityFunction, /RedCloth#incoming_entities/)
89
97
  ruby.should reek_of(:UtilityFunction, /RedCloth#no_textile/)
90
98
  ruby.should reek_of(:UtilityFunction, /RedCloth#v_align/)
91
- ruby.report.should have_at_most(85).smells
99
+ ruby.report.should have_at_most(93).smells
92
100
  end
93
101
  end
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -4,7 +4,7 @@ require 'reek/source'
4
4
 
5
5
  include Reek
6
6
 
7
- describe SourceList do
7
+ describe SourceList, 'from_pathlist' do
8
8
 
9
9
  describe 'with no smells in any source' do
10
10
  before :each do
@@ -22,11 +22,11 @@ describe SourceList do
22
22
 
23
23
  describe 'with smells in one source' do
24
24
  before :each do
25
- @src = Source.from_pathlist(['spec/samples/inline.rb', 'lib/reek.rb'])
25
+ @src = Source.from_pathlist(["#{SAMPLES_DIR}/inline.rb", 'lib/reek.rb'])
26
26
  end
27
27
 
28
28
  it 'reports some smells in the samples' do
29
- @src.report.length.should == 32
29
+ @src.report.should have_at_least(30).smells
30
30
  end
31
31
 
32
32
  it 'is smelly' do
data/spec/spec_helper.rb CHANGED
@@ -9,3 +9,5 @@ rescue LoadError
9
9
  end
10
10
 
11
11
  require 'reek/spec'
12
+
13
+ SAMPLES_DIR = 'spec/slow/samples' unless Object.const_defined?('SAMPLES_DIR')
data/tasks/rspec.rake CHANGED
@@ -3,7 +3,7 @@ require 'spec/rake/spectask'
3
3
 
4
4
  namespace 'rspec' do
5
5
  FAST = FileList['spec/reek/**/*_spec.rb']
6
- SLOW = FileList['spec/integration/**/*_spec.rb', 'spec/samples/**/*_spec.rb']
6
+ SLOW = FileList['spec/slow/**/*_spec.rb']
7
7
 
8
8
  Spec::Rake::SpecTask.new('fast') do |t|
9
9
  t.spec_files = FAST
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.0.1
4
+ version: 1.1.1
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-04-06 00:00:00 -07:00
12
+ date: 2009-05-08 00:00:00 -07:00
13
13
  default_executable: reek
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -22,6 +22,16 @@ dependencies:
22
22
  - !ruby/object:Gem::Version
23
23
  version: "3.0"
24
24
  version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: ruby2ruby
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: "1.2"
34
+ version:
25
35
  - !ruby/object:Gem::Dependency
26
36
  name: sexp_processor
27
37
  type: :runtime
@@ -82,8 +92,7 @@ files:
82
92
  - lib/reek/stop_context.rb
83
93
  - lib/reek/yield_call_context.rb
84
94
  - reek.gemspec
85
- - spec/integration/reek_source_spec.rb
86
- - spec/integration/script_spec.rb
95
+ - spec/reek/block_context_spec.rb
87
96
  - spec/reek/class_context_spec.rb
88
97
  - spec/reek/code_context_spec.rb
89
98
  - spec/reek/code_parser_spec.rb
@@ -91,6 +100,7 @@ files:
91
100
  - spec/reek/if_context_spec.rb
92
101
  - spec/reek/method_context_spec.rb
93
102
  - spec/reek/module_context_spec.rb
103
+ - spec/reek/name_spec.rb
94
104
  - spec/reek/object_refs_spec.rb
95
105
  - spec/reek/options_spec.rb
96
106
  - spec/reek/report_spec.rb
@@ -106,13 +116,15 @@ files:
106
116
  - spec/reek/smells/smell_spec.rb
107
117
  - spec/reek/smells/uncommunicative_name_spec.rb
108
118
  - spec/reek/smells/utility_function_spec.rb
109
- - spec/reek/source_spec.rb
110
- - spec/samples/inline.rb
111
- - spec/samples/inline_spec.rb
112
- - spec/samples/optparse.rb
113
- - spec/samples/optparse_spec.rb
114
- - spec/samples/redcloth.rb
115
- - spec/samples/redcloth_spec.rb
119
+ - spec/slow/inline_spec.rb
120
+ - spec/slow/optparse_spec.rb
121
+ - spec/slow/redcloth_spec.rb
122
+ - spec/slow/reek_source_spec.rb
123
+ - spec/slow/samples/inline.rb
124
+ - spec/slow/samples/optparse.rb
125
+ - spec/slow/samples/redcloth.rb
126
+ - spec/slow/script_spec.rb
127
+ - spec/slow/source_list_spec.rb
116
128
  - spec/spec.opts
117
129
  - spec/spec_helper.rb
118
130
  - tasks/reek.rake
@@ -145,7 +157,7 @@ requirements: []
145
157
  rubyforge_project: reek
146
158
  rubygems_version: 1.2.0
147
159
  signing_key:
148
- specification_version: 2
160
+ specification_version: 3
149
161
  summary: Code smell detector for Ruby
150
162
  test_files: []
151
163