metric_fu 4.1.2 → 4.1.3
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.
- data/.travis.yml +7 -4
- data/.yardopts +5 -0
- data/CONTRIBUTING.md +28 -13
- data/Gemfile +7 -3
- data/HISTORY.md +12 -0
- data/README.md +17 -0
- data/TODO.md +74 -79
- data/lib/metric_fu.rb +8 -0
- data/lib/metric_fu/configuration.rb +8 -3
- data/lib/metric_fu/core_ext.rb +2 -0
- data/lib/metric_fu/core_ext/inflector/inflections.rb +214 -0
- data/lib/metric_fu/core_ext/inflector/methods.rb +153 -0
- data/lib/metric_fu/core_ext/object.rb +3 -0
- data/lib/metric_fu/core_ext/object/blank.rb +106 -0
- data/lib/metric_fu/core_ext/object/to_json.rb +12 -0
- data/lib/metric_fu/core_ext/string.rb +2 -0
- data/lib/metric_fu/core_ext/string/inflections.rb +195 -0
- data/lib/metric_fu/initial_requires.rb +0 -8
- data/lib/metric_fu/metrics/base_template.rb +28 -1
- data/lib/metric_fu/metrics/churn/churn.rb +2 -2
- data/lib/metric_fu/metrics/churn/template_awesome/churn.html.erb +8 -6
- data/lib/metric_fu/metrics/hotspots/analysis/code_issue.rb +6 -0
- data/lib/metric_fu/metrics/hotspots/init.rb +1 -0
- data/lib/metric_fu/reporting/templates/awesome/awesome_template.rb +37 -20
- data/lib/metric_fu/reporting/templates/awesome/css/bluff.css +15 -0
- data/lib/metric_fu/reporting/templates/awesome/css/default.css +0 -48
- data/lib/metric_fu/reporting/templates/awesome/css/rcov.css +32 -0
- data/lib/metric_fu/reporting/templates/awesome/index.html.erb +4 -32
- data/lib/metric_fu/reporting/templates/awesome/layout.html.erb +2 -0
- data/lib/metric_fu/version.rb +1 -1
- data/metric_fu.gemspec +23 -11
- data/spec/cli/helper_spec.rb +38 -28
- data/spec/metric_fu/configuration_spec.rb +35 -22
- data/spec/metric_fu/metrics/base_template_spec.rb +7 -7
- data/spec/metric_fu/metrics/churn/churn_spec.rb +9 -2
- data/spec/metric_fu/metrics/flog/flog_spec.rb +57 -55
- data/spec/metric_fu/metrics/hotspots/hotspot_analyzer_spec.rb +0 -2
- data/spec/run_spec.rb +0 -8
- data/spec/support/suite.rb +3 -1
- metadata +74 -125
- data/home_page/back_all.jpg +0 -0
- data/home_page/cc.rb.gif +0 -0
- data/home_page/churn.gif +0 -0
- data/home_page/cruise_control_1.gif +0 -0
- data/home_page/cyclomatic.gif +0 -0
- data/home_page/flay.gif +0 -0
- data/home_page/flog.gif +0 -0
- data/home_page/flog2.gif +0 -0
- data/home_page/footer.gif +0 -0
- data/home_page/header.jpg +0 -0
- data/home_page/hotspot.gif +0 -0
- data/home_page/img09.gif +0 -0
- data/home_page/index.html +0 -138
- data/home_page/rcov.gif +0 -0
- data/home_page/reek.gif +0 -0
- data/home_page/robots.txt +0 -5
- data/home_page/roodi.gif +0 -0
- data/home_page/saikuro.gif +0 -0
- data/home_page/stats.gif +0 -0
- data/home_page/styles.css +0 -245
- data/home_page/title.gif +0 -0
- data/home_page/title_back.gif +0 -0
- data/lib/metric_fu/metrics/cane/template_standard/cane.html.erb +0 -95
- data/lib/metric_fu/metrics/churn/template_standard/churn.html.erb +0 -31
- data/lib/metric_fu/metrics/flay/template_standard/flay.html.erb +0 -34
- data/lib/metric_fu/metrics/flog/template_standard/flog.html.erb +0 -57
- data/lib/metric_fu/metrics/hotspots/template_standard/hotspots.html.erb +0 -54
- data/lib/metric_fu/metrics/rails_best_practices/template_standard/rails_best_practices.html.erb +0 -29
- data/lib/metric_fu/metrics/rcov/template_standard/rcov.html.erb +0 -43
- data/lib/metric_fu/metrics/reek/template_standard/reek.html.erb +0 -42
- data/lib/metric_fu/metrics/roodi/template_standard/roodi.html.erb +0 -29
- data/lib/metric_fu/metrics/saikuro/template_standard/saikuro.html.erb +0 -84
- data/lib/metric_fu/metrics/stats/template_standard/stats.html.erb +0 -55
- data/lib/metric_fu/reporting/templates/standard/default.css +0 -64
- data/lib/metric_fu/reporting/templates/standard/index.html.erb +0 -44
- data/lib/metric_fu/reporting/templates/standard/standard_template.rb +0 -26
data/spec/cli/helper_spec.rb
CHANGED
@@ -15,10 +15,6 @@ describe MetricFu::Cli::Helper do
|
|
15
15
|
defaults[:open].should be_true
|
16
16
|
end
|
17
17
|
|
18
|
-
it "enables Flog" do
|
19
|
-
defaults[:flog].should be_true
|
20
|
-
end
|
21
|
-
|
22
18
|
it "enables Flay" do
|
23
19
|
defaults[:flay].should be_true
|
24
20
|
end
|
@@ -39,8 +35,14 @@ describe MetricFu::Cli::Helper do
|
|
39
35
|
defaults[:saikuro].should be_true
|
40
36
|
end
|
41
37
|
|
42
|
-
|
43
|
-
|
38
|
+
if MetricFu.configuration.mri?
|
39
|
+
it "enables Flog" do
|
40
|
+
!defaults[:flog].should be_true
|
41
|
+
end
|
42
|
+
|
43
|
+
it "enables Cane" do
|
44
|
+
defaults[:cane].should be_true
|
45
|
+
end
|
44
46
|
end
|
45
47
|
|
46
48
|
it "enables RCov" do
|
@@ -49,24 +51,26 @@ describe MetricFu::Cli::Helper do
|
|
49
51
|
|
50
52
|
end
|
51
53
|
|
52
|
-
|
54
|
+
if MetricFu.configuration.mri?
|
55
|
+
context "on Ruby 1.8.7" do
|
53
56
|
|
54
|
-
|
57
|
+
before { helper.stub(:ruby).and_return("1.8.7") }
|
58
|
+
|
59
|
+
it "disables rails_best_practices" do
|
60
|
+
defaults[:rails_best_practices].should be_false
|
61
|
+
end
|
55
62
|
|
56
|
-
it "disables rails_best_practices" do
|
57
|
-
defaults[:rails_best_practices].should be_false
|
58
63
|
end
|
59
64
|
|
60
|
-
|
65
|
+
context "on Ruby 1.9" do
|
61
66
|
|
62
|
-
|
67
|
+
before { helper.stub(:ruby).and_return("1.9.3") }
|
63
68
|
|
64
|
-
|
69
|
+
xit "enables Rails Best Practices" do
|
70
|
+
defaults[:rails_best_practices].should be_true
|
71
|
+
end
|
65
72
|
|
66
|
-
xit "enables Rails Best Practices" do
|
67
|
-
defaults[:rails_best_practices].should be_true
|
68
73
|
end
|
69
|
-
|
70
74
|
end
|
71
75
|
|
72
76
|
end
|
@@ -106,14 +110,27 @@ describe MetricFu::Cli::Helper do
|
|
106
110
|
helper.process_options(["--flay"])[:flay].should be_true
|
107
111
|
end
|
108
112
|
|
109
|
-
|
110
|
-
|
111
|
-
|
113
|
+
if MetricFu.configuration.mri?
|
114
|
+
|
115
|
+
it "turns flog off" do
|
116
|
+
helper.process_options(["--no-flog"])[:flog].should be_false
|
117
|
+
end
|
118
|
+
|
119
|
+
it "turns flog on" do
|
120
|
+
helper.process_options(["--flog"])[:flog].should be_true
|
121
|
+
end
|
122
|
+
|
123
|
+
it "turns cane off" do
|
124
|
+
helper.process_options(["--no-cane"])[:cane].should be_false
|
125
|
+
end
|
126
|
+
|
127
|
+
it "turns cane on" do
|
128
|
+
helper.process_options(["--cane"])[:cane].should be_true
|
129
|
+
end
|
112
130
|
|
113
|
-
it "turns flog on" do
|
114
|
-
helper.process_options(["--flog"])[:flog].should be_true
|
115
131
|
end
|
116
132
|
|
133
|
+
|
117
134
|
it "turns hotspots off" do
|
118
135
|
helper.process_options(["--no-hotspots"])[:hotspots].should be_false
|
119
136
|
end
|
@@ -146,13 +163,6 @@ describe MetricFu::Cli::Helper do
|
|
146
163
|
helper.process_options(["--roodi"])[:roodi].should be_true
|
147
164
|
end
|
148
165
|
|
149
|
-
it "turns cane off" do
|
150
|
-
helper.process_options(["--no-cane"])[:cane].should be_false
|
151
|
-
end
|
152
|
-
|
153
|
-
it "turns cane on" do
|
154
|
-
helper.process_options(["--cane"])[:cane].should be_true
|
155
|
-
end
|
156
166
|
end
|
157
167
|
|
158
168
|
end
|
@@ -101,12 +101,6 @@ describe MetricFu::Configuration do
|
|
101
101
|
should == {:dirs_to_flay => ['lib'], :filetypes=>["rb"], :minimum_score => 100}
|
102
102
|
end
|
103
103
|
|
104
|
-
it 'should set @flog to {:dirs_to_flog => @code_dirs}' do
|
105
|
-
load_metric 'flog'
|
106
|
-
@config.send(:flog).
|
107
|
-
should == {:dirs_to_flog => ['lib']}
|
108
|
-
end
|
109
|
-
|
110
104
|
it 'should set @reek to {:dirs_to_reek => @code_dirs}' do
|
111
105
|
load_metric 'reek'
|
112
106
|
@config.send(:reek).
|
@@ -126,18 +120,6 @@ describe MetricFu::Configuration do
|
|
126
120
|
should == { :start_date => %q("1 year ago"), :minimum_churn_count => 10}
|
127
121
|
end
|
128
122
|
|
129
|
-
it 'should set @cane to ' +
|
130
|
-
%q(:dirs_to_cane => @code_dirs, :abc_max => 15, :line_length => 80, :no_doc => 'n', :no_readme => 'y') do
|
131
|
-
load_metric 'cane'
|
132
|
-
@config.send(:cane).
|
133
|
-
should == {
|
134
|
-
:dirs_to_cane => MetricFu.code_dirs,
|
135
|
-
:filetypes => ["rb"],
|
136
|
-
:abc_max => 15,
|
137
|
-
:line_length => 80,
|
138
|
-
:no_doc => "n",
|
139
|
-
:no_readme => "n"}
|
140
|
-
end
|
141
123
|
|
142
124
|
it 'should set @rcov to ' +
|
143
125
|
%q(:test_files => Dir['{spec,test}/**/*_{spec,test}.rb'],
|
@@ -186,6 +168,27 @@ describe MetricFu::Configuration do
|
|
186
168
|
:formater => "text"}
|
187
169
|
end
|
188
170
|
|
171
|
+
if MetricFu.configuration.mri?
|
172
|
+
it 'should set @flog to {:dirs_to_flog => @code_dirs}' do
|
173
|
+
load_metric 'flog'
|
174
|
+
@config.send(:flog).
|
175
|
+
should == {:dirs_to_flog => ['lib']}
|
176
|
+
end
|
177
|
+
it 'should set @cane to ' +
|
178
|
+
%q(:dirs_to_cane => @code_dirs, :abc_max => 15, :line_length => 80, :no_doc => 'n', :no_readme => 'y') do
|
179
|
+
load_metric 'cane'
|
180
|
+
@config.send(:cane).
|
181
|
+
should == {
|
182
|
+
:dirs_to_cane => MetricFu.code_dirs,
|
183
|
+
:filetypes => ["rb"],
|
184
|
+
:abc_max => 15,
|
185
|
+
:line_length => 80,
|
186
|
+
:no_doc => "n",
|
187
|
+
:no_readme => "n"}
|
188
|
+
end
|
189
|
+
end
|
190
|
+
|
191
|
+
|
189
192
|
end
|
190
193
|
describe 'if #rails? is true ' do
|
191
194
|
|
@@ -240,7 +243,7 @@ describe MetricFu::Configuration do
|
|
240
243
|
end
|
241
244
|
|
242
245
|
it 'should set the available metrics' do
|
243
|
-
@config.metrics.should =~ [:churn, :flog, :flay, :reek, :roodi, :rcov, :hotspots, :saikuro, :cane]
|
246
|
+
@config.metrics.should =~ [:churn, :flog, :flay, :reek, :roodi, :rcov, :hotspots, :saikuro, :cane] - MetricFu.mri_only_metrics
|
244
247
|
end
|
245
248
|
|
246
249
|
it 'should set the @code_dirs instance var to ["lib"]' do
|
@@ -253,7 +256,10 @@ describe MetricFu::Configuration do
|
|
253
256
|
|
254
257
|
before(:each) { get_new_config }
|
255
258
|
|
256
|
-
|
259
|
+
(
|
260
|
+
[:churn, :flog, :flay, :reek, :roodi, :rcov, :hotspots, :saikuro] -
|
261
|
+
MetricFu.mri_only_metrics
|
262
|
+
).each do |metric|
|
257
263
|
it "should have a reader for #{metric}" do
|
258
264
|
expect {
|
259
265
|
@config.send(metric.to_sym)
|
@@ -272,13 +278,20 @@ describe MetricFu::Configuration do
|
|
272
278
|
|
273
279
|
before(:each) { get_new_config }
|
274
280
|
|
275
|
-
|
281
|
+
(
|
282
|
+
[:churn, :flog, :flay, :reek, :roodi, :rcov, :hotspots, :saikuro, :cane] -
|
283
|
+
MetricFu.mri_only_metrics
|
284
|
+
|
285
|
+
).each do |metric|
|
276
286
|
it "should add a #{metric} class method to the MetricFu module " do
|
277
287
|
MetricFu.should respond_to(metric)
|
278
288
|
end
|
279
289
|
end
|
280
290
|
|
281
|
-
|
291
|
+
(
|
292
|
+
[:churn, :flog, :flay, :reek, :roodi, :rcov, :hotspots, :saikuro, :cane] -
|
293
|
+
MetricFu.mri_only_metrics
|
294
|
+
).each do |graph|
|
282
295
|
it "should add a #{graph} class metrhod to the MetricFu module" do
|
283
296
|
MetricFu.should respond_to(graph)
|
284
297
|
end
|
@@ -94,21 +94,21 @@ describe MetricFu::Template do
|
|
94
94
|
end
|
95
95
|
|
96
96
|
it 'should return a textmate protocol link' do
|
97
|
-
|
97
|
+
@template.should_receive(:complete_file_path).with('filename').and_return('/expanded/filename')
|
98
98
|
result = @template.send(:link_to_filename, 'filename')
|
99
99
|
result.should eql("<a href='txmt://open/?url=file://" \
|
100
100
|
+ "/expanded/filename'>filename</a>")
|
101
101
|
end
|
102
102
|
|
103
103
|
it "should do the right thing with a filename that starts with a slash" do
|
104
|
-
|
104
|
+
@template.should_receive(:complete_file_path).with('/filename').and_return('/expanded/filename')
|
105
105
|
result = @template.send(:link_to_filename, '/filename')
|
106
106
|
result.should eql("<a href='txmt://open/?url=file://" \
|
107
107
|
+ "/expanded/filename'>/filename</a>")
|
108
108
|
end
|
109
109
|
|
110
110
|
it "should include a line number" do
|
111
|
-
|
111
|
+
@template.should_receive(:complete_file_path).with('filename').and_return('/expanded/filename')
|
112
112
|
result = @template.send(:link_to_filename, 'filename', 6)
|
113
113
|
result.should eql("<a href='txmt://open/?url=file://" \
|
114
114
|
+ "/expanded/filename&line=6'>filename:6</a>")
|
@@ -121,7 +121,7 @@ describe MetricFu::Template do
|
|
121
121
|
config.stub!(:darwin_txmt_protocol_no_thanks).and_return(true)
|
122
122
|
config.stub!(:link_prefix).and_return(nil)
|
123
123
|
MetricFu.stub!(:configuration).and_return(config)
|
124
|
-
|
124
|
+
@template.should_receive(:complete_file_path).and_return('filename')
|
125
125
|
end
|
126
126
|
|
127
127
|
it "should return a file protocol link" do
|
@@ -133,7 +133,7 @@ describe MetricFu::Template do
|
|
133
133
|
|
134
134
|
describe "and given link text" do
|
135
135
|
it "should use the submitted link text" do
|
136
|
-
|
136
|
+
@template.should_receive(:complete_file_path).with('filename').and_return('/expanded/filename')
|
137
137
|
result = @template.send(:link_to_filename, 'filename', 6, 'link content')
|
138
138
|
result.should eql("<a href='txmt://open/?url=file://" \
|
139
139
|
+ "/expanded/filename&line=6'>link content</a>")
|
@@ -148,7 +148,7 @@ describe MetricFu::Template do
|
|
148
148
|
config.stub!(:link_prefix).and_return(nil)
|
149
149
|
config.stub!(:darwin_txmt_protocol_no_thanks).and_return(false)
|
150
150
|
MetricFu.stub!(:configuration).and_return(config)
|
151
|
-
|
151
|
+
@template.should_receive(:complete_file_path).and_return('filename')
|
152
152
|
end
|
153
153
|
|
154
154
|
it 'should return a file protocol link' do
|
@@ -162,7 +162,7 @@ describe MetricFu::Template do
|
|
162
162
|
config = mock("configuration")
|
163
163
|
config.should_receive(:link_prefix).and_return('http://example.org/files')
|
164
164
|
MetricFu.stub!(:configuration).and_return(config)
|
165
|
-
|
165
|
+
@template.should_receive(:complete_file_path).and_return('filename')
|
166
166
|
end
|
167
167
|
|
168
168
|
it 'should return a http protocol link' do
|
@@ -33,11 +33,18 @@ describe Churn do
|
|
33
33
|
@changes = {"lib/generators/flog.rb" => 2, "lib/metric_fu.rb" => 3}
|
34
34
|
end
|
35
35
|
|
36
|
-
it "should be empty on error" do
|
36
|
+
it "should be empty on error text" do
|
37
37
|
churn = MetricFu::Churn.new
|
38
38
|
churn.instance_variable_set(:@output, "Churning requires a subversion or git repo")
|
39
39
|
result = churn.analyze
|
40
|
-
result.should ==
|
40
|
+
result.should == {:churn => {}}
|
41
|
+
end
|
42
|
+
|
43
|
+
it "should be empty on error no output captured" do
|
44
|
+
churn = MetricFu::Churn.new
|
45
|
+
churn.instance_variable_set(:@output, nil)
|
46
|
+
result = churn.analyze
|
47
|
+
result.should == {:churn => {}}
|
41
48
|
end
|
42
49
|
|
43
50
|
it "should return yaml results" do
|
@@ -1,70 +1,72 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
describe Flog do
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
if MetricFu.configuration.mri?
|
4
|
+
before :each do
|
5
|
+
MetricFu::Configuration.run {}
|
6
|
+
File.stub!(:directory?).and_return(true)
|
7
|
+
@flog = MetricFu::Flog.new('base_dir')
|
8
|
+
end
|
8
9
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
10
|
+
describe "emit method" do
|
11
|
+
it "should look for files and flog them" do
|
12
|
+
Dir.should_receive(:glob).with("lib/**/*.rb").and_return(["found/file.rb"])
|
13
|
+
::Flog.should_receive(:parse_options).with(["--all", "--details"]).and_return("options")
|
14
|
+
::Flog.should_receive(:new).with("options").and_return(flogger = mock('flogger'))
|
15
|
+
flogger.should_receive(:flog).with(["found/file.rb"])
|
16
|
+
@flog.emit
|
17
|
+
end
|
16
18
|
end
|
17
|
-
end
|
18
19
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
20
|
+
describe "analyze method" do
|
21
|
+
it "should harvest the flog information and put it into method_containers" do
|
22
|
+
first_full_method_name = "ClassName#first_method_name"
|
23
|
+
second_full_method_name = "ClassName#second_method_name"
|
23
24
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
25
|
+
flogger = mock('flogger', :calls => {first_full_method_name => {:branch => 11.1, :puts => 1.1},
|
26
|
+
second_full_method_name => {:branch => 22.2, :puts => 2.2}},
|
27
|
+
:method_locations => {first_full_method_name => '/file/location.rb:11',
|
28
|
+
second_full_method_name => '/file/location.rb:22'},
|
29
|
+
:totals => {first_full_method_name => 11.11,
|
30
|
+
second_full_method_name => 22.22})
|
31
|
+
@flog.instance_variable_set(:@flogger, flogger)
|
32
|
+
@flog.analyze
|
33
|
+
method_containers = @flog.instance_variable_get(:@method_containers)
|
34
|
+
method_containers.size.should == 1
|
34
35
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
36
|
+
expected={:methods=>{"ClassName#first_method_name" => { :path=>"/file/location.rb:11",
|
37
|
+
:score=>11.11,
|
38
|
+
:operators=>{ :branch=>11.1,
|
39
|
+
:puts=>1.1}},
|
40
|
+
"ClassName#second_method_name" => {:path=>"/file/location.rb:22",
|
41
|
+
:score=>22.22,
|
42
|
+
:operators=>{ :branch=>22.2,
|
43
|
+
:puts=>2.2}}},
|
44
|
+
:path=>"/file/location.rb",
|
45
|
+
:average_score=>((11.11 + 22.22) / 2.0),
|
46
|
+
:total_score=>33.33,
|
47
|
+
:highest_score=>22.22,
|
48
|
+
:name=>"ClassName"}
|
48
49
|
|
49
|
-
|
50
|
+
method_containers["ClassName"].to_h.should == expected
|
51
|
+
end
|
50
52
|
end
|
51
|
-
end
|
52
53
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
54
|
+
describe "to_h method" do
|
55
|
+
it "should make-a nice hash" do
|
56
|
+
flogger = mock('flogger', :total => 111.1, :average => 7.3)
|
57
|
+
@flog.instance_variable_set(:@flogger, flogger)
|
58
|
+
method_containers = {:ignore_me_1 => mock('container_1', :highest_score => 11.1, :to_h => 'container_1'),
|
59
|
+
:ignore_me_2 => mock('container_2', :highest_score => 33.3, :to_h => 'container_2'),
|
60
|
+
:ignore_me_3 => mock('container_3', :highest_score => 22.2, :to_h => 'container_3')}
|
61
|
+
@flog.instance_variable_set(:@method_containers, method_containers)
|
61
62
|
|
62
|
-
|
63
|
-
|
64
|
-
|
63
|
+
expected = {:flog => { :total => 111.1,
|
64
|
+
:average => 7.3,
|
65
|
+
:method_containers => ['container_2', 'container_3', 'container_1']}}
|
65
66
|
|
66
|
-
|
67
|
-
|
67
|
+
@flog.to_h.should == expected
|
68
|
+
end
|
68
69
|
|
70
|
+
end
|
69
71
|
end
|
70
72
|
end
|
data/spec/run_spec.rb
CHANGED
@@ -5,18 +5,10 @@ describe MetricFu, "running" do
|
|
5
5
|
|
6
6
|
let(:helper) { MetricFu::Cli::Helper.new }
|
7
7
|
|
8
|
-
before do
|
9
|
-
FileUtils.rm_rf("tmp/metric_fu")
|
10
|
-
end
|
11
|
-
|
12
8
|
it "all these tests should not rely on shelling out to the command line" do
|
13
9
|
pending("shelling to bundler is very slow")
|
14
10
|
end
|
15
11
|
|
16
|
-
xit "has a clean start" do
|
17
|
-
File.should_not exist("tmp/metric_fu")
|
18
|
-
end
|
19
|
-
|
20
12
|
xit "loads the .metrics file" do
|
21
13
|
out = metric_fu
|
22
14
|
out.should include "Metrics config loaded"
|