p8-metric_fu 0.9.0.1 → 0.9.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,30 @@
1
+ <html>
2
+ <head>
3
+ <title>Reek Results</title>
4
+ <style>
5
+ <%= inline_css("default.css") %>
6
+ </style>
7
+ </head>
8
+
9
+ <body>
10
+ <h1>Reek Results</h1>
11
+ <p><a href="http://reek.rubyforge.org/">Reek</a> detects common code smells in ruby code.</p>
12
+ <table>
13
+ <tr>
14
+ <th>File Path</th>
15
+ <th>Code Smell</th>
16
+ </tr>
17
+ <% @matches.each_with_index do |match, count| %>
18
+ <tr class='<%= cycle("light", "dark", count) %>'>
19
+ <td><%= @filenames[count] ? link_to_filename(@filenames[count]) : match.first %></td>
20
+ <td>
21
+ <% match[1..-1].each do |line| %>
22
+ <%= line %><br>
23
+ <% end %>
24
+ </td>
25
+ </tr>
26
+ <% end %>
27
+ </table>
28
+ <p>Generated on <%= Time.now.localtime %></p>
29
+ </body>
30
+ </html>
@@ -0,0 +1,26 @@
1
+ <html>
2
+ <head>
3
+ <title>Roodi Results</title>
4
+ <style>
5
+ <%= inline_css("default.css") %>
6
+ </style>
7
+ </head>
8
+
9
+ <body>
10
+ <h1>Roodi Results</h1>
11
+ <p><a href="http://roodi.rubyforge.org/">Roodi</a> parses your Ruby code and warns you about design issues you have based on the checks that is has configured.</p>
12
+ <table>
13
+ <tr>
14
+ <th>File Path</th>
15
+ <th>Warning</th>
16
+ </tr>
17
+ <% @matches.each_with_index do |match, count| %>
18
+ <tr class='<%= cycle("light", "dark", count) %>'>
19
+ <td><%= link_to_filename(match.first.split(':').first) if match.first %></td>
20
+ <td><%= match[1] %></td>
21
+ </tr>
22
+ <% end %>
23
+ </table>
24
+ <p>Generated on <%= Time.now.localtime %></p>
25
+ </body>
26
+ </html>
@@ -0,0 +1,80 @@
1
+ require File.dirname(__FILE__) + '/spec_helper.rb'
2
+
3
+ describe MetricFu::Base::Generator do
4
+ describe "save_html" do
5
+ it "should save to a index.html in the base_dir" do
6
+ @generator = MetricFu::Base::Generator.new
7
+ @generator.should_receive(:open).with("#{MetricFu::BASE_DIRECTORY}/generator/index.html", "w")
8
+ @generator.save_html("<html>")
9
+ end
10
+
11
+ it "should save to a custom.html to the base_dir if 'custom' is passed as name" do
12
+ @generator = MetricFu::Base::Generator.new
13
+ @generator.should_receive(:open).with("#{MetricFu::BASE_DIRECTORY}/generator/metric_fu/custom.html", "w")
14
+ @generator.save_html("<html>", 'metric_fu/custom.html')
15
+ end
16
+ end
17
+
18
+ describe "generate_report class method" do
19
+ it "should create a new Generator and call generate_report on it" do
20
+ @generator = mock('generator')
21
+ @generator.should_receive(:generate_report)
22
+ MetricFu::Base::Generator.should_receive(:new).and_return(@generator)
23
+ MetricFu::Base::Generator.generate_report('base_dir')
24
+ end
25
+ end
26
+
27
+ describe "generate_html" do
28
+ it "should create a new Generator and call generate_report on it" do
29
+ @generator = MetricFu::Base::Generator.new
30
+ @generator.should_receive(:open).with("#{MetricFu::BASE_DIRECTORY}/generator/index.html", "w")
31
+ @generator.should_receive(:generate_html).and_return('<html>')
32
+ @generator.generate_report
33
+ end
34
+ end
35
+
36
+ describe "cycle" do
37
+ it "should create a new Generator and call generate_report on it" do
38
+ @generator = MetricFu::Base::Generator.new
39
+ @generator.cycle("light", "dark", 0).should == 'light'
40
+ @generator.cycle("light", "dark", 1).should == 'dark'
41
+ end
42
+ end
43
+
44
+ describe "template_name" do
45
+ it "should return the class name in lowercase" do
46
+ @generator = MetricFu::Base::Generator.new
47
+ @generator.template_name.should == 'generator'
48
+ end
49
+ end
50
+
51
+ describe "metric_dir" do
52
+ it "should return tmp/metric_fu/{the class name in lowercase}" do
53
+ MetricFu::Base::Generator.metric_dir.should == "#{MetricFu::BASE_DIRECTORY}/generator"
54
+ end
55
+ end
56
+
57
+ describe "link_to_filename", "when run_by_cruise_control and a url_prefix is specfied" do
58
+ before(:each) do
59
+ @generator = MetricFu::Base::Generator.new
60
+ MetricFu.should_receive(:run_by_cruise_control?).at_least(1).and_return(true)
61
+ end
62
+
63
+ it "should return a link using the prefix" do
64
+ MetricFu::Configuration.run do |config|
65
+ config.general = { :open_in_browser => true, :url_prefix => 'prefix' }
66
+ end
67
+
68
+ link = @generator.link_to_filename("app/model/foo.rb", 23)
69
+ link.should == %{<a href="prefix/app/model/foo.rb?line=23#23">app/model/foo.rb</a>}
70
+ end
71
+ it "should return a link using the prefix even if the prefix ends with /" do
72
+ MetricFu::Configuration.run do |config|
73
+ config.general = { :open_in_browser => true, :url_prefix => 'prefix/' }
74
+ end
75
+
76
+ link = @generator.link_to_filename("app/model/foo.rb", 23)
77
+ link.should == %{<a href="prefix/app/model/foo.rb?line=23#23">app/model/foo.rb</a>}
78
+ end
79
+ end
80
+ end
@@ -1,117 +1,117 @@
1
1
  require File.dirname(__FILE__) + '/spec_helper.rb'
