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,716 @@
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/assemblyinfo.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-assemblyinfo_rb.html'>lib/assemblyinfo.rb</a>
573
+ </td>
574
+ <td class='lines_total'><tt>106</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'>18.9%</tt>
579
+ &nbsp;</td>
580
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='19'/>
581
+ <td class='uncovered' width='81'/>
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'>12.0%</tt>
589
+ &nbsp;</td>
590
+ <td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='12'/>
591
+ <td class='uncovered' width='88'/>
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 AssemblyInfoTask &lt; Rake::TaskLib
602
+ </span><span class="marked0"><a name="line2"></a> 2 attr_accessor :product_name, :configuration, :company_name, :version
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 @src_dir = params[:src_dir] || SRC_DIR
606
+ </span><span class="uncovered0"><a name="line6"></a> 6 yield self if block_given?
607
+ </span><span class="uncovered1"><a name="line7"></a> 7 define
608
+ </span><span class="uncovered0"><a name="line8"></a> 8 end
609
+ </span><span class="inferred1"><a name="line9"></a> 9
610
+ </span><span class="marked0"><a name="line10"></a> 10 def define
611
+ </span><span class="uncovered1"><a name="line11"></a> 11 src_dir_regex = RakeDotNet::regexify(@src_dir)
612
+ </span><span class="uncovered0"><a name="line12"></a> 12 rule(/#{src_dir_regex}\/[\w\.\d]+\/Properties\/AssemblyInfo.cs/) do |r|
613
+ </span><span class="uncovered1"><a name="line13"></a> 13 dir = Pathname.new(r.name).dirname
614
+ </span><span class="uncovered0"><a name="line14"></a> 14 mkdir_p dir
615
+ </span><span class="uncovered1"><a name="line15"></a> 15 nextdoor = Pathname.new(r.name + '.template')
616
+ </span><span class="uncovered0"><a name="line16"></a> 16 common = Pathname.new(File.join(@src_dir, 'AssemblyInfo.cs.template'))
617
+ </span><span class="uncovered1"><a name="line17"></a> 17 if (nextdoor.exist?)
618
+ </span><span class="uncovered0"><a name="line18"></a> 18 generate(nextdoor, r.name)
619
+ </span><span class="uncovered1"><a name="line19"></a> 19 elsif (common.exist?)
620
+ </span><span class="uncovered0"><a name="line20"></a> 20 generate(common, r.name)
621
+ </span><span class="uncovered1"><a name="line21"></a> 21 end
622
+ </span><span class="uncovered0"><a name="line22"></a> 22 end
623
+ </span><span class="uncovered1"><a name="line23"></a> 23
624
+ </span><span class="uncovered0"><a name="line24"></a> 24 rule(/#{src_dir_regex}\/[\w\.\d]+\/My Project\/AssemblyInfo.vb/) do |r|
625
+ </span><span class="uncovered1"><a name="line25"></a> 25 dir = Pathname.new(r.name).dirname
626
+ </span><span class="uncovered0"><a name="line26"></a> 26 mkdir_p dir
627
+ </span><span class="uncovered1"><a name="line27"></a> 27 nextdoor = Pathname.new(r.name + '.template')
628
+ </span><span class="uncovered0"><a name="line28"></a> 28 common = Pathname.new(File.join(@src_dir, 'AssemblyInfo.vb.template'))
629
+ </span><span class="uncovered1"><a name="line29"></a> 29 if (nextdoor.exist?)
630
+ </span><span class="uncovered0"><a name="line30"></a> 30 generate(nextdoor, r.name)
631
+ </span><span class="uncovered1"><a name="line31"></a> 31 elsif (common.exist?)
632
+ </span><span class="uncovered0"><a name="line32"></a> 32 generate(common, r.name)
633
+ </span><span class="uncovered1"><a name="line33"></a> 33 end
634
+ </span><span class="uncovered0"><a name="line34"></a> 34 end
635
+ </span><span class="uncovered1"><a name="line35"></a> 35
636
+ </span><span class="uncovered0"><a name="line36"></a> 36 desc 'Generate the AssemblyInfo.cs file from the template closest'
637
+ </span><span class="uncovered1"><a name="line37"></a> 37 task :assembly_info do |t|
638
+ </span><span class="uncovered0"><a name="line38"></a> 38 Pathname.new(@src_dir).entries.each do |e|
639
+ </span><span class="uncovered1"><a name="line39"></a> 39 asm_info = asm_info_to_generate(e)
640
+ </span><span class="uncovered0"><a name="line40"></a> 40 Rake::FileTask[asm_info].invoke unless asm_info.nil?
641
+ </span><span class="uncovered1"><a name="line41"></a> 41 end
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 self
645
+ </span><span class="uncovered1"><a name="line45"></a> 45 end
646
+ </span><span class="inferred0"><a name="line46"></a> 46
647
+ </span><span class="marked1"><a name="line47"></a> 47 def generate(template_file, destination)
648
+ </span><span class="uncovered0"><a name="line48"></a> 48 content = template_file.read
649
+ </span><span class="uncovered1"><a name="line49"></a> 49 token_replacements.each do |key, value|
650
+ </span><span class="uncovered0"><a name="line50"></a> 50 content = content.gsub(/(\$\{#{key}\})/, value.to_s)
651
+ </span><span class="uncovered1"><a name="line51"></a> 51 end
652
+ </span><span class="uncovered0"><a name="line52"></a> 52 of = Pathname.new(destination)
653
+ </span><span class="uncovered1"><a name="line53"></a> 53 of.delete if of.exist?
654
+ </span><span class="uncovered0"><a name="line54"></a> 54 of.open('w') { |f| f.puts content }
655
+ </span><span class="uncovered1"><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 def asm_info_to_generate pn_entry
658
+ </span><span class="uncovered0"><a name="line58"></a> 58 if (pn_entry == '.' || pn_entry == '..' || pn_entry == '.svn')
659
+ </span><span class="uncovered1"><a name="line59"></a> 59 return nil
660
+ </span><span class="uncovered0"><a name="line60"></a> 60 end
661
+ </span><span class="uncovered1"><a name="line61"></a> 61 if (pn_entry == 'AssemblyInfo.cs.template' || pn_entry == 'AssemblyInfo.vb.template')
662
+ </span><span class="uncovered0"><a name="line62"></a> 62 return nil
663
+ </span><span class="uncovered1"><a name="line63"></a> 63 end
664
+ </span><span class="uncovered0"><a name="line64"></a> 64
665
+ </span><span class="uncovered1"><a name="line65"></a> 65 proj = FileList.new(&quot;#{@src_dir}/#{pn_entry}/*.*proj&quot;).first
666
+ </span><span class="uncovered0"><a name="line66"></a> 66 return nil if proj.nil?
667
+ </span><span class="uncovered1"><a name="line67"></a> 67
668
+ </span><span class="uncovered0"><a name="line68"></a> 68 proj_ext = Pathname.new(proj).extname
669
+ </span><span class="uncovered1"><a name="line69"></a> 69 path =
670
+ </span><span class="uncovered0"><a name="line70"></a> 70 case proj_ext
671
+ </span><span class="uncovered1"><a name="line71"></a> 71 when '.csproj' then
672
+ </span><span class="uncovered0"><a name="line72"></a> 72 File.join(@src_dir, pn_entry, 'Properties', 'AssemblyInfo.cs')
673
+ </span><span class="uncovered1"><a name="line73"></a> 73 when '.vbproj' then
674
+ </span><span class="uncovered0"><a name="line74"></a> 74 File.join(@src_dir, pn_entry, 'My Project', 'AssemblyInfo.vb')
675
+ </span><span class="uncovered1"><a name="line75"></a> 75 else
676
+ </span><span class="uncovered0"><a name="line76"></a> 76 nil
677
+ </span><span class="uncovered1"><a name="line77"></a> 77 end
678
+ </span><span class="uncovered0"><a name="line78"></a> 78 return path
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 token_replacements
682
+ </span><span class="uncovered0"><a name="line82"></a> 82 r = {}
683
+ </span><span class="uncovered1"><a name="line83"></a> 83 r[:built_on] = Time.now
684
+ </span><span class="uncovered0"><a name="line84"></a> 84 r[:product] = product_name
685
+ </span><span class="uncovered1"><a name="line85"></a> 85 r[:configuration] = configuration
686
+ </span><span class="uncovered0"><a name="line86"></a> 86 r[:company] = company_name
687
+ </span><span class="uncovered1"><a name="line87"></a> 87 r[:version] = version
688
+ </span><span class="uncovered0"><a name="line88"></a> 88 return r
689
+ </span><span class="uncovered1"><a name="line89"></a> 89 end
690
+ </span><span class="inferred0"><a name="line90"></a> 90
691
+ </span><span class="marked1"><a name="line91"></a> 91 def product_name
692
+ </span><span class="uncovered0"><a name="line92"></a> 92 @product_name ||= PRODUCT_NAME
693
+ </span><span class="uncovered1"><a name="line93"></a> 93 end
694
+ </span><span class="inferred0"><a name="line94"></a> 94
695
+ </span><span class="marked1"><a name="line95"></a> 95 def configuration
696
+ </span><span class="uncovered0"><a name="line96"></a> 96 @configuration ||= CONFIGURATION
697
+ </span><span class="uncovered1"><a name="line97"></a> 97 end
698
+ </span><span class="inferred0"><a name="line98"></a> 98
699
+ </span><span class="marked1"><a name="line99"></a> 99 def company_name
700
+ </span><span class="uncovered0"><a name="line100"></a>100 @company_name ||= COMPANY_NAME
701
+ </span><span class="uncovered1"><a name="line101"></a>101 end
702
+ </span><span class="inferred0"><a name="line102"></a>102
703
+ </span><span class="marked1"><a name="line103"></a>103 def version
704
+ </span><span class="uncovered0"><a name="line104"></a>104 @version ||= Versioner.new.get
705
+ </span><span class="uncovered1"><a name="line105"></a>105 end
706
+ </span><span class="uncovered0"><a name="line106"></a>106 end
707
+ </span></pre><hr/>
708
+ <p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
709
+ version 0.8.1.2.</p>
710
+ <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'/>
711
+ </a>
712
+ <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'/>
713
+ </a>
714
+ </p>
715
+ </body>
716
+ </html>