rake-dotnet 0.1.15 → 0.1.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/History.txt +22 -0
  2. data/Manifest.txt +39 -1
  3. data/Rakefile.rb +44 -14
  4. data/coverage/index.html +576 -0
  5. data/coverage/lib-assemblyinfo_rb.html +716 -0
  6. data/coverage/lib-bcpcmd_rb.html +704 -0
  7. data/coverage/lib-cli_rb.html +646 -0
  8. data/coverage/lib-fxcop_rb.html +723 -0
  9. data/coverage/lib-harvester_rb.html +741 -0
  10. data/coverage/lib-iisappcmd_rb.html +657 -0
  11. data/coverage/lib-msbuild_rb.html +713 -0
  12. data/coverage/lib-ncover_rb.html +773 -0
  13. data/coverage/lib-package_rb.html +691 -0
  14. data/coverage/lib-sevenzip_rb.html +665 -0
  15. data/coverage/lib-sqlcmd_rb.html +680 -0
  16. data/coverage/lib-svn_rb.html +671 -0
  17. data/coverage/lib-version_rb.html +651 -0
  18. data/coverage/lib-xunit_rb.html +727 -0
  19. data/doc/examples.html +482 -0
  20. data/lib/rake_dotnet.rb +826 -616
  21. data/lib/rake_dotnet/default_rakefile.rb +16 -0
  22. data/spec/assemblyinfotask_spec.rb +8 -0
  23. data/spec/bcpcmd_spec.rb +81 -0
  24. data/spec/cli_spec.rb +48 -0
  25. data/spec/constants_spec.rb +6 -0
  26. data/spec/fxcopcmd_spec.rb +8 -0
  27. data/spec/fxcoptask_spec.rb +7 -0
  28. data/spec/harvester_spec.rb +6 -0
  29. data/spec/harvestoutputtask_spec.rb +6 -0
  30. data/spec/harvestwebapplicationtask_spec.rb +6 -0
  31. data/spec/iisappcmd_spec.rb +15 -0
  32. data/spec/msbuildcmd_spec.rb +7 -0
  33. data/spec/msbuildtask_spec.rb +7 -0
  34. data/spec/ncoverconsolecmd_spec.rb +12 -0
  35. data/spec/ncoverreportingcmd_spec.rb +14 -0
  36. data/spec/ncovertask_spec.rb +24 -0
  37. data/spec/rdnpackagetask_spec.rb +6 -0
  38. data/spec/sevenzipcmd_spec.rb +7 -0
  39. data/spec/sqlcmd_spec.rb +52 -0
  40. data/spec/svncmd_spec.rb +45 -0
  41. data/spec/versioner_spec.rb +6 -0
  42. data/spec/xunitcmd_spec.rb +10 -0
  43. data/spec/xunittask_spec.rb +7 -0
  44. metadata +77 -9
  45. data/test/test_rake_dotnet.rb +0 -16