2
2
 
3
- describe Churn do
4
- # describe "generate_report" do
5
- # after do
6
- # load File.dirname(__FILE__) + '/../lib/metric_fu/churn.rb' #need to reload file to wipe out mock of private static
7
- # end
8
- #
9
- # it "should strip out files that have less than the min count" do
10
- # logs = ["accept", "accept", "accept", "reject", "reject"]
11
- # git_mock = mock('git')
12
- # git_mock.should_receive(:get_logs).and_return(logs)
13
- # Churn::Git.should_receive(:new).and_return(git_mock)
14
- # churn = Churn.new(:scm => :git, :minimum_churn_count => 3)
15
- # churn.analyze
16
- # churn.instance_variable_get(:@changes).should == {"accept"=>3}
17
- # end
18
- #
19
- # it "should have a default min count of 5" do
20
- # churn = Churn.new('base_dir')
21
- # churn.instance_variable_get(:@minimum_churn_count).should == 5
22
- # end
23
- #
24
- # end
25
- #
26
- # describe "template_name" do
27
- # it "should return the class name in lowercase" do
28
- # churn = Churn.new
29
- # churn.template_name.should == 'churn'
30
- # end
31
- # end
32
- #
33
- # describe "parse_log_for_changes" do
34
- # it "should count the changes with git" do
35
- # logs = ["home_page/index.html", "README", "History.txt", "README", "History.txt", "README"]
36
- # git_mock = mock('git')
37
- # git_mock.should_receive(:get_logs).and_return(logs)
38
- # Churn::Git.should_receive(:new).and_return(git_mock)
39
- # File.should_receive(:exist?).with(".git").and_return(true)
40
- # changes = Churn.new.send(:parse_log_for_changes)
41
- # changes["home_page/index.html"].should == 1
42
- # changes["History.txt"].should == 2
43
- # changes["README"].should == 3
44
- # end
45
- #
46
- # it "should count the changes with svn" do
47
- # logs = ["home_page/index.html", "README", "History.txt", "README", "History.txt", "README"]
48
- # svn_mock = mock('svn')
49
- # svn_mock.should_receive(:get_logs).and_return(logs)
50
- # Churn::Svn.should_receive(:new).and_return(svn_mock)
51
- # File.should_receive(:exist?).with(".git").and_return(false)
52
- # File.should_receive(:exist?).with(".svn").and_return(true)
53
- # changes = Churn.new.send(:parse_log_for_changes)
54
- # changes["home_page/index.html"].should == 1
55
- # changes["History.txt"].should == 2
56
- # changes["README"].should == 3
57
- # end
58
- # end
59
- # end
60
- #
61
- # describe MetricFu::Churn::Svn do
62
- #
63
- # describe "get_logs" do
64
- # it "should use the start date if supplied" do
65
- # @churn = Churn::Svn.new
66
- # @churn.should_receive(:`).with('svn log --verbose').and_return("")
67
- # @churn.get_logs
68
- # end
69
- # it "should use the start date if supplied" do
70
- # Time.should_receive(:now).and_return(Date.new(2001, 1, 2))
71
- # @churn = Churn::Svn.new(lambda{Date.new(2000, 1, 1)})
72
- # @churn.should_receive(:require_rails_env)
73
- # @churn.should_receive(:`).with("svn log --revision {2000-01-01}:{2001-01-02} --verbose").and_return("")
74
- # @churn.get_logs
75
- # end
76
- # end
77
- #
78
- # describe "clean_up_svn_line" do
79
- # it "should return nil for non matches" do
80
- # Churn::Svn.new.send(:clean_up_svn_line, "Adding Google analytics").should be_nil
81
- # Churn::Svn.new.send(:clean_up_svn_line, "A bunch of new files").should be_nil
82
- # end
83
- #
84
- # it "should strip out all but the full path" do
85
- # Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
86
- # Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
87
- # Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
88
- # Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
89
- # Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
90
- # Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
91
- #
92
- # Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
93
- # Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
94
- # Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
95
- # Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
96
- # Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
97
- # Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
98
- # end
99
- # end
100
- # end
101
- #
102
- # describe MetricFu::Churn::Git do
103
- #
104
- # describe "get_logs" do
105
- # it "should use the start date if supplied" do
106
- # @churn = Churn::Git.new
107
- # @churn.should_receive(:`).with('git log --name-only --pretty=format:').and_return("")
108
- # @churn.get_logs
109
- # end
110
- # it "should use the start date if supplied" do
111
- # @churn = Churn::Git.new(lambda{Date.new(2000, 1, 1)})
112
- # @churn.should_receive(:require_rails_env)
113
- # @churn.should_receive(:`).with("git log --after=2000-01-01 --name-only --pretty=format:").and_return("")
114
- # @churn.get_logs
115
- # end
116
- # end
3
+ describe MetricFu::Churn do
4
+ describe "generate_report" do
5
+ after do
6
+ load File.dirname(__FILE__) + '/../lib/metric_fu/churn.rb' #need to reload file to wipe out mock of private static
7
+ end
8
+
9
+ it "should strip out files that have less than the min count" do
10
+ logs = ["accept", "accept", "accept", "reject", "reject"]
11
+ git_mock = mock('git')
12
+ git_mock.should_receive(:get_logs).and_return(logs)
13
+ Churn::Git.should_receive(:new).and_return(git_mock)
14
+ churn = Churn.new(:scm => :git, :minimum_churn_count => 3)
15
+ churn.analyze
16
+ churn.instance_variable_get(:@changes).should == {"accept"=>3}
17
+ end
18
+
19
+ it "should have a default min count of 5" do
20
+ churn = Churn.new('base_dir')
21
+ churn.instance_variable_get(:@minimum_churn_count).should == 5
22
+ end
23
+
24
+ end
25
+
26
+ describe "template_name" do
27
+ it "should return the class name in lowercase" do
28
+ churn = Churn.new
29
+ churn.template_name.should == 'churn'
30
+ end
31
+ end
32
+
33
+ describe "parse_log_for_changes" do
34
+ it "should count the changes with git" do
35
+ logs = ["home_page/index.html", "README", "History.txt", "README", "History.txt", "README"]
36
+ git_mock = mock('git')
37
+ git_mock.should_receive(:get_logs).and_return(logs)
38
+ Churn::Git.should_receive(:new).and_return(git_mock)
39
+ File.should_receive(:exist?).with(".git").and_return(true)
40
+ changes = Churn.new.send(:parse_log_for_changes)
41
+ changes["home_page/index.html"].should == 1
42
+ changes["History.txt"].should == 2
43
+ changes["README"].should == 3
44
+ end
45
+
46
+ it "should count the changes with svn" do
47
+ logs = ["home_page/index.html", "README", "History.txt", "README", "History.txt", "README"]
48
+ svn_mock = mock('svn')
49
+ svn_mock.should_receive(:get_logs).and_return(logs)
50
+ Churn::Svn.should_receive(:new).and_return(svn_mock)
51
+ File.should_receive(:exist?).with(".git").and_return(false)
52
+ File.should_receive(:exist?).with(".svn").and_return(true)
53
+ changes = Churn.new.send(:parse_log_for_changes)
54
+ changes["home_page/index.html"].should == 1
55
+ changes["History.txt"].should == 2
56
+ changes["README"].should == 3
57
+ end
58
+ end
117
59
  end
60
+
61
+ describe MetricFu::Churn::Svn do
62
+
63
+ describe "get_logs" do
64
+ it "should use the start date if supplied" do
65
+ @churn = Churn::Svn.new
66
+ @churn.should_receive(:`).with('svn log --verbose').and_return("")
67
+ @churn.get_logs
68
+ end
69
+ it "should use the start date if supplied" do
70
+ Time.should_receive(:now).and_return(Date.new(2001, 1, 2))
71
+ @churn = Churn::Svn.new(lambda{Date.new(2000, 1, 1)})
72
+ @churn.should_receive(:require_rails_env)
73
+ @churn.should_receive(:`).with("svn log --revision {2000-01-01}:{2001-01-02} --verbose").and_return("")
74
+ @churn.get_logs
75
+ end
76
+ end
77
+
78
+ describe "clean_up_svn_line" do
79
+ it "should return nil for non matches" do
80
+ Churn::Svn.new.send(:clean_up_svn_line, "Adding Google analytics").should be_nil
81
+ Churn::Svn.new.send(:clean_up_svn_line, "A bunch of new files").should be_nil
82
+ end
83
+
84
+ it "should strip out all but the full path" do
85
+ Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
86
+ Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
87
+ Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
88
+ Churn::Svn.new.send(:clean_up_svn_line, " A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
89
+ Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
90
+ Churn::Svn.new.send(:clean_up_svn_line, "A /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
91
+
92
+ Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
93
+ Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
94
+ Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb ").should == "/trunk/lib/server.rb"
95
+ Churn::Svn.new.send(:clean_up_svn_line, " M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
96
+ Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
97
+ Churn::Svn.new.send(:clean_up_svn_line, "M /trunk/lib/server.rb").should == "/trunk/lib/server.rb"
98
+ end
99
+ end
100
+ end
101
+
102
+ describe MetricFu::Churn::Git do
103
+
104
+ describe "get_logs" do
105
+ it "should use the start date if supplied" do
106
+ @churn = Churn::Git.new
107
+ @churn.should_receive(:`).with('git log --name-only --pretty=format:').and_return("")
108
+ @churn.get_logs
109
+ end
110
+ it "should use the start date if supplied" do
111
+ @churn = Churn::Git.new(lambda{Date.new(2000, 1, 1)})
112
+ @churn.should_receive(:require_rails_env)
113
+ @churn.should_receive(:`).with("git log --after=2000-01-01 --name-only --pretty=format:").and_return("")
114
+ @churn.get_logs
115
+ end
116
+ end
117
+ end
@@ -1,110 +1,110 @@
1
1
  require File.dirname(__FILE__) + '/spec_helper.rb'
2
2
 
3
3
  describe MetricFu::Configuration do
4
- # before do
5
- # MetricFu.configuration.reset
6
- # end
7
- # after do
8
- # ENV['CC_BUILD_ARTIFACTS'] = nil
9
- # end
10
- # describe "open_in_browser" do
11
- # it "should return false if running in cruise" do
12
- # unless ENV['CC_BUILD_ARTIFACTS']
13
- # MetricFu.open_in_browser?.should == !!PLATFORM['darwin']
14
- # ENV['CC_BUILD_ARTIFACTS'] = ''
15
- # MetricFu.open_in_browser?.should == false
16
- # end
17
- # end
18
- # end
4
+ before do
5
+ MetricFu.configuration.reset
6
+ end
7
+ after do
8
+ ENV['CC_BUILD_ARTIFACTS'] = nil
9
+ end
10
+ describe "open_in_browser" do
11
+ it "should return false if running in cruise" do
12
+ unless ENV['CC_BUILD_ARTIFACTS']
13
+ MetricFu.open_in_browser?.should == !!PLATFORM['darwin']
14
+ ENV['CC_BUILD_ARTIFACTS'] = ''
15
+ MetricFu.open_in_browser?.should == false
16
+ end
17
+ end
18
+ end
19
19
 
20
- # describe "metrics" do
21
- # it "should be configurable" do
22
- # MetricFu.metrics.should == [:coverage, :churn, :flog, :flay, :reek, :roodi, :saikuro]
23
- # MetricFu::Configuration.run do |config|
24
- # config.metrics = [:coverage, :flog]
25
- # end
26
- # MetricFu.metrics.should == [:coverage, :flog]
27
- # end
28
- # end
29
- #
30
- # describe "churn" do
31
- # it "should be configurable" do
32
- # now = Time.now
33
- # MetricFu.churn.should == {}
34
- # MetricFu::Configuration.run do |config|
35
- # config.churn[:start_date] = now
36
- # end
37
- # MetricFu.churn.should == {:start_date => now }
38
- # end
39
- # end
40
- #
41
- # describe "coverage" do
42
- # it "should be configurable" do
43
- # MetricFu.coverage[:test_files].should == ['test/**/*_test.rb', 'spec/**/*_spec.rb']
44
- # MetricFu::Configuration.run do |config|
45
- # config.coverage[:test_files] = ['test/**/test_*.rb']
46
- # end
47
- # MetricFu.coverage[:test_files].should == ['test/**/test_*.rb']
48
- # end
49
- # end
20
+ describe "metrics" do
21
+ it "should be configurable" do
22
+ MetricFu.metrics.should == [:coverage, :churn, :flog, :flay, :reek, :roodi, :saikuro]
23
+ MetricFu::Configuration.run do |config|
24
+ config.metrics = [:coverage, :flog]
25
+ end
26
+ MetricFu.metrics.should == [:coverage, :flog]
27
+ end
28
+ end
29
+
30
+ describe "churn" do
31
+ it "should be configurable" do
32
+ now = Time.now
33
+ MetricFu.churn.should == {}
34
+ MetricFu::Configuration.run do |config|
35
+ config.churn[:start_date] = now
36
+ end
37
+ MetricFu.churn.should == {:start_date => now }
38
+ end
39
+ end
40
+
41
+ describe "coverage" do
42
+ it "should be configurable" do
43
+ MetricFu.coverage[:test_files].should == ['test/**/*_test.rb', 'spec/**/*_spec.rb']
44
+ MetricFu::Configuration.run do |config|
45
+ config.coverage[:test_files] = ['test/**/test_*.rb']
46
+ end
47
+ MetricFu.coverage[:test_files].should == ['test/**/test_*.rb']
48
+ end
49
+ end
50
50
 
51
- # describe "flay" do
52
- # it "should be configurable" do
53
- # now = Time.now
54
- # MetricFu.flay.should == { :dirs_to_flay => ['lib'] }
55
- # MetricFu::Configuration.run do |config|
56
- # config.flay[:dirs_to_flay] = ['cms/app', 'cms/lib']
57
- # end
58
- # MetricFu.flay.should == { :dirs_to_flay => ['cms/app', 'cms/lib'] }
59
- # end
60
- # end
51
+ describe "flay" do
52
+ it "should be configurable" do
53
+ now = Time.now
54
+ MetricFu.flay.should == { :dirs_to_flay => ['lib'] }
55
+ MetricFu::Configuration.run do |config|
56
+ config.flay[:dirs_to_flay] = ['cms/app', 'cms/lib']
57
+ end
58
+ MetricFu.flay.should == { :dirs_to_flay => ['cms/app', 'cms/lib'] }
59
+ end
60
+ end
61
61
 
62
- # describe "flog" do
63
- # it "should be configurable" do
64
- # MetricFu.flog.should == { :dirs_to_flog => ['lib'] }
65
- # MetricFu::Configuration.run do |config|
66
- # config.flog[:dirs_to_flog] = ['cms/app', 'cms/lib']
67
- # end
68
- # MetricFu.flog.should == { :dirs_to_flog => ['cms/app', 'cms/lib'] }
69
- # end
70
- # end
62
+ describe "flog" do
63
+ it "should be configurable" do
64
+ MetricFu.flog.should == { :dirs_to_flog => ['lib'] }
65
+ MetricFu::Configuration.run do |config|
66
+ config.flog[:dirs_to_flog] = ['cms/app', 'cms/lib']
67
+ end
68
+ MetricFu.flog.should == { :dirs_to_flog => ['cms/app', 'cms/lib'] }
69
+ end
70
+ end
71
71
 
72
- # describe "saikuro" do
73
- # it "should be configurable" do
74
- # MetricFu.saikuro.should == {}
75
- # MetricFu::Configuration.run do |config|
76
- # config.saikuro = { "--warn_cyclo" => "3", "--error_cyclo" => "4" }
77
- # end
78
- # MetricFu.saikuro.should == { "--warn_cyclo" => "3", "--error_cyclo" => "4" }
79
- # end
80
- #
81
- # it "should only accept a Hash" do
82
- # MetricFu.saikuro.should == {}
83
- # lambda {
84
- # MetricFu::Configuration.run do |config|
85
- # config.saikuro = ''
86
- # end
87
- # }.should raise_error
88
- # end
89
- # end
90
- #
91
- # describe "reek" do
92
- # it "should be configurable" do
93
- # MetricFu.reek.should == { :dirs_to_reek => ['lib'] }
94
- # MetricFu::Configuration.run do |config|
95
- # config.reek[:dirs_to_reek] = ['cms/app', 'cms/lib']
96
- # end
97
- # MetricFu.reek.should == { :dirs_to_reek => ['cms/app', 'cms/lib'] }
98
- # end
99
- # end
100
- #
101
- # describe "roodi" do
102
- # it "should be configurable" do
103
- # MetricFu.roodi.should == { :dirs_to_roodi => ['lib'] }
104
- # MetricFu::Configuration.run do |config|
105
- # config.roodi[:dirs_to_roodi] = ['cms/app', 'cms/lib']
106
- # end
107
- # MetricFu.roodi.should == { :dirs_to_roodi => ['cms/app', 'cms/lib'] }
108
- # end
109
- # end
110
- end
72
+ describe "saikuro" do
73
+ it "should be configurable" do
74
+ MetricFu.saikuro.should == {}
75
+ MetricFu::Configuration.run do |config|
76
+ config.saikuro = { "--warn_cyclo" => "3", "--error_cyclo" => "4" }
77
+ end
78
+ MetricFu.saikuro.should == { "--warn_cyclo" => "3", "--error_cyclo" => "4" }
79
+ end
80
+
81
+ it "should only accept a Hash" do
82
+ MetricFu.saikuro.should == {}
83
+ lambda {
84
+ MetricFu::Configuration.run do |config|
85
+ config.saikuro = ''
86
+ end
87
+ }.should raise_error
88
+ end
89
+ end
90
+
91
+ describe "reek" do
92
+ it "should be configurable" do
93
+ MetricFu.reek.should == { :dirs_to_reek => ['lib'] }
94
+ MetricFu::Configuration.run do |config|
95
+ config.reek[:dirs_to_reek] = ['cms/app', 'cms/lib']
96
+ end
97
+ MetricFu.reek.should == { :dirs_to_reek => ['cms/app', 'cms/lib'] }
98
+ end
99
+ end
100
+
101
+ describe "roodi" do
102
+ it "should be configurable" do
103
+ MetricFu.roodi.should == { :dirs_to_roodi => ['lib'] }
104
+ MetricFu::Configuration.run do |config|
105
+ config.roodi[:dirs_to_roodi] = ['cms/app', 'cms/lib']
106
+ end
107
+ MetricFu.roodi.should == { :dirs_to_roodi => ['cms/app', 'cms/lib'] }
108
+ end
109
+ end
110
+ end