rake-dotnet 0.1.15 → 0.1.16
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/History.txt +22 -0
- data/Manifest.txt +39 -1
- data/Rakefile.rb +44 -14
- data/coverage/index.html +576 -0
- data/coverage/lib-assemblyinfo_rb.html +716 -0
- data/coverage/lib-bcpcmd_rb.html +704 -0
- data/coverage/lib-cli_rb.html +646 -0
- data/coverage/lib-fxcop_rb.html +723 -0
- data/coverage/lib-harvester_rb.html +741 -0
- data/coverage/lib-iisappcmd_rb.html +657 -0
- data/coverage/lib-msbuild_rb.html +713 -0
- data/coverage/lib-ncover_rb.html +773 -0
- data/coverage/lib-package_rb.html +691 -0
- data/coverage/lib-sevenzip_rb.html +665 -0
- data/coverage/lib-sqlcmd_rb.html +680 -0
- data/coverage/lib-svn_rb.html +671 -0
- data/coverage/lib-version_rb.html +651 -0
- data/coverage/lib-xunit_rb.html +727 -0
- data/doc/examples.html +482 -0
- data/lib/rake_dotnet.rb +826 -616
- data/lib/rake_dotnet/default_rakefile.rb +16 -0
- data/spec/assemblyinfotask_spec.rb +8 -0
- data/spec/bcpcmd_spec.rb +81 -0
- data/spec/cli_spec.rb +48 -0
- data/spec/constants_spec.rb +6 -0
- data/spec/fxcopcmd_spec.rb +8 -0
- data/spec/fxcoptask_spec.rb +7 -0
- data/spec/harvester_spec.rb +6 -0
- data/spec/harvestoutputtask_spec.rb +6 -0
- data/spec/harvestwebapplicationtask_spec.rb +6 -0
- data/spec/iisappcmd_spec.rb +15 -0
- data/spec/msbuildcmd_spec.rb +7 -0
- data/spec/msbuildtask_spec.rb +7 -0
- data/spec/ncoverconsolecmd_spec.rb +12 -0
- data/spec/ncoverreportingcmd_spec.rb +14 -0
- data/spec/ncovertask_spec.rb +24 -0
- data/spec/rdnpackagetask_spec.rb +6 -0
- data/spec/sevenzipcmd_spec.rb +7 -0
- data/spec/sqlcmd_spec.rb +52 -0
- data/spec/svncmd_spec.rb +45 -0
- data/spec/versioner_spec.rb +6 -0
- data/spec/xunitcmd_spec.rb +10 -0
- data/spec/xunittask_spec.rb +7 -0
- metadata +77 -9
- data/test/test_rake_dotnet.rb +0 -16
@@ -0,0 +1,773 @@
|
|
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>lib/ncover.rb - 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
|
+
<style type='text/css'>span.run0 {
|
150
|
+
background-color: rgb(178, 204, 255);
|
151
|
+
display: block;
|
152
|
+
}
|
153
|
+
span.run1 {
|
154
|
+
background-color: rgb(178, 206, 255);
|
155
|
+
display: block;
|
156
|
+
}
|
157
|
+
span.run2 {
|
158
|
+
background-color: rgb(178, 209, 255);
|
159
|
+
display: block;
|
160
|
+
}
|
161
|
+
span.run3 {
|
162
|
+
background-color: rgb(178, 211, 255);
|
163
|
+
display: block;
|
164
|
+
}
|
165
|
+
span.run4 {
|
166
|
+
background-color: rgb(178, 214, 255);
|
167
|
+
display: block;
|
168
|
+
}
|
169
|
+
span.run5 {
|
170
|
+
background-color: rgb(178, 218, 255);
|
171
|
+
display: block;
|
172
|
+
}
|
173
|
+
span.run6 {
|
174
|
+
background-color: rgb(178, 220, 255);
|
175
|
+
display: block;
|
176
|
+
}
|
177
|
+
span.run7 {
|
178
|
+
background-color: rgb(178, 223, 255);
|
179
|
+
display: block;
|
180
|
+
}
|
181
|
+
span.run8 {
|
182
|
+
background-color: rgb(178, 225, 255);
|
183
|
+
display: block;
|
184
|
+
}
|
185
|
+
span.run9 {
|
186
|
+
background-color: rgb(178, 228, 255);
|
187
|
+
display: block;
|
188
|
+
}
|
189
|
+
span.run10 {
|
190
|
+
background-color: rgb(178, 232, 255);
|
191
|
+
display: block;
|
192
|
+
}
|
193
|
+
span.run11 {
|
194
|
+
background-color: rgb(178, 234, 255);
|
195
|
+
display: block;
|
196
|
+
}
|
197
|
+
span.run12 {
|
198
|
+
background-color: rgb(178, 237, 255);
|
199
|
+
display: block;
|
200
|
+
}
|
201
|
+
span.run13 {
|
202
|
+
background-color: rgb(178, 239, 255);
|
203
|
+
display: block;
|
204
|
+
}
|
205
|
+
span.run14 {
|
206
|
+
background-color: rgb(178, 242, 255);
|
207
|
+
display: block;
|
208
|
+
}
|
209
|
+
span.run15 {
|
210
|
+
background-color: rgb(178, 246, 255);
|
211
|
+
display: block;
|
212
|
+
}
|
213
|
+
span.run16 {
|
214
|
+
background-color: rgb(178, 248, 255);
|
215
|
+
display: block;
|
216
|
+
}
|
217
|
+
span.run17 {
|
218
|
+
background-color: rgb(178, 251, 255);
|
219
|
+
display: block;
|
220
|
+
}
|
221
|
+
span.run18 {
|
222
|
+
background-color: rgb(178, 253, 255);
|
223
|
+
display: block;
|
224
|
+
}
|
225
|
+
span.run19 {
|
226
|
+
background-color: rgb(178, 255, 253);
|
227
|
+
display: block;
|
228
|
+
}
|
229
|
+
span.run20 {
|
230
|
+
background-color: rgb(178, 255, 249);
|
231
|
+
display: block;
|
232
|
+
}
|
233
|
+
span.run21 {
|
234
|
+
background-color: rgb(178, 255, 247);
|
235
|
+
display: block;
|
236
|
+
}
|
237
|
+
span.run22 {
|
238
|
+
background-color: rgb(178, 255, 244);
|
239
|
+
display: block;
|
240
|
+
}
|
241
|
+
span.run23 {
|
242
|
+
background-color: rgb(178, 255, 242);
|
243
|
+
display: block;
|
244
|
+
}
|
245
|
+
span.run24 {
|
246
|
+
background-color: rgb(178, 255, 239);
|
247
|
+
display: block;
|
248
|
+
}
|
249
|
+
span.run25 {
|
250
|
+
background-color: rgb(178, 255, 235);
|
251
|
+
display: block;
|
252
|
+
}
|
253
|
+
span.run26 {
|
254
|
+
background-color: rgb(178, 255, 233);
|
255
|
+
display: block;
|
256
|
+
}
|
257
|
+
span.run27 {
|
258
|
+
background-color: rgb(178, 255, 230);
|
259
|
+
display: block;
|
260
|
+
}
|
261
|
+
span.run28 {
|
262
|
+
background-color: rgb(178, 255, 228);
|
263
|
+
display: block;
|
264
|
+
}
|
265
|
+
span.run29 {
|
266
|
+
background-color: rgb(178, 255, 225);
|
267
|
+
display: block;
|
268
|
+
}
|
269
|
+
span.run30 {
|
270
|
+
background-color: rgb(178, 255, 221);
|
271
|
+
display: block;
|
272
|
+
}
|
273
|
+
span.run31 {
|
274
|
+
background-color: rgb(178, 255, 219);
|
275
|
+
display: block;
|
276
|
+
}
|
277
|
+
span.run32 {
|
278
|
+
background-color: rgb(178, 255, 216);
|
279
|
+
display: block;
|
280
|
+
}
|
281
|
+
span.run33 {
|
282
|
+
background-color: rgb(178, 255, 214);
|
283
|
+
display: block;
|
284
|
+
}
|
285
|
+
span.run34 {
|
286
|
+
background-color: rgb(178, 255, 211);
|
287
|
+
display: block;
|
288
|
+
}
|
289
|
+
span.run35 {
|
290
|
+
background-color: rgb(178, 255, 207);
|
291
|
+
display: block;
|
292
|
+
}
|
293
|
+
span.run36 {
|
294
|
+
background-color: rgb(178, 255, 205);
|
295
|
+
display: block;
|
296
|
+
}
|
297
|
+
span.run37 {
|
298
|
+
background-color: rgb(178, 255, 202);
|
299
|
+
display: block;
|
300
|
+
}
|
301
|
+
span.run38 {
|
302
|
+
background-color: rgb(178, 255, 200);
|
303
|
+
display: block;
|
304
|
+
}
|
305
|
+
span.run39 {
|
306
|
+
background-color: rgb(178, 255, 197);
|
307
|
+
display: block;
|
308
|
+
}
|
309
|
+
span.run40 {
|
310
|
+
background-color: rgb(178, 255, 193);
|
311
|
+
display: block;
|
312
|
+
}
|
313
|
+
span.run41 {
|
314
|
+
background-color: rgb(178, 255, 191);
|
315
|
+
display: block;
|
316
|
+
}
|
317
|
+
span.run42 {
|
318
|
+
background-color: rgb(178, 255, 188);
|
319
|
+
display: block;
|
320
|
+
}
|
321
|
+
span.run43 {
|
322
|
+
background-color: rgb(178, 255, 186);
|
323
|
+
display: block;
|
324
|
+
}
|
325
|
+
span.run44 {
|
326
|
+
background-color: rgb(178, 255, 183);
|
327
|
+
display: block;
|
328
|
+
}
|
329
|
+
span.run45 {
|
330
|
+
background-color: rgb(178, 255, 179);
|
331
|
+
display: block;
|
332
|
+
}
|
333
|
+
span.run46 {
|
334
|
+
background-color: rgb(179, 255, 178);
|
335
|
+
display: block;
|
336
|
+
}
|
337
|
+
span.run47 {
|
338
|
+
background-color: rgb(182, 255, 178);
|
339
|
+
display: block;
|
340
|
+
}
|
341
|
+
span.run48 {
|
342
|
+
background-color: rgb(184, 255, 178);
|
343
|
+
display: block;
|
344
|
+
}
|
345
|
+
span.run49 {
|
346
|
+
background-color: rgb(187, 255, 178);
|
347
|
+
display: block;
|
348
|
+
}
|
349
|
+
span.run50 {
|
350
|
+
background-color: rgb(191, 255, 178);
|
351
|
+
display: block;
|
352
|
+
}
|
353
|
+
span.run51 {
|
354
|
+
background-color: rgb(193, 255, 178);
|
355
|
+
display: block;
|
356
|
+
}
|
357
|
+
span.run52 {
|
358
|
+
background-color: rgb(196, 255, 178);
|
359
|
+
display: block;
|
360
|
+
}
|
361
|
+
span.run53 {
|
362
|
+
background-color: rgb(198, 255, 178);
|
363
|
+
display: block;
|
364
|
+
}
|
365
|
+
span.run54 {
|
366
|
+
background-color: rgb(201, 255, 178);
|
367
|
+
display: block;
|
368
|
+
}
|
369
|
+
span.run55 {
|
370
|
+
background-color: rgb(205, 255, 178);
|
371
|
+
display: block;
|
372
|
+
}
|
373
|
+
span.run56 {
|
374
|
+
background-color: rgb(207, 255, 178);
|
375
|
+
display: block;
|
376
|
+
}
|
377
|
+
span.run57 {
|
378
|
+
background-color: rgb(210, 255, 178);
|
379
|
+
display: block;
|
380
|
+
}
|
381
|
+
span.run58 {
|
382
|
+
background-color: rgb(212, 255, 178);
|
383
|
+
display: block;
|
384
|
+
}
|
385
|
+
span.run59 {
|
386
|
+
background-color: rgb(215, 255, 178);
|
387
|
+
display: block;
|
388
|
+
}
|
389
|
+
span.run60 {
|
390
|
+
background-color: rgb(219, 255, 178);
|
391
|
+
display: block;
|
392
|
+
}
|
393
|
+
span.run61 {
|
394
|
+
background-color: rgb(221, 255, 178);
|
395
|
+
display: block;
|
396
|
+
}
|
397
|
+
span.run62 {
|
398
|
+
background-color: rgb(224, 255, 178);
|
399
|
+
display: block;
|
400
|
+
}
|
401
|
+
span.run63 {
|
402
|
+
background-color: rgb(226, 255, 178);
|
403
|
+
display: block;
|
404
|
+
}
|
405
|
+
span.run64 {
|
406
|
+
background-color: rgb(229, 255, 178);
|
407
|
+
display: block;
|
408
|
+
}
|
409
|
+
span.run65 {
|
410
|
+
background-color: rgb(233, 255, 178);
|
411
|
+
display: block;
|
412
|
+
}
|
413
|
+
span.run66 {
|
414
|
+
background-color: rgb(235, 255, 178);
|
415
|
+
display: block;
|
416
|
+
}
|
417
|
+
span.run67 {
|
418
|
+
background-color: rgb(238, 255, 178);
|
419
|
+
display: block;
|
420
|
+
}
|
421
|
+
span.run68 {
|
422
|
+
background-color: rgb(240, 255, 178);
|
423
|
+
display: block;
|
424
|
+
}
|
425
|
+
span.run69 {
|
426
|
+
background-color: rgb(243, 255, 178);
|
427
|
+
display: block;
|
428
|
+
}
|
429
|
+
span.run70 {
|
430
|
+
background-color: rgb(247, 255, 178);
|
431
|
+
display: block;
|
432
|
+
}
|
433
|
+
span.run71 {
|
434
|
+
background-color: rgb(249, 255, 178);
|
435
|
+
display: block;
|
436
|
+
}
|
437
|
+
span.run72 {
|
438
|
+
background-color: rgb(252, 255, 178);
|
439
|
+
display: block;
|
440
|
+
}
|
441
|
+
span.run73 {
|
442
|
+
background-color: rgb(255, 255, 178);
|
443
|
+
display: block;
|
444
|
+
}
|
445
|
+
span.run74 {
|
446
|
+
background-color: rgb(255, 252, 178);
|
447
|
+
display: block;
|
448
|
+
}
|
449
|
+
span.run75 {
|
450
|
+
background-color: rgb(255, 248, 178);
|
451
|
+
display: block;
|
452
|
+
}
|
453
|
+
span.run76 {
|
454
|
+
background-color: rgb(255, 246, 178);
|
455
|
+
display: block;
|
456
|
+
}
|
457
|
+
span.run77 {
|
458
|
+
background-color: rgb(255, 243, 178);
|
459
|
+
display: block;
|
460
|
+
}
|
461
|
+
span.run78 {
|
462
|
+
background-color: rgb(255, 240, 178);
|
463
|
+
display: block;
|
464
|
+
}
|
465
|
+
span.run79 {
|
466
|
+
background-color: rgb(255, 238, 178);
|
467
|
+
display: block;
|
468
|
+
}
|
469
|
+
span.run80 {
|
470
|
+
background-color: rgb(255, 234, 178);
|
471
|
+
display: block;
|
472
|
+
}
|
473
|
+
span.run81 {
|
474
|
+
background-color: rgb(255, 232, 178);
|
475
|
+
display: block;
|
476
|
+
}
|
477
|
+
span.run82 {
|
478
|
+
background-color: rgb(255, 229, 178);
|
479
|
+
display: block;
|
480
|
+
}
|
481
|
+
span.run83 {
|
482
|
+
background-color: rgb(255, 226, 178);
|
483
|
+
display: block;
|
484
|
+
}
|
485
|
+
span.run84 {
|
486
|
+
background-color: rgb(255, 224, 178);
|
487
|
+
display: block;
|
488
|
+
}
|
489
|
+
span.run85 {
|
490
|
+
background-color: rgb(255, 220, 178);
|
491
|
+
display: block;
|
492
|
+
}
|
493
|
+
span.run86 {
|
494
|
+
background-color: rgb(255, 218, 178);
|
495
|
+
display: block;
|
496
|
+
}
|
497
|
+
span.run87 {
|
498
|
+
background-color: rgb(255, 215, 178);
|
499
|
+
display: block;
|
500
|
+
}
|
501
|
+
span.run88 {
|
502
|
+
background-color: rgb(255, 212, 178);
|
503
|
+
display: block;
|
504
|
+
}
|
505
|
+
span.run89 {
|
506
|
+
background-color: rgb(255, 210, 178);
|
507
|
+
display: block;
|
508
|
+
}
|
509
|
+
span.run90 {
|
510
|
+
background-color: rgb(255, 206, 178);
|
511
|
+
display: block;
|
512
|
+
}
|
513
|
+
span.run91 {
|
514
|
+
background-color: rgb(255, 204, 178);
|
515
|
+
display: block;
|
516
|
+
}
|
517
|
+
span.run92 {
|
518
|
+
background-color: rgb(255, 201, 178);
|
519
|
+
display: block;
|
520
|
+
}
|
521
|
+
span.run93 {
|
522
|
+
background-color: rgb(255, 198, 178);
|
523
|
+
display: block;
|
524
|
+
}
|
525
|
+
span.run94 {
|
526
|
+
background-color: rgb(255, 196, 178);
|
527
|
+
display: block;
|
528
|
+
}
|
529
|
+
span.run95 {
|
530
|
+
background-color: rgb(255, 192, 178);
|
531
|
+
display: block;
|
532
|
+
}
|
533
|
+
span.run96 {
|
534
|
+
background-color: rgb(255, 189, 178);
|
535
|
+
display: block;
|
536
|
+
}
|
537
|
+
span.run97 {
|
538
|
+
background-color: rgb(255, 187, 178);
|
539
|
+
display: block;
|
540
|
+
}
|
541
|
+
span.run98 {
|
542
|
+
background-color: rgb(255, 184, 178);
|
543
|
+
display: block;
|
544
|
+
}
|
545
|
+
span.run99 {
|
546
|
+
background-color: rgb(255, 182, 178);
|
547
|
+
display: block;
|
548
|
+
}
|
549
|
+
span.run100 {
|
550
|
+
background-color: rgb(255, 178, 178);
|
551
|
+
display: block;
|
552
|
+
}
|
553
|
+
</style>
|
554
|
+
</head>
|
555
|
+
<body><h3>C0 code coverage information</h3>
|
556
|
+
<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>
|
557
|
+
</p>
|
558
|
+
<hr/>
|
559
|
+
<pre><span class='marked0'>Code reported as executed by Ruby looks like this...
|
560
|
+
</span><span class='marked1'>and this: this line is also marked as covered.
|
561
|
+
</span><span class='inferred0'>Lines considered as run by rcov, but not reported by Ruby, look like this,
|
562
|
+
</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).
|
563
|
+
</span><span class='uncovered0'>Finally, here's a line marked as not executed.
|
564
|
+
</span></pre>
|
565
|
+
<table class='report'><thead><tr><td class='heading'>Name</td>
|
566
|
+
<td class='heading'>Total lines</td>
|
567
|
+
<td class='heading'>Lines of code</td>
|
568
|
+
<td class='heading'>Total coverage</td>
|
569
|
+
<td class='heading'>Code coverage</td>
|
570
|
+
</tr>
|
571
|
+
</thead>
|
572
|
+
<tbody><tr class='light'><td><a href='lib-ncover_rb.html'>lib/ncover.rb</a>
|
573
|
+
</td>
|
574
|
+
<td class='lines_total'><tt>163</tt>
|
575
|
+
</td>
|
576
|
+
<td class='lines_code'><tt>131</tt>
|
577
|
+
</td>
|
578
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>24.5%</tt>
|
579
|
+
</td>
|
580
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='25'/>
|
581
|
+
<td class='uncovered' width='75'/>
|
582
|
+
</tr>
|
583
|
+
</table>
|
584
|
+
</td>
|
585
|
+
</tr>
|
586
|
+
</table>
|
587
|
+
</td>
|
588
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>16.8%</tt>
|
589
|
+
</td>
|
590
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='17'/>
|
591
|
+
<td class='uncovered' width='83'/>
|
592
|
+
</tr>
|
593
|
+
</table>
|
594
|
+
</td>
|
595
|
+
</tr>
|
596
|
+
</table>
|
597
|
+
</td>
|
598
|
+
</tr>
|
599
|
+
</tbody>
|
600
|
+
</table>
|
601
|
+
<pre><span class="marked1"><a name="line1"></a> 1 class NCoverTask < Rake::TaskLib
|
602
|
+
</span><span class="marked0"><a name="line2"></a> 2 attr_accessor :profile_options, :reporting_options
|
603
|
+
</span><span class="inferred1"><a name="line3"></a> 3
|
604
|
+
</span><span class="marked0"><a name="line4"></a> 4 def initialize(params={})
|
605
|
+
</span><span class="uncovered1"><a name="line5"></a> 5 @product_name = params[:product_name] || PRODUCT_NAME
|
606
|
+
</span><span class="uncovered0"><a name="line6"></a> 6 @bin_dir = params[:bin_dir] || File.join(OUT_DIR, 'bin')
|
607
|
+
</span><span class="uncovered1"><a name="line7"></a> 7 @report_dir = params[:report_dir] || File.join(OUT_DIR, 'reports', 'ncover')
|
608
|
+
</span><span class="uncovered0"><a name="line8"></a> 8 @deps = params[:deps] || []
|
609
|
+
</span><span class="uncovered1"><a name="line9"></a> 9 tool_defaults = {:arch => ENV['PROCESSOR_ARCHITECTURE']}
|
610
|
+
</span><span class="uncovered0"><a name="line10"></a> 10 @profile_options = tool_defaults.merge(params[:profile_options] || {})
|
611
|
+
</span><span class="uncovered1"><a name="line11"></a> 11 @reporting_options = tool_defaults.merge(params[:reporting_options] || {})
|
612
|
+
</span><span class="uncovered0"><a name="line12"></a> 12
|
613
|
+
</span><span class="uncovered1"><a name="line13"></a> 13 yield self if block_given?
|
614
|
+
</span><span class="uncovered0"><a name="line14"></a> 14 define
|
615
|
+
</span><span class="uncovered1"><a name="line15"></a> 15 end
|
616
|
+
</span><span class="inferred0"><a name="line16"></a> 16
|
617
|
+
</span><span class="marked1"><a name="line17"></a> 17 def define
|
618
|
+
</span><span class="uncovered0"><a name="line18"></a> 18 @deps.each do |d|
|
619
|
+
</span><span class="uncovered1"><a name="line19"></a> 19 task :ncover_profile => d
|
620
|
+
</span><span class="uncovered0"><a name="line20"></a> 20 end
|
621
|
+
</span><span class="uncovered1"><a name="line21"></a> 21
|
622
|
+
</span><span class="uncovered0"><a name="line22"></a> 22 directory @report_dir
|
623
|
+
</span><span class="uncovered1"><a name="line23"></a> 23
|
624
|
+
</span><span class="uncovered0"><a name="line24"></a> 24 reports_dir_regex = RakeDotNet::regexify(@report_dir)
|
625
|
+
</span><span class="uncovered1"><a name="line25"></a> 25 rule(/#{reports_dir_regex}\/.*\.coverage\.xml/) do |r|
|
626
|
+
</span><span class="uncovered0"><a name="line26"></a> 26 dll_to_execute = r.name.sub(/#{@report_dir}\/(.*)\.coverage\.xml/, "#{@bin_dir}/\\1.dll")
|
627
|
+
</span><span class="uncovered1"><a name="line27"></a> 27 nc = NCoverConsoleCmd.new(@report_dir, dll_to_execute, @profile_options)
|
628
|
+
</span><span class="uncovered0"><a name="line28"></a> 28 nc.run
|
629
|
+
</span><span class="uncovered1"><a name="line29"></a> 29 end
|
630
|
+
</span><span class="uncovered0"><a name="line30"></a> 30
|
631
|
+
</span><span class="uncovered1"><a name="line31"></a> 31 desc "Generate ncover coverage XML, one file per test-suite that exercises your product"
|
632
|
+
</span><span class="uncovered0"><a name="line32"></a> 32 task :ncover_profile, [:dlls_to_run] => [@report_dir] do |t, args|
|
633
|
+
</span><span class="uncovered1"><a name="line33"></a> 33 dlls_to_run_list = FileList.new
|
634
|
+
</span><span class="uncovered0"><a name="line34"></a> 34 dlls_to_run_list.include("#{@bin_dir}/**/*#{@product_name}*Tests*.dll")
|
635
|
+
</span><span class="uncovered1"><a name="line35"></a> 35 dlls_to_run_list.include("#{@bin_dir}/**/*#{@product_name}*Tests*.exe")
|
636
|
+
</span><span class="uncovered0"><a name="line36"></a> 36 args.with_defaults(:dlls_to_run => dlls_to_run_list)
|
637
|
+
</span><span class="uncovered1"><a name="line37"></a> 37 args.dlls_to_run.each do |d|
|
638
|
+
</span><span class="uncovered0"><a name="line38"></a> 38 dll_to_run = Pathname.new(d)
|
639
|
+
</span><span class="uncovered1"><a name="line39"></a> 39 cf_name = dll_to_run.basename.sub(dll_to_run.extname, '.coverage.xml')
|
640
|
+
</span><span class="uncovered0"><a name="line40"></a> 40 coverage_file = File.join(@report_dir, cf_name)
|
641
|
+
</span><span class="uncovered1"><a name="line41"></a> 41 Rake::FileTask[coverage_file].invoke
|
642
|
+
</span><span class="uncovered0"><a name="line42"></a> 42 end
|
643
|
+
</span><span class="uncovered1"><a name="line43"></a> 43
|
644
|
+
</span><span class="uncovered0"><a name="line44"></a> 44 end
|
645
|
+
</span><span class="uncovered1"><a name="line45"></a> 45
|
646
|
+
</span><span class="uncovered0"><a name="line46"></a> 46 desc "Generate ncover coverage report(s), on all coverage files, merged together"
|
647
|
+
</span><span class="uncovered1"><a name="line47"></a> 47 task :ncover_reports => [:ncover_profile] do
|
648
|
+
</span><span class="uncovered0"><a name="line48"></a> 48 # ncover lets us use *.coverage.xml to merge together files
|
649
|
+
</span><span class="uncovered1"><a name="line49"></a> 49 include = [File.join(@report_dir, '*.coverage.xml')]
|
650
|
+
</span><span class="uncovered0"><a name="line50"></a> 50 @reporting_options[:name] = 'merged'
|
651
|
+
</span><span class="uncovered1"><a name="line51"></a> 51 ncr = NCoverReportingCmd.new(@report_dir, include, @reporting_options)
|
652
|
+
</span><span class="uncovered0"><a name="line52"></a> 52 ncr.run
|
653
|
+
</span><span class="uncovered1"><a name="line53"></a> 53 end
|
654
|
+
</span><span class="uncovered0"><a name="line54"></a> 54
|
655
|
+
</span><span class="uncovered1"><a name="line55"></a> 55 task :clobber_ncover do
|
656
|
+
</span><span class="uncovered0"><a name="line56"></a> 56 rm_rf @report_dir
|
657
|
+
</span><span class="uncovered1"><a name="line57"></a> 57 end
|
658
|
+
</span><span class="uncovered0"><a name="line58"></a> 58
|
659
|
+
</span><span class="uncovered1"><a name="line59"></a> 59 self
|
660
|
+
</span><span class="uncovered0"><a name="line60"></a> 60 end
|
661
|
+
</span><span class="uncovered1"><a name="line61"></a> 61 end
|
662
|
+
</span><span class="inferred0"><a name="line62"></a> 62
|
663
|
+
</span><span class="marked1"><a name="line63"></a> 63 class NCoverConsoleCmd
|
664
|
+
</span><span class="marked0"><a name="line64"></a> 64 def initialize(report_dir, dll_to_execute, params)
|
665
|
+
</span><span class="uncovered1"><a name="line65"></a> 65 params ||= {}
|
666
|
+
</span><span class="uncovered0"><a name="line66"></a> 66 arch = params[:arch] || ENV['PROCESSOR_ARCHITECTURE']
|
667
|
+
</span><span class="uncovered1"><a name="line67"></a> 67 @exe = params[:ncover_exe] || File.join(TOOLS_DIR, 'ncover', arch, 'ncover.console.exe')
|
668
|
+
</span><span class="uncovered0"><a name="line68"></a> 68 @dll_to_execute = dll_to_execute
|
669
|
+
</span><span class="uncovered1"><a name="line69"></a> 69 ofname = File.split(dll_to_execute)[1].sub(/(\.dll)/, '') + '.coverage.xml'
|
670
|
+
</span><span class="uncovered0"><a name="line70"></a> 70 @output_file = File.join(report_dir, ofname)
|
671
|
+
</span><span class="uncovered1"><a name="line71"></a> 71 @exclude_assemblies_regex = params[:exclude_assemblies_regex] || ['.*Tests.*']
|
672
|
+
</span><span class="uncovered0"><a name="line72"></a> 72 @exclude_assemblies_regex.push('ISymWrapper')
|
673
|
+
</span><span class="uncovered1"><a name="line73"></a> 73 @working_dir = params[:working_dir] || Pathname.new(@dll_to_execute).dirname
|
674
|
+
</span><span class="uncovered0"><a name="line74"></a> 74 end
|
675
|
+
</span><span class="inferred1"><a name="line75"></a> 75
|
676
|
+
</span><span class="marked0"><a name="line76"></a> 76 def cmdToRun
|
677
|
+
</span><span class="uncovered1"><a name="line77"></a> 77 x = XUnitConsoleCmd.new(@dll_to_execute, '', nil, {})
|
678
|
+
</span><span class="uncovered0"><a name="line78"></a> 78 x.cmd
|
679
|
+
</span><span class="uncovered1"><a name="line79"></a> 79 end
|
680
|
+
</span><span class="inferred0"><a name="line80"></a> 80
|
681
|
+
</span><span class="marked1"><a name="line81"></a> 81 def bi
|
682
|
+
</span><span class="uncovered0"><a name="line82"></a> 82 "//bi #{Versioner.new.get.to_s}"
|
683
|
+
</span><span class="uncovered1"><a name="line83"></a> 83 end
|
684
|
+
</span><span class="inferred0"><a name="line84"></a> 84
|
685
|
+
</span><span class="marked1"><a name="line85"></a> 85 def working_dir
|
686
|
+
</span><span class="uncovered0"><a name="line86"></a> 86 "//w #{@working_dir}"
|
687
|
+
</span><span class="uncovered1"><a name="line87"></a> 87 end
|
688
|
+
</span><span class="inferred0"><a name="line88"></a> 88
|
689
|
+
</span><span class="marked1"><a name="line89"></a> 89 def exclude_assemblies
|
690
|
+
</span><span class="uncovered0"><a name="line90"></a> 90 if @exclude_assemblies_regex.instance_of?(Array)
|
691
|
+
</span><span class="uncovered1"><a name="line91"></a> 91 return '//eas ' + @exclude_assemblies_regex.join(';')
|
692
|
+
</span><span class="uncovered0"><a name="line92"></a> 92 end
|
693
|
+
</span><span class="uncovered1"><a name="line93"></a> 93 return '//eas ' + @exclude_assemblies_regex if @exclude_assemblies_regex.instance_of?(String)
|
694
|
+
</span><span class="uncovered0"><a name="line94"></a> 94 end
|
695
|
+
</span><span class="inferred1"><a name="line95"></a> 95
|
696
|
+
</span><span class="marked0"><a name="line96"></a> 96 def cmd
|
697
|
+
</span><span class="uncovered1"><a name="line97"></a> 97 "\"#{@exe}\" #{cmdToRun} //x #{@output_file} #{exclude_assemblies} #{bi} #{working_dir}"
|
698
|
+
</span><span class="uncovered0"><a name="line98"></a> 98 end
|
699
|
+
</span><span class="inferred1"><a name="line99"></a> 99
|
700
|
+
</span><span class="marked0"><a name="line100"></a>100 def run
|
701
|
+
</span><span class="uncovered1"><a name="line101"></a>101 puts cmd if VERBOSE
|
702
|
+
</span><span class="uncovered0"><a name="line102"></a>102 sh cmd
|
703
|
+
</span><span class="uncovered1"><a name="line103"></a>103 end
|
704
|
+
</span><span class="uncovered0"><a name="line104"></a>104 end
|
705
|
+
</span><span class="inferred1"><a name="line105"></a>105
|
706
|
+
</span><span class="marked0"><a name="line106"></a>106 class NCoverReportingCmd
|
707
|
+
</span><span class="marked1"><a name="line107"></a>107 def initialize(report_dir, coverage_files, params)
|
708
|
+
</span><span class="uncovered0"><a name="line108"></a>108 @report_dir = report_dir
|
709
|
+
</span><span class="uncovered1"><a name="line109"></a>109 @coverage_files = coverage_files || []
|
710
|
+
</span><span class="uncovered0"><a name="line110"></a>110
|
711
|
+
</span><span class="uncovered1"><a name="line111"></a>111 params ||= {}
|
712
|
+
</span><span class="uncovered0"><a name="line112"></a>112 arch = params[:arch] || ENV['PROCESSOR_ARCHITECTURE']
|
713
|
+
</span><span class="uncovered1"><a name="line113"></a>113 @exe = params[:ncover_reporting_exe] || File.join(TOOLS_DIR, 'ncover', arch, 'ncover.reporting.exe')
|
714
|
+
</span><span class="uncovered0"><a name="line114"></a>114
|
715
|
+
</span><span class="uncovered1"><a name="line115"></a>115 # required
|
716
|
+
</span><span class="uncovered0"><a name="line116"></a>116 @reports = params[:reports] || ['Summary', 'UncoveredCodeSections', 'FullCoverageReport']
|
717
|
+
</span><span class="uncovered1"><a name="line117"></a>117 @output_path = File.join(@report_dir)
|
718
|
+
</span><span class="uncovered0"><a name="line118"></a>118
|
719
|
+
</span><span class="uncovered1"><a name="line119"></a>119 # optional
|
720
|
+
</span><span class="uncovered0"><a name="line120"></a>120 @sort_order = params[:sort] || 'CoveragePercentageAscending'
|
721
|
+
</span><span class="uncovered1"><a name="line121"></a>121 @project_name = params[:project_name] || PRODUCT_NAME
|
722
|
+
</span><span class="uncovered0"><a name="line122"></a>122 end
|
723
|
+
</span><span class="inferred1"><a name="line123"></a>123
|
724
|
+
</span><span class="marked0"><a name="line124"></a>124 def coverage_files
|
725
|
+
</span><span class="uncovered1"><a name="line125"></a>125 list = ''
|
726
|
+
</span><span class="uncovered0"><a name="line126"></a>126 @coverage_files.each do |cf|
|
727
|
+
</span><span class="uncovered1"><a name="line127"></a>127 list += "\"#{cf}\" "
|
728
|
+
</span><span class="uncovered0"><a name="line128"></a>128 end
|
729
|
+
</span><span class="uncovered1"><a name="line129"></a>129 list
|
730
|
+
</span><span class="uncovered0"><a name="line130"></a>130 end
|
731
|
+
</span><span class="inferred1"><a name="line131"></a>131
|
732
|
+
</span><span class="marked0"><a name="line132"></a>132 def build_id
|
733
|
+
</span><span class="uncovered1"><a name="line133"></a>133 "//bi #{Versioner.new.get.to_s}"
|
734
|
+
</span><span class="uncovered0"><a name="line134"></a>134 end
|
735
|
+
</span><span class="inferred1"><a name="line135"></a>135
|
736
|
+
</span><span class="marked0"><a name="line136"></a>136 def output_reports
|
737
|
+
</span><span class="uncovered1"><a name="line137"></a>137 cmd = ''
|
738
|
+
</span><span class="uncovered0"><a name="line138"></a>138 @reports.each do |r|
|
739
|
+
</span><span class="uncovered1"><a name="line139"></a>139 cmd += "//or #{r} "
|
740
|
+
</span><span class="uncovered0"><a name="line140"></a>140 end
|
741
|
+
</span><span class="uncovered1"><a name="line141"></a>141 return cmd
|
742
|
+
</span><span class="uncovered0"><a name="line142"></a>142 end
|
743
|
+
</span><span class="inferred1"><a name="line143"></a>143
|
744
|
+
</span><span class="marked0"><a name="line144"></a>144 def output_path
|
745
|
+
</span><span class="uncovered1"><a name="line145"></a>145 "//op \"#{@output_path}\""
|
746
|
+
</span><span class="uncovered0"><a name="line146"></a>146 end
|
747
|
+
</span><span class="inferred1"><a name="line147"></a>147
|
748
|
+
</span><span class="marked0"><a name="line148"></a>148 def sort_order
|
749
|
+
</span><span class="uncovered1"><a name="line149"></a>149 "//so #{@sort_order}"
|
750
|
+
</span><span class="uncovered0"><a name="line150"></a>150 end
|
751
|
+
</span><span class="inferred1"><a name="line151"></a>151
|
752
|
+
</span><span class="marked0"><a name="line152"></a>152 def project_name
|
753
|
+
</span><span class="uncovered1"><a name="line153"></a>153 "//p #{@project_name}" unless @project_name.nil?
|
754
|
+
</span><span class="uncovered0"><a name="line154"></a>154 end
|
755
|
+
</span><span class="inferred1"><a name="line155"></a>155
|
756
|
+
</span><span class="marked0"><a name="line156"></a>156 def cmd
|
757
|
+
</span><span class="uncovered1"><a name="line157"></a>157 "\"#{@exe}\" #{coverage_files} #{build_id} #{output_reports} #{output_path} #{sort_order} #{project_name}"
|
758
|
+
</span><span class="uncovered0"><a name="line158"></a>158 end
|
759
|
+
</span><span class="inferred1"><a name="line159"></a>159
|
760
|
+
</span><span class="marked0"><a name="line160"></a>160 def run
|
761
|
+
</span><span class="uncovered1"><a name="line161"></a>161 sh cmd
|
762
|
+
</span><span class="uncovered0"><a name="line162"></a>162 end
|
763
|
+
</span><span class="uncovered1"><a name="line163"></a>163 end
|
764
|
+
</span></pre><hr/>
|
765
|
+
<p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
|
766
|
+
version 0.8.1.2.</p>
|
767
|
+
<p><a href='http://validator.w3.org/check/referer'><img src='http://www.w3.org/Icons/valid-xhtml10' height='31' alt='Valid XHTML 1.0!' width='88'/>
|
768
|
+
</a>
|
769
|
+
<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'/>
|
770
|
+
</a>
|
771
|
+
</p>
|
772
|
+
</body>
|
773
|
+
</html>
|