data/History.txt CHANGED
@@ -1,3 +1,25 @@
1
+ === 0.2.0 / 2009-10-12
2
+
3
+ BREAKING CHANGE: Moved all classes that were in the Rake module, into the RakeDotNet module. So, change your Rakefile from (eg)
4
+
5
+ `Rake::AssemblyInfoTask.new
6
+
7
+ to
8
+
9
+ `RakeDotNet:AssemblyInfoTask.new
10
+
11
+ BREAKING CHANGE: Renamed all command-line wrappers to end with Cmd indicating inheritance from Cmd base class which does path inference
12
+
13
+ CHANGE: Addition of unit-tests via spec
14
+ CHANGE: Added unit-test report to the gem
15
+ CHANGE: Added rcov reports to the gem
16
+ CHANGE: Made it the RDNPackageTask's responsibility to name directories and packages with the configuration & version information, if configured to. This means that intermediate-build-output is put into directories without this information in the naming.
17
+
18
+ NEW: sqlcmd.exe wrapper (SQL client tools' execute-sql-command from command-line)
19
+ NEW: bcp.exe wrapper (SQL client tools' bulk copy)
20
+ NEW: IIS7 appcmd.exe wrapper (control IIS7 from the command line)
21
+
22
+
1
23
  === 0.1.15 / 2009-09-23
2
24
 
3
25
  CHANGE: Xunit.NET - cope with v1.5 release which packages an x86 console runner as well as x64 one, in combination with wanting to run x86 one if it exists because of WatiN seeming to not be happy running under x64.
data/Manifest.txt CHANGED
@@ -3,5 +3,43 @@ Manifest.txt
3
3
  README.markdown
4
4
  README.txt
5
5
  Rakefile.rb
6
+ coverage/index.html
7
+ coverage/lib-assemblyinfo_rb.html
8
+ coverage/lib-bcpcmd_rb.html
9
+ coverage/lib-cli_rb.html
10
+ coverage/lib-fxcop_rb.html
11
+ coverage/lib-harvester_rb.html
12
+ coverage/lib-iisappcmd_rb.html
13
+ coverage/lib-msbuild_rb.html
14
+ coverage/lib-ncover_rb.html
15
+ coverage/lib-package_rb.html
16
+ coverage/lib-sevenzip_rb.html
17
+ coverage/lib-sqlcmd_rb.html
18
+ coverage/lib-svn_rb.html
19
+ coverage/lib-version_rb.html
20
+ coverage/lib-xunit_rb.html
21
+ doc/examples.html
6
22
  lib/rake_dotnet.rb
7
- test/test_rake_dotnet.rb
23
+ lib/rake_dotnet/default_rakefile.rb
24
+ spec/assemblyinfotask_spec.rb
25
+ spec/bcpcmd_spec.rb
26
+ spec/cli_spec.rb
27
+ spec/constants_spec.rb
28
+ spec/fxcopcmd_spec.rb
29
+ spec/fxcoptask_spec.rb
30
+ spec/harvester_spec.rb
31
+ spec/harvestoutputtask_spec.rb
32
+ spec/harvestwebapplicationtask_spec.rb
33
+ spec/iisappcmd_spec.rb
34
+ spec/msbuildcmd_spec.rb
35
+ spec/msbuildtask_spec.rb
36
+ spec/ncoverconsolecmd_spec.rb
37
+ spec/ncoverreportingcmd_spec.rb
38
+ spec/ncovertask_spec.rb
39
+ spec/rdnpackagetask_spec.rb
40
+ spec/sevenzipcmd_spec.rb
41
+ spec/sqlcmd_spec.rb
42
+ spec/svncmd_spec.rb
43
+ spec/versioner_spec.rb
44
+ spec/xunitcmd_spec.rb
45
+ spec/xunittask_spec.rb
data/Rakefile.rb CHANGED
@@ -5,29 +5,33 @@ require 'hoe'
5
5
  require 'Pathname'
6
6
  require 'rake/clean'
7
7
 
8
- Hoe.new('rake-dotnet', '0.1.15') do |p|
9
- p.author = 'Peter Mounce'
10
- p.description = 'Making a .NET build-automation dev\'s life easier, one angle-bracket at a time'
11
- p.email = 'pete@neverrunwithscissors.com'
12
- p.summary = 'Build automation for .NET builds'
13
- p.rubyforge_name = 'rake-dotnet' # if different than lowercase project name
14
- p.developer('Peter Mounce', 'pete@neverrunwithscissors.com')
15
- p.remote_rdoc_dir = ''
16
- p.extra_deps = ['rake']
17
- p.url = 'http://blog.neverrunwithscissors.com/tag/rake-dotnet'
8
+ Hoe.spec 'rake-dotnet' do |p|
9
+ p.version = '0.1.16'
10
+ p.author = 'Peter Mounce'
11
+ p.description = 'Making a .NET build-automation dev\'s life easier, one angle-bracket at a time'
12
+ p.email = 'public@neverrunwithscissors.com'
13
+ p.summary = 'Build automation for .NET builds'
14
+ p.rubyforge_name = 'rake-dotnet' # if different than lowercase project name
15
+ p.developer('Peter Mounce', 'public@neverrunwithscissors.com')
16
+ p.remote_rdoc_dir = ''
17
+ p.extra_deps << ['rake', '>= 0.8.3']
18
+ p.extra_deps << ['rspec', '>= 1.2.9']
19
+ p.extra_deps << ['rcov', '>= 0.8.1']
20
+ p.extra_deps << ['diff-lcs', '>= 1.1.2']
21
+ p.url = 'http://blog.neverrunwithscissors.com/tag/rake-dotnet'
18
22
  end
19
23
 
20
- generated_library = File.join('lib','rake_dotnet.rb')
24
+ generated_library = File.join('lib', 'rake_dotnet.rb')
21
25
  CLOBBER.include generated_library
22
26
  file generated_library do |f|
23
27
  text = ''
24
- files = ['header.rb','defaults.rb','assemblyinfo.rb','fxcop.rb','harvester.rb','msbuild.rb','ncover.rb','package.rb','sevenzip.rb','svn.rb','version.rb','xunit.rb']
28
+ files = ['header.rb', 'defaults.rb', 'cli.rb', 'bcpcmd.rb', 'sqlcmd.rb', 'assemblyinfo.rb', 'fxcop.rb', 'harvester.rb', 'msbuild.rb', 'ncover.rb', 'package.rb', 'sevenzip.rb', 'svn.rb', 'version.rb', 'xunit.rb', 'footer.rb']
25
29
  gl = File.open(generated_library, 'a')
26
30
  files.each do |file|
27
31
  text = File.read(File.join('lib', file))
28
32
  gl.puts text
29
- gl.puts
30
- gl.puts
33
+ gl.puts ''
34
+ gl.puts ''
31
35
  end
32
36
  gl.close unless gl.closed?
33
37
  end
@@ -43,4 +47,30 @@ task :uninstall_gem do
43
47
  sh "gem uninstall rake-dotnet"
44
48
  end
45
49
 
50
+ require 'spec/rake/spectask'
51
+
52
+ desc 'Run all examples and report'
53
+ Spec::Rake::SpecTask.new('examples_with_report') do |t|
54
+ t.spec_files = FileList['spec/**/*.rb']
55
+ t.spec_opts = ["--format", "html:doc/examples.html", "--diff"]
56
+ t.fail_on_error = false
57
+ end
58
+
59
+ desc "Run all specs with RCov"
60
+ Spec::Rake::SpecTask.new('examples_with_rcov') do |t|
61
+ t.spec_files = FileList['spec/**/*.rb']
62
+ t.rcov = true
63
+ t.rcov_opts = ['--exclude', 'spec']
64
+ end
46
65
  # vim: syntax=Ruby
66
+
67
+ task :spec => generated_library
68
+ file 'coverage/index.html' => [:examples_with_rcov]
69
+ file 'doc/examples.html' => [:examples_with_report]
70
+
71
+ task :package => [:spec, :examples_with_rcov, :examples_with_report]
72
+ task :release => [:examples_with_rcov, :examples_with_report]
73
+
74
+ task :foo => generated_library do
75
+ cp generated_library, File.join('..','..', 'onalytica', 'build', '3rdparty', 'rake')
76
+ end
@@ -0,0 +1,576 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'><head><title>C0 code coverage information</title>
3
+ <style type='text/css'>body { background-color: rgb(240, 240, 245); }</style>
4
+ <style type='text/css'>span.cross-ref-title {
5
+ font-size: 140%;
6
+ }
7
+ span.cross-ref a {
8
+ text-decoration: none;
9
+ }
10
+ span.cross-ref {
11
+ background-color:#f3f7fa;
12
+ border: 1px dashed #333;
13
+ margin: 1em;
14
+ padding: 0.5em;
15
+ overflow: hidden;
16
+ }
17
+ a.crossref-toggle {
18
+ text-decoration: none;
19
+ }
20
+ span.marked0 {
21
+ background-color: rgb(185, 210, 200);
22
+ display: block;
23
+ }
24
+ span.marked1 {
25
+ background-color: rgb(190, 215, 205);
26
+ display: block;
27
+ }
28
+ span.inferred0 {
29
+ background-color: rgb(175, 200, 200);
30
+ display: block;
31
+ }
32
+ span.inferred1 {
33
+ background-color: rgb(180, 205, 205);
34
+ display: block;
35
+ }
36
+ span.uncovered0 {
37
+ background-color: rgb(225, 110, 110);
38
+ display: block;
39
+ }
40
+ span.uncovered1 {
41
+ background-color: rgb(235, 120, 120);
42
+ display: block;
43
+ }
44
+ span.overview {
45
+ border-bottom: 8px solid black;
46
+ }
47
+ div.overview {
48
+ border-bottom: 8px solid black;
49
+ }
50
+ body {
51
+ font-family: verdana, arial, helvetica;
52
+ }
53
+ div.footer {
54
+ font-size: 68%;
55
+ margin-top: 1.5em;
56
+ }
57
+ h1, h2, h3, h4, h5, h6 {
58
+ margin-bottom: 0.5em;
59
+ }
60
+ h5 {
61
+ margin-top: 0.5em;
62
+ }
63
+ .hidden {
64
+ display: none;
65
+ }
66
+ div.separator {
67
+ height: 10px;
68
+ }
69
+ /* Commented out for better readability, esp. on IE */
70
+ /*
71
+ table tr td, table tr th {
72
+ font-size: 68%;
73
+ }
74
+ td.value table tr td {
75
+ font-size: 11px;
76
+ }
77
+ */
78
+ table.percent_graph {
79
+ height: 12px;
80
+ border: #808080 1px solid;
81
+ empty-cells: show;
82
+ }
83
+ table.percent_graph td.covered {
84
+ height: 10px;
85
+ background: #00f000;
86
+ }
87
+ table.percent_graph td.uncovered {
88
+ height: 10px;
89
+ background: #e00000;
90
+ }
91
+ table.percent_graph td.NA {
92
+ height: 10px;
93
+ background: #eaeaea;
94
+ }
95
+ table.report {
96
+ border-collapse: collapse;
97
+ width: 100%;
98
+ }
99
+ table.report td.heading {
100
+ background: #dcecff;
101
+ border: #d0d0d0 1px solid;
102
+ font-weight: bold;
103
+ text-align: center;
104
+ }
105
+ table.report td.heading:hover {
106
+ background: #c0ffc0;
107
+ }
108
+ table.report td.text {
109
+ border: #d0d0d0 1px solid;
110
+ }
111
+ table.report td.value,
112
+ table.report td.lines_total,
113
+ table.report td.lines_code {
114
+ text-align: right;
115
+ border: #d0d0d0 1px solid;
116
+ }
117
+ table.report tr.light {
118
+ background-color: rgb(240, 240, 245);
119
+ }
120
+ table.report tr.dark {
121
+ background-color: rgb(230, 230, 235);
122
+ }
123
+ </style>
124
+ <script type='text/javascript'>
125
+ // <![CDATA[
126
+ function toggleCode( id ) {
127
+ if ( document.getElementById )
128
+ elem = document.getElementById( id );
129
+ else if ( document.all )
130
+ elem = eval( "document.all." + id );
131
+ else
132
+ return false;
133
+
134
+ elemStyle = elem.style;
135
+
136
+ if ( elemStyle.display != "block" ) {
137
+ elemStyle.display = "block"
138
+ } else {
139
+ elemStyle.display = "none"
140
+ }
141
+
142
+ return true;
143
+ }
144
+
145
+ // Make cross-references hidden by default
146
+ document.writeln( "<style type=\"text/css\">span.cross-ref { display: none }</style>" )
147
+ // ]]>
148
+ </script>
149
+ </head>
150
+ <body><h3>C0 code coverage information</h3>
151
+ <p>Generated on Mon Nov 09 13:47:38 +0000 2009 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
152
+ </p>
153
+ <hr/>
154
+ <table class='report'><thead><tr><td class='heading'>Name</td>
155
+ <td class='heading'>Total lines</td>
156
+ <td class='heading'>Lines of code</td>
157
+ <td class='heading'>Total coverage</td>
158
+ <td class='heading'>Code coverage</td>
159
+ </tr>
160
+ </thead>
161
+ <tbody><tr class='light'><td>TOTAL</td>
162
+ <td class='lines_total'><tt>1218</tt>
163
+ </td>
164
+ <td class='lines_code'><tt>1005</tt>
165
+ </td>
166
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>38.4%</tt>
167
+ &nbsp;</td>
168
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='38'/>
169
+ <td class='uncovered' width='62'/>
170
+ </tr>
171
+ </table>
172
+ </td>
173
+ </tr>
174
+ </table>
175
+ </td>
176
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>32.2%</tt>
177
+ &nbsp;</td>
178
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='32'/>
179
+ <td class='uncovered' width='68'/>
180
+ </tr>
181
+ </table>
182
+ </td>
183
+ </tr>
184
+ </table>
185
+ </td>
186
+ </tr>
187
+ <tr class='dark'><td><a href='lib-assemblyinfo_rb.html'>lib/assemblyinfo.rb</a>
188
+ </td>
189
+ <td class='lines_total'><tt>106</tt>
190
+ </td>
191
+ <td class='lines_code'><tt>92</tt>
192
+ </td>
193
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>18.9%</tt>
194
+ &nbsp;</td>
195
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='19'/>
196
+ <td class='uncovered' width='81'/>
197
+ </tr>
198
+ </table>
199
+ </td>
200
+ </tr>
201
+ </table>
202
+ </td>
203
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>12.0%</tt>
204
+ &nbsp;</td>
205
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='12'/>
206
+ <td class='uncovered' width='88'/>
207
+ </tr>
208
+ </table>
209
+ </td>
210
+ </tr>
211
+ </table>
212
+ </td>
213
+ </tr>
214
+ <tr class='light'><td><a href='lib-bcpcmd_rb.html'>lib/bcpcmd.rb</a>
215
+ </td>
216
+ <td class='lines_total'><tt>94</tt>
217
+ </td>
218
+ <td class='lines_code'><tt>77</tt>
219
+ </td>
220
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>94.7%</tt>
221
+ &nbsp;</td>
222
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='95'/>
223
+ <td class='uncovered' width='5'/>
224
+ </tr>
225
+ </table>
226
+ </td>
227
+ </tr>
228
+ </table>
229
+ </td>
230
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>93.5%</tt>
231
+ &nbsp;</td>
232
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='94'/>
233
+ <td class='uncovered' width='6'/>
234
+ </tr>
235
+ </table>
236
+ </td>
237
+ </tr>
238
+ </table>
239
+ </td>
240
+ </tr>
241
+ <tr class='dark'><td><a href='lib-cli_rb.html'>lib/cli.rb</a>
242
+ </td>
243
+ <td class='lines_total'><tt>36</tt>
244
+ </td>
245
+ <td class='lines_code'><tt>28</tt>
246
+ </td>
247
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>91.7%</tt>
248
+ &nbsp;</td>
249
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='92'/>
250
+ <td class='uncovered' width='8'/>
251
+ </tr>
252
+ </table>
253
+ </td>
254
+ </tr>
255
+ </table>
256
+ </td>
257
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>89.3%</tt>
258
+ &nbsp;</td>
259
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='89'/>
260
+ <td class='uncovered' width='11'/>
261
+ </tr>
262
+ </table>
263
+ </td>
264
+ </tr>
265
+ </table>
266
+ </td>
267
+ </tr>
268
+ <tr class='light'><td><a href='lib-fxcop_rb.html'>lib/fxcop.rb</a>
269
+ </td>
270
+ <td class='lines_total'><tt>113</tt>
271
+ </td>
272
+ <td class='lines_code'><tt>92</tt>
273
+ </td>
274
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>24.8%</tt>
275
+ &nbsp;</td>
276
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='25'/>
277
+ <td class='uncovered' width='75'/>
278
+ </tr>
279
+ </table>
280
+ </td>
281
+ </tr>
282
+ </table>
283
+ </td>
284
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>17.4%</tt>
285
+ &nbsp;</td>
286
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='17'/>
287
+ <td class='uncovered' width='83'/>
288
+ </tr>
289
+ </table>
290
+ </td>
291
+ </tr>
292
+ </table>
293
+ </td>
294
+ </tr>
295
+ <tr class='dark'><td><a href='lib-harvester_rb.html'>lib/harvester.rb</a>
296
+ </td>
297
+ <td class='lines_total'><tt>131</tt>
298
+ </td>
299
+ <td class='lines_code'><tt>112</tt>
300
+ </td>
301
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>16.8%</tt>
302
+ &nbsp;</td>
303
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='17'/>
304
+ <td class='uncovered' width='83'/>
305
+ </tr>
306
+ </table>
307
+ </td>
308
+ </tr>
309
+ </table>
310
+ </td>
311
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>11.6%</tt>
312
+ &nbsp;</td>
313
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='12'/>
314
+ <td class='uncovered' width='88'/>
315
+ </tr>
316
+ </table>
317
+ </td>
318
+ </tr>
319
+ </table>
320
+ </td>
321
+ </tr>
322
+ <tr class='light'><td><a href='lib-iisappcmd_rb.html'>lib/iisappcmd.rb</a>
323
+ </td>
324
+ <td class='lines_total'><tt>47</tt>
325
+ </td>
326
+ <td class='lines_code'><tt>41</tt>
327
+ </td>
328
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>29.8%</tt>
329
+ &nbsp;</td>
330
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='30'/>
331
+ <td class='uncovered' width='70'/>
332
+ </tr>
333
+ </table>
334
+ </td>
335
+ </tr>
336
+ </table>
337
+ </td>
338
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>22.0%</tt>
339
+ &nbsp;</td>
340
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='22'/>
341
+ <td class='uncovered' width='78'/>
342
+ </tr>
343
+ </table>
344
+ </td>
345
+ </tr>
346
+ </table>
347
+ </td>
348
+ </tr>
349
+ <tr class='dark'><td><a href='lib-msbuild_rb.html'>lib/msbuild.rb</a>
350
+ </td>
351
+ <td class='lines_total'><tt>103</tt>
352
+ </td>
353
+ <td class='lines_code'><tt>82</tt>
354
+ </td>
355
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>27.2%</tt>
356
+ &nbsp;</td>
357
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='27'/>
358
+ <td class='uncovered' width='73'/>
359
+ </tr>
360
+ </table>
361
+ </td>
362
+ </tr>
363
+ </table>
364
+ </td>
365
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>19.5%</tt>
366
+ &nbsp;</td>
367
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='20'/>
368
+ <td class='uncovered' width='80'/>
369
+ </tr>
370
+ </table>
371
+ </td>
372
+ </tr>
373
+ </table>
374
+ </td>
375
+ </tr>
376
+ <tr class='light'><td><a href='lib-ncover_rb.html'>lib/ncover.rb</a>
377
+ </td>
378
+ <td class='lines_total'><tt>163</tt>
379
+ </td>
380
+ <td class='lines_code'><tt>131</tt>
381
+ </td>
382
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>24.5%</tt>
383
+ &nbsp;</td>
384
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='25'/>
385
+ <td class='uncovered' width='75'/>
386
+ </tr>
387
+ </table>
388
+ </td>
389
+ </tr>
390
+ </table>
391
+ </td>
392
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>16.8%</tt>
393
+ &nbsp;</td>
394
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='17'/>
395
+ <td class='uncovered' width='83'/>
396
+ </tr>
397
+ </table>
398
+ </td>
399
+ </tr>
400
+ </table>
401
+ </td>
402
+ </tr>
403
+ <tr class='dark'><td><a href='lib-package_rb.html'>lib/package.rb</a>
404
+ </td>
405
+ <td class='lines_total'><tt>81</tt>
406
+ </td>
407
+ <td class='lines_code'><tt>66</tt>
408
+ </td>
409
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>9.9%</tt>
410
+ &nbsp;</td>
411
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='10'/>
412
+ <td class='uncovered' width='90'/>
413
+ </tr>
414
+ </table>
415
+ </td>
416
+ </tr>
417
+ </table>
418
+ </td>
419
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>7.6%</tt>
420
+ &nbsp;</td>
421
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='8'/>
422
+ <td class='uncovered' width='92'/>
423
+ </tr>
424
+ </table>
425
+ </td>
426
+ </tr>
427
+ </table>
428
+ </td>
429
+ </tr>
430
+ <tr class='light'><td><a href='lib-sevenzip_rb.html'>lib/sevenzip.rb</a>
431
+ </td>
432
+ <td class='lines_total'><tt>55</tt>
433
+ </td>
434
+ <td class='lines_code'><tt>46</tt>
435
+ </td>
436
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>32.7%</tt>
437
+ &nbsp;</td>
438
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='33'/>
439
+ <td class='uncovered' width='67'/>
440
+ </tr>
441
+ </table>
442
+ </td>
443
+ </tr>
444
+ </table>
445
+ </td>
446
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>21.7%</tt>
447
+ &nbsp;</td>
448
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='22'/>
449
+ <td class='uncovered' width='78'/>
450
+ </tr>
451
+ </table>
452
+ </td>
453
+ </tr>
454
+ </table>
455
+ </td>
456
+ </tr>
457
+ <tr class='dark'><td><a href='lib-sqlcmd_rb.html'>lib/sqlcmd.rb</a>
458
+ </td>
459
+ <td class='lines_total'><tt>70</tt>
460
+ </td>
461
+ <td class='lines_code'><tt>58</tt>
462
+ </td>
463
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>94.3%</tt>
464
+ &nbsp;</td>
465
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='94'/>
466
+ <td class='uncovered' width='6'/>
467
+ </tr>
468
+ </table>
469
+ </td>
470
+ </tr>
471
+ </table>
472
+ </td>
473
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>93.1%</tt>
474
+ &nbsp;</td>
475
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='93'/>
476
+ <td class='uncovered' width='7'/>
477
+ </tr>
478
+ </table>
479
+ </td>
480
+ </tr>
481
+ </table>
482
+ </td>
483
+ </tr>
484
+ <tr class='light'><td><a href='lib-svn_rb.html'>lib/svn.rb</a>
485
+ </td>
486
+ <td class='lines_total'><tt>61</tt>
487
+ </td>
488
+ <td class='lines_code'><tt>51</tt>
489
+ </td>
490
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>86.9%</tt>
491
+ &nbsp;</td>
492
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='87'/>
493
+ <td class='uncovered' width='13'/>
494
+ </tr>
495
+ </table>
496
+ </td>
497
+ </tr>
498
+ </table>
499
+ </td>
500
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>84.3%</tt>
501
+ &nbsp;</td>
502
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='84'/>
503
+ <td class='uncovered' width='16'/>
504
+ </tr>
505
+ </table>
506
+ </td>
507
+ </tr>
508
+ </table>
509
+ </td>
510
+ </tr>
511
+ <tr class='dark'><td><a href='lib-version_rb.html'>lib/version.rb</a>
512
+ </td>
513
+ <td class='lines_total'><tt>41</tt>
514
+ </td>
515
+ <td class='lines_code'><tt>34</tt>
516
+ </td>
517
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>36.6%</tt>
518
+ &nbsp;</td>
519
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='37'/>
520
+ <td class='uncovered' width='63'/>
521
+ </tr>
522
+ </table>
523
+ </td>
524
+ </tr>
525
+ </table>
526
+ </td>
527
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>29.4%</tt>
528
+ &nbsp;</td>
529
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='29'/>
530
+ <td class='uncovered' width='71'/>
531
+ </tr>
532
+ </table>
533
+ </td>
534
+ </tr>
535
+ </table>
536
+ </td>
537
+ </tr>
538
+ <tr class='light'><td><a href='lib-xunit_rb.html'>lib/xunit.rb</a>
539
+ </td>
540
+ <td class='lines_total'><tt>117</tt>
541
+ </td>
542
+ <td class='lines_code'><tt>95</tt>
543
+ </td>
544
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>29.1%</tt>
545
+ &nbsp;</td>
546
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='29'/>
547
+ <td class='uncovered' width='71'/>
548
+ </tr>
549
+ </table>
550
+ </td>
551
+ </tr>
552
+ </table>
553
+ </td>
554
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>18.9%</tt>
555
+ &nbsp;</td>
556
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='19'/>
557
+ <td class='uncovered' width='81'/>
558
+ </tr>
559
+ </table>
560
+ </td>
561
+ </tr>
562
+ </table>
563
+ </td>
564
+ </tr>
565
+ </tbody>
566
+ </table>
567
+ <hr/>
568
+ <p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
569
+ version 0.8.1.2.</p>
570
+ <p><a href='http://validator.w3.org/check/referer'><img src='http://www.w3.org/Icons/valid-xhtml11' height='31' alt='Valid XHTML 1.1!' width='88'/>
571
+ </a>
572
+ <a href='http://jigsaw.w3.org/css-validator/check/referer'><img src='http://jigsaw.w3.org/css-validator/images/vcss' alt='Valid CSS!' style='border:0;width:88px;height:31px'/>
573
+ </a>
574
+ </p>
575
+ </body>
576
+ </html>