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.
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
@@ -0,0 +1,723 @@
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/fxcop.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&apos;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-fxcop_rb.html'>lib/fxcop.rb</a>
573
+ </td>
574
+ <td class='lines_total'><tt>113</tt>
575
+ </td>
576
+ <td class='lines_code'><tt>92</tt>
577
+ </td>
578
+ <td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>24.8%</tt>
579
+ &nbsp;</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'>17.4%</tt>
589
+ &nbsp;</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 FxCopTask &lt; Rake::TaskLib
602
+ </span><span class="marked0"><a name="line2"></a> 2 attr_accessor :dll_list, :suites_dir
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 @report_dir = params[:report_dir] || File.join(OUT_DIR, 'reports')
607
+ </span><span class="uncovered1"><a name="line7"></a> 7 @name = params[:name] || File.join(@report_dir, @product_name + '.fxcop')
608
+ </span><span class="uncovered0"><a name="line8"></a> 8 @suites_dir = params[:suites_dir] || File.join(OUT_DIR, 'bin')
609
+ </span><span class="uncovered1"><a name="line9"></a> 9 @dll_list = FileList.new
610
+ </span><span class="uncovered0"><a name="line10"></a> 10 @deps = params[:deps] || []
611
+ </span><span class="uncovered1"><a name="line11"></a> 11 @fxcop_options = params[:fxcop_options] || {}
612
+ </span><span class="uncovered0"><a name="line12"></a> 12 if @fxcop_options[:apply_out_xsl].nil? || @fxcop_options[:apply_out_xsl] == false
613
+ </span><span class="uncovered1"><a name="line13"></a> 13 @name += '.xml'
614
+ </span><span class="uncovered0"><a name="line14"></a> 14 else
615
+ </span><span class="uncovered1"><a name="line15"></a> 15 @name += '.html'
616
+ </span><span class="uncovered0"><a name="line16"></a> 16 end
617
+ </span><span class="uncovered1"><a name="line17"></a> 17 @fxcop_options[:out_file] = @name if @fxcop_options[:out_file].nil?
618
+ </span><span class="uncovered0"><a name="line18"></a> 18
619
+ </span><span class="uncovered1"><a name="line19"></a> 19 yield self if block_given?
620
+ </span><span class="uncovered0"><a name="line20"></a> 20 define
621
+ </span><span class="uncovered1"><a name="line21"></a> 21 end
622
+ </span><span class="inferred0"><a name="line22"></a> 22
623
+ </span><span class="marked1"><a name="line23"></a> 23 def define
624
+ </span><span class="uncovered0"><a name="line24"></a> 24 @deps.each do |d|
625
+ </span><span class="uncovered1"><a name="line25"></a> 25 task :fxcop =&gt; d
626
+ </span><span class="uncovered0"><a name="line26"></a> 26 end
627
+ </span><span class="uncovered1"><a name="line27"></a> 27
628
+ </span><span class="uncovered0"><a name="line28"></a> 28 directory @report_dir
629
+ </span><span class="uncovered1"><a name="line29"></a> 29
630
+ </span><span class="uncovered0"><a name="line30"></a> 30 file @name =&gt; [@report_dir] do |f|
631
+ </span><span class="uncovered1"><a name="line31"></a> 31 runner = FxCop.new(@dll_list, @fxcop_options)
632
+ </span><span class="uncovered0"><a name="line32"></a> 32 runner.run
633
+ </span><span class="uncovered1"><a name="line33"></a> 33 end
634
+ </span><span class="uncovered0"><a name="line34"></a> 34
635
+ </span><span class="uncovered1"><a name="line35"></a> 35 task :fxcop, [:include_globs, :exclude_globs] do |t, args|
636
+ </span><span class="uncovered0"><a name="line36"></a> 36 args.with_defaults(:include_globs =&gt; [&quot;#{@suites_dir}/**/*#{@product_name}*.dll&quot;, &quot;#{@suites_dir}/**/*#{@product_name}*.exe&quot;])
637
+ </span><span class="uncovered1"><a name="line37"></a> 37 args.include_globs.each do |g|
638
+ </span><span class="uncovered0"><a name="line38"></a> 38 @dll_list.include g
639
+ </span><span class="uncovered1"><a name="line39"></a> 39 end
640
+ </span><span class="uncovered0"><a name="line40"></a> 40 args.with_defaults(:exclude_globs =&gt; [&quot;#{@suites_dir}/*Tests*.dll&quot;, &quot;#{@suites_dir}/*.vshost.exe&quot;])
641
+ </span><span class="uncovered1"><a name="line41"></a> 41 args.exclude_globs.each do |g|
642
+ </span><span class="uncovered0"><a name="line42"></a> 42 @dll_list.exclude g
643
+ </span><span class="uncovered1"><a name="line43"></a> 43 end
644
+ </span><span class="uncovered0"><a name="line44"></a> 44 Rake::FileTask[@name].invoke
645
+ </span><span class="uncovered1"><a name="line45"></a> 45 end
646
+ </span><span class="uncovered0"><a name="line46"></a> 46
647
+ </span><span class="uncovered1"><a name="line47"></a> 47 task :clobber_fxcop, [:globs] do |t, args|
648
+ </span><span class="uncovered0"><a name="line48"></a> 48 rm_rf @report_dir
649
+ </span><span class="uncovered1"><a name="line49"></a> 49 end
650
+ </span><span class="uncovered0"><a name="line50"></a> 50
651
+ </span><span class="uncovered1"><a name="line51"></a> 51 self
652
+ </span><span class="uncovered0"><a name="line52"></a> 52 end
653
+ </span><span class="inferred1"><a name="line53"></a> 53
654
+ </span><span class="marked0"><a name="line54"></a> 54 self
655
+ </span><span class="inferred1"><a name="line55"></a> 55 end
656
+ </span><span class="inferred0"><a name="line56"></a> 56
657
+ </span><span class="marked1"><a name="line57"></a> 57 class FxCopCmd
658
+ </span><span class="marked0"><a name="line58"></a> 58 attr_accessor :dlls, :out_file, :out_xsl, :apply_out_xsl, :dependencies_path, :summary, :verbose, :echo_to_console, :xsl_echo_to_console, :ignore_autogen, :culture
659
+ </span><span class="inferred1"><a name="line59"></a> 59
660
+ </span><span class="marked0"><a name="line60"></a> 60 def initialize(dlls, params={})
661
+ </span><span class="uncovered1"><a name="line61"></a> 61 @dlls = dlls
662
+ </span><span class="uncovered0"><a name="line62"></a> 62
663
+ </span><span class="uncovered1"><a name="line63"></a> 63 @exe_dir = params[:fxcop_exe_dir] || File.join(TOOLS_DIR, 'fxcop')
664
+ </span><span class="uncovered0"><a name="line64"></a> 64 @exe = params[:fxcop_exe] || File.join(@exe_dir, 'fxcopcmd.exe')
665
+ </span><span class="uncovered1"><a name="line65"></a> 65
666
+ </span><span class="uncovered0"><a name="line66"></a> 66 @apply_out_xsl = params[:apply_out_xsl]
667
+ </span><span class="uncovered1"><a name="line67"></a> 67 @culture = params[:culture]
668
+ </span><span class="uncovered0"><a name="line68"></a> 68 @dependencies_path = params[:dependencies_path]
669
+ </span><span class="uncovered1"><a name="line69"></a> 69 @echo_to_console = params[:echo_to_console]
670
+ </span><span class="uncovered0"><a name="line70"></a> 70 @ignore_autogen = params[:ignore_autogen] || true
671
+ </span><span class="uncovered1"><a name="line71"></a> 71 @out_file = params[:out_file]
672
+ </span><span class="uncovered0"><a name="line72"></a> 72 @out_xsl = File.join(@exe_dir, 'Xml', params[:out_xsl]) unless params[:out_xsl].nil?
673
+ </span><span class="uncovered1"><a name="line73"></a> 73 @summary = params[:summary]
674
+ </span><span class="uncovered0"><a name="line74"></a> 74 @verbose = params[:verbose]
675
+ </span><span class="uncovered1"><a name="line75"></a> 75 @xsl_echo_to_console = params[:xsl_echo_to_console]
676
+ </span><span class="uncovered0"><a name="line76"></a> 76
677
+ </span><span class="uncovered1"><a name="line77"></a> 77 yield self if block_given?
678
+ </span><span class="uncovered0"><a name="line78"></a> 78 end
679
+ </span><span class="inferred1"><a name="line79"></a> 79
680
+ </span><span class="marked0"><a name="line80"></a> 80 def console
681
+ </span><span class="uncovered1"><a name="line81"></a> 81 '/console' if @echo_to_console || @out_file.nil?
682
+ </span><span class="uncovered0"><a name="line82"></a> 82 end
683
+ </span><span class="inferred1"><a name="line83"></a> 83
684
+ </span><span class="marked0"><a name="line84"></a> 84 def files_to_analyse
685
+ </span><span class="uncovered1"><a name="line85"></a> 85 list = ''
686
+ </span><span class="uncovered0"><a name="line86"></a> 86 @dlls.each do |dll|
687
+ </span><span class="uncovered1"><a name="line87"></a> 87 list += &quot;/file:\&quot;#{dll}\&quot; &quot;
688
+ </span><span class="uncovered0"><a name="line88"></a> 88 end
689
+ </span><span class="uncovered1"><a name="line89"></a> 89 list = list.chop
690
+ </span><span class="uncovered0"><a name="line90"></a> 90 end
691
+ </span><span class="inferred1"><a name="line91"></a> 91
692
+ </span><span class="marked0"><a name="line92"></a> 92 def out_file
693
+ </span><span class="uncovered1"><a name="line93"></a> 93 &quot;/out:\&quot;#{@out_file}\&quot;&quot; if @out_file
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 out_xsl
697
+ </span><span class="uncovered1"><a name="line97"></a> 97 &quot;/outxsl:\&quot;#{@out_xsl}\&quot;&quot; if @out_xsl
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 apply_out_xsl
701
+ </span><span class="uncovered1"><a name="line101"></a>101 &quot;/applyoutxsl&quot; if @apply_out_xsl
702
+ </span><span class="uncovered0"><a name="line102"></a>102 end
703
+ </span><span class="inferred1"><a name="line103"></a>103
704
+ </span><span class="marked0"><a name="line104"></a>104 def cmd
705
+ </span><span class="uncovered1"><a name="line105"></a>105 &quot;\&quot;#{@exe}\&quot; #{files_to_analyse} #{console} #{out_file} #{out_xsl} #{apply_out_xsl}&quot;
706
+ </span><span class="uncovered0"><a name="line106"></a>106 end
707
+ </span><span class="inferred1"><a name="line107"></a>107
708
+ </span><span class="marked0"><a name="line108"></a>108 def run
709
+ </span><span class="uncovered1"><a name="line109"></a>109 puts cmd if VERBOSE
710
+ </span><span class="uncovered0"><a name="line110"></a>110 sh cmd
711
+ </span><span class="uncovered1"><a name="line111"></a>111 puts &quot;##teamcity[importData type='FxCop' path='#{File.expand_path(@out_file)}']&quot; if ENV['BUILD_NUMBER']
712
+ </span><span class="uncovered0"><a name="line112"></a>112 end
713
+ </span><span class="uncovered1"><a name="line113"></a>113 end
714
+ </span></pre><hr/>
715
+ <p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
716
+ version 0.8.1.2.</p>
717
+ <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'/>
718
+ </a>
719
+ <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'/>
720
+ </a>
721
+ </p>
722
+ </body>
723
+ </html>