kevinrutherford-reek 1.0.1 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
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