mattock 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/doc/Specifications CHANGED
@@ -1,37 +1,37 @@
1
1
 
2
2
  Mattock::CommandLine
3
-  should have a name set
4
-  should produce a command string
5
-  should succeed
6
-  should not complain about success
3
+ should have a name set
4
+ should produce a command string
5
+ should succeed
6
+ should not complain about success
7
7
  Mattock::CommandRunResult
8
-  should have a result code
9
-  should have stdout
8
+ should have a result code
9
+ should have stdout
10
10
 
11
11
  Mattock::CommandLine that fails
12
-  should not succeed
13
-  should raise error if succeed demanded
12
+ should not succeed
13
+ should raise error if succeed demanded
14
14
 
15
15
  Mattock::RemoteCommandTask
16
16
  when verification indicates command should proceed
17
-  should run both commands
17
+ should run both commands
18
18
 
19
19
  Mattock::TemplateHost
20
-  should be able to do easy templating
20
+ should be able to do easy templating
21
21
 
22
22
  Mattock::TaskLib
23
-  should make root task depend on namespaced
24
-  should not make namespaced task depend on root task
23
+ should make root task depend on namespaced
24
+ should not make namespaced task depend on root task
25
25
  defines
26
-  should have task :test
27
-  should have task "test:task"
28
-  should not have task "random:tasks"
26
+ should have task :test
27
+ should have task "test:task"
28
+ should not have task "random:tasks"
29
29
 
30
30
  Mattock::Configurable
31
-  should set defaults
32
-  should complain about unset required fields
33
-  should complain about unset nested required fields
34
-  should not complain when required fields are set
31
+ should set defaults
32
+ should complain about unset required fields
33
+ should complain about unset nested required fields
34
+ should not complain when required fields are set
35
35
 
36
- Finished in 0.03405 seconds
37
- 19 examples, 0 failures
36
+ Finished in 0.06128 seconds
37
+ 19 examples, 0 failures
@@ -23,26 +23,26 @@
23
23
  <img src="./assets/0.5.3/loading.gif" alt="loading"/>
24
24
  </div>
25
25
  <div id="wrapper" style="display:none;">
26
- <div class="timestamp">Generated <abbr class="timeago" title="2012-01-28T02:02:54-08:00">2012-01-28T02:02:54-08:00</abbr></div>
26
+ <div class="timestamp">Generated <abbr class="timeago" title="2012-02-01T11:53:33-08:00">2012-02-01T11:53:33-08:00</abbr></div>
27
27
  <ul class="group_tabs"></ul>
28
28
 
29
29
  <div id="content">
30
30
  <div class="file_list_container" id="AllFiles">
31
31
  <h2>
32
32
  <span class="group_name">All Files</span>
33
- (<span class="covered_percent"><span class="green">92.79%</span></span>
33
+ (<span class="covered_percent"><span class="green">92.84%</span></span>
34
34
  covered at
35
35
  <span class="covered_strength">
36
36
  <span class="green">
37
- 2.62
37
+ 2.63
38
38
  </span>
39
39
  </span> hits/line)
40
40
  </h2>
41
41
  <a name="AllFiles"></a>
42
42
  <div>
43
43
  <b>12</b> files in total.
44
- <b>416</b> relevant lines.
45
- <span class="green"><b>386</b> lines covered</span> and
44
+ <b>419</b> relevant lines.
45
+ <span class="green"><b>389</b> lines covered</span> and
46
46
  <span class="red"><b>30</b> lines missed </span>
47
47
  </div>
48
48
  <table class="file_list">
@@ -81,12 +81,12 @@
81
81
 
82
82
  <tr>
83
83
  <td class="strong"><a href="#19e9811ada5819ea8e2c6a644088d4ba8e773a5b" class="src_link" title="lib/mattock/command-line.rb">lib/mattock/command-line.rb</a></td>
84
- <td class="green strong">93.1 %</td>
85
- <td>157</td>
86
- <td>87</td>
87
- <td>81</td>
84
+ <td class="green strong">93.33 %</td>
85
+ <td>162</td>
86
+ <td>90</td>
87
+ <td>84</td>
88
88
  <td>6</td>
89
- <td>3.0</td>
89
+ <td>3.2</td>
90
90
  </tr>
91
91
 
92
92
  <tr>
@@ -102,7 +102,7 @@
102
102
  <tr>
103
103
  <td class="strong"><a href="#151b5abc8f09f0fc2932ac98c07e3b516a518e3e" class="src_link" title="lib/mattock/configurable.rb">lib/mattock/configurable.rb</a></td>
104
104
  <td class="green strong">96.67 %</td>
105
- <td>153</td>
105
+ <td>157</td>
106
106
  <td>90</td>
107
107
  <td>87</td>
108
108
  <td>3</td>
@@ -450,10 +450,10 @@
450
450
  <div class="source_table" id="19e9811ada5819ea8e2c6a644088d4ba8e773a5b">
451
451
  <div class="header">
452
452
  <h3>lib/mattock/command-line.rb</h3>
453
- <h4><span class="green">93.1 %</span> covered</h4>
453
+ <h4><span class="green">93.33 %</span> covered</h4>
454
454
  <div>
455
- <b>87</b> relevant lines.
456
- <span class="green"><b>81</b> lines covered</span> and
455
+ <b>90</b> relevant lines.
456
+ <span class="green"><b>84</b> lines covered</span> and
457
457
  <span class="red"><b>6</b> lines missed.</span>
458
458
  </div>
459
459
  </div>
@@ -476,928 +476,958 @@
476
476
  <li class="covered" data-hits="1" data-linenumber="3">
477
477
  <span class="hits">1</span>
478
478
 
479
- <code class="ruby"> def initialize(status, streams)</code>
479
+ <code class="ruby"> def initialize(command, status, streams)</code>
480
480
  </li>
481
481
 
482
482
  <li class="covered" data-hits="5" data-linenumber="4">
483
483
  <span class="hits">5</span>
484
484
 
485
- <code class="ruby"> @process_status = status</code>
485
+ <code class="ruby"> @command = command</code>
486
486
  </li>
487
487
 
488
488
  <li class="covered" data-hits="5" data-linenumber="5">
489
489
  <span class="hits">5</span>
490
490
 
491
+ <code class="ruby"> @process_status = status</code>
492
+ </li>
493
+
494
+ <li class="covered" data-hits="5" data-linenumber="6">
495
+ <span class="hits">5</span>
496
+
491
497
  <code class="ruby"> @streams = streams</code>
492
498
  </li>
493
499
 
494
- <li class="never" data-hits="" data-linenumber="6">
500
+ <li class="never" data-hits="" data-linenumber="7">
495
501
 
496
502
 
497
503
  <code class="ruby"> end</code>
498
504
  </li>
499
505
 
500
- <li class="covered" data-hits="1" data-linenumber="7">
506
+ <li class="covered" data-hits="1" data-linenumber="8">
501
507
  <span class="hits">1</span>
502
508
 
503
509
  <code class="ruby"> attr_reader :process_status, :streams</code>
504
510
  </li>
505
511
 
506
- <li class="never" data-hits="" data-linenumber="8">
512
+ <li class="never" data-hits="" data-linenumber="9">
507
513
 
508
514
 
509
515
  <code class="ruby"></code>
510
516
  </li>
511
517
 
512
- <li class="covered" data-hits="1" data-linenumber="9">
518
+ <li class="covered" data-hits="1" data-linenumber="10">
513
519
  <span class="hits">1</span>
514
520
 
515
521
  <code class="ruby"> def stdout</code>
516
522
  </li>
517
523
 
518
- <li class="covered" data-hits="1" data-linenumber="10">
524
+ <li class="covered" data-hits="1" data-linenumber="11">
519
525
  <span class="hits">1</span>
520
526
 
521
527
  <code class="ruby"> @streams[1]</code>
522
528
  </li>
523
529
 
524
- <li class="never" data-hits="" data-linenumber="11">
530
+ <li class="never" data-hits="" data-linenumber="12">
525
531
 
526
532
 
527
533
  <code class="ruby"> end</code>
528
534
  </li>
529
535
 
530
- <li class="never" data-hits="" data-linenumber="12">
536
+ <li class="never" data-hits="" data-linenumber="13">
531
537
 
532
538
 
533
539
  <code class="ruby"></code>
534
540
  </li>
535
541
 
536
- <li class="covered" data-hits="1" data-linenumber="13">
542
+ <li class="covered" data-hits="1" data-linenumber="14">
537
543
  <span class="hits">1</span>
538
544
 
539
545
  <code class="ruby"> def stderr</code>
540
546
  </li>
541
547
 
542
- <li class="missed" data-hits="0" data-linenumber="14">
548
+ <li class="missed" data-hits="0" data-linenumber="15">
543
549
 
544
550
 
545
551
  <code class="ruby"> @streams[2]</code>
546
552
  </li>
547
553
 
548
- <li class="never" data-hits="" data-linenumber="15">
554
+ <li class="never" data-hits="" data-linenumber="16">
549
555
 
550
556
 
551
557
  <code class="ruby"> end</code>
552
558
  </li>
553
559
 
554
- <li class="never" data-hits="" data-linenumber="16">
560
+ <li class="never" data-hits="" data-linenumber="17">
555
561
 
556
562
 
557
563
  <code class="ruby"></code>
558
564
  </li>
559
565
 
560
- <li class="covered" data-hits="1" data-linenumber="17">
566
+ <li class="covered" data-hits="1" data-linenumber="18">
561
567
  <span class="hits">1</span>
562
568
 
563
569
  <code class="ruby"> def exit_code</code>
564
570
  </li>
565
571
 
566
- <li class="covered" data-hits="11" data-linenumber="18">
572
+ <li class="covered" data-hits="11" data-linenumber="19">
567
573
  <span class="hits">11</span>
568
574
 
569
575
  <code class="ruby"> @process_status.exitstatus</code>
570
576
  </li>
571
577
 
572
- <li class="never" data-hits="" data-linenumber="19">
578
+ <li class="never" data-hits="" data-linenumber="20">
573
579
 
574
580
 
575
581
  <code class="ruby"> end</code>
576
582
  </li>
577
583
 
578
- <li class="covered" data-hits="1" data-linenumber="20">
584
+ <li class="covered" data-hits="1" data-linenumber="21">
579
585
  <span class="hits">1</span>
580
586
 
581
587
  <code class="ruby"> alias exit_status exit_code</code>
582
588
  </li>
583
589
 
584
- <li class="never" data-hits="" data-linenumber="21">
590
+ <li class="never" data-hits="" data-linenumber="22">
585
591
 
586
592
 
587
593
  <code class="ruby"></code>
588
594
  </li>
589
595
 
590
- <li class="covered" data-hits="1" data-linenumber="22">
596
+ <li class="covered" data-hits="1" data-linenumber="23">
591
597
  <span class="hits">1</span>
592
598
 
593
599
  <code class="ruby"> def succeeded?</code>
594
600
  </li>
595
601
 
596
- <li class="covered" data-hits="3" data-linenumber="23">
602
+ <li class="covered" data-hits="3" data-linenumber="24">
597
603
  <span class="hits">3</span>
598
604
 
599
605
  <code class="ruby"> must_succeed!</code>
600
606
  </li>
601
607
 
602
- <li class="covered" data-hits="1" data-linenumber="24">
608
+ <li class="covered" data-hits="1" data-linenumber="25">
603
609
  <span class="hits">1</span>
604
610
 
605
611
  <code class="ruby"> return true</code>
606
612
  </li>
607
613
 
608
- <li class="never" data-hits="" data-linenumber="25">
614
+ <li class="never" data-hits="" data-linenumber="26">
609
615
 
610
616
 
611
617
  <code class="ruby"> rescue</code>
612
618
  </li>
613
619
 
614
- <li class="covered" data-hits="2" data-linenumber="26">
620
+ <li class="covered" data-hits="2" data-linenumber="27">
615
621
  <span class="hits">2</span>
616
622
 
617
623
  <code class="ruby"> return false</code>
618
624
  </li>
619
625
 
620
- <li class="never" data-hits="" data-linenumber="27">
626
+ <li class="never" data-hits="" data-linenumber="28">
621
627
 
622
628
 
623
629
  <code class="ruby"> end</code>
624
630
  </li>
625
631
 
626
- <li class="never" data-hits="" data-linenumber="28">
632
+ <li class="never" data-hits="" data-linenumber="29">
627
633
 
628
634
 
629
635
  <code class="ruby"></code>
630
636
  </li>
631
637
 
632
- <li class="covered" data-hits="1" data-linenumber="29">
638
+ <li class="covered" data-hits="1" data-linenumber="30">
633
639
  <span class="hits">1</span>
634
640
 
635
641
  <code class="ruby"> def must_succeed!</code>
636
642
  </li>
637
643
 
638
- <li class="covered" data-hits="5" data-linenumber="30">
644
+ <li class="covered" data-hits="5" data-linenumber="31">
639
645
  <span class="hits">5</span>
640
646
 
641
647
  <code class="ruby"> case exit_code</code>
642
648
  </li>
643
649
 
644
- <li class="never" data-hits="" data-linenumber="31">
650
+ <li class="never" data-hits="" data-linenumber="32">
645
651
 
646
652
 
647
653
  <code class="ruby"> when 0</code>
648
654
  </li>
649
655
 
650
- <li class="covered" data-hits="3" data-linenumber="32">
656
+ <li class="covered" data-hits="3" data-linenumber="33">
651
657
  <span class="hits">3</span>
652
658
 
653
659
  <code class="ruby"> return exit_code</code>
654
660
  </li>
655
661
 
656
- <li class="never" data-hits="" data-linenumber="33">
662
+ <li class="never" data-hits="" data-linenumber="34">
657
663
 
658
664
 
659
665
  <code class="ruby"> else</code>
660
666
  </li>
661
667
 
662
- <li class="covered" data-hits="2" data-linenumber="34">
668
+ <li class="covered" data-hits="2" data-linenumber="35">
663
669
  <span class="hits">2</span>
664
670
 
665
- <code class="ruby"> fail &quot;Command '#{name}' failed with exit status #{$?.exitstatus}: \n&quot;</code>
671
+ <code class="ruby"> fail &quot;Command #{@command.inspect} failed with exit status #{$?.exitstatus}: \n#{streams.inspect}&quot;</code>
666
672
  </li>
667
673
 
668
- <li class="never" data-hits="" data-linenumber="35">
674
+ <li class="never" data-hits="" data-linenumber="36">
669
675
 
670
676
 
671
677
  <code class="ruby"> end</code>
672
678
  </li>
673
679
 
674
- <li class="never" data-hits="" data-linenumber="36">
680
+ <li class="never" data-hits="" data-linenumber="37">
675
681
 
676
682
 
677
683
  <code class="ruby"> end</code>
678
684
  </li>
679
685
 
680
- <li class="never" data-hits="" data-linenumber="37">
686
+ <li class="never" data-hits="" data-linenumber="38">
681
687
 
682
688
 
683
689
  <code class="ruby"> end</code>
684
690
  </li>
685
691
 
686
- <li class="never" data-hits="" data-linenumber="38">
692
+ <li class="never" data-hits="" data-linenumber="39">
687
693
 
688
694
 
689
695
  <code class="ruby"></code>
690
696
  </li>
691
697
 
692
- <li class="covered" data-hits="1" data-linenumber="39">
698
+ <li class="covered" data-hits="1" data-linenumber="40">
693
699
  <span class="hits">1</span>
694
700
 
695
701
  <code class="ruby"> class CommandLine</code>
696
702
  </li>
697
703
 
698
- <li class="covered" data-hits="1" data-linenumber="40">
704
+ <li class="covered" data-hits="1" data-linenumber="41">
699
705
  <span class="hits">1</span>
700
706
 
701
707
  <code class="ruby"> def initialize(executable, *options)</code>
702
708
  </li>
703
709
 
704
- <li class="covered" data-hits="14" data-linenumber="41">
710
+ <li class="covered" data-hits="14" data-linenumber="42">
705
711
  <span class="hits">14</span>
706
712
 
707
713
  <code class="ruby"> @executable = executable</code>
708
714
  </li>
709
715
 
710
- <li class="covered" data-hits="14" data-linenumber="42">
716
+ <li class="covered" data-hits="14" data-linenumber="43">
711
717
  <span class="hits">14</span>
712
718
 
713
719
  <code class="ruby"> @options = options</code>
714
720
  </li>
715
721
 
716
- <li class="covered" data-hits="14" data-linenumber="43">
722
+ <li class="covered" data-hits="14" data-linenumber="44">
717
723
  <span class="hits">14</span>
718
724
 
719
725
  <code class="ruby"> @redirections = []</code>
720
726
  </li>
721
727
 
722
- <li class="covered" data-hits="14" data-linenumber="44">
728
+ <li class="covered" data-hits="14" data-linenumber="45">
723
729
  <span class="hits">14</span>
724
730
 
725
731
  <code class="ruby"> yield self if block_given?</code>
726
732
  </li>
727
733
 
728
- <li class="never" data-hits="" data-linenumber="45">
734
+ <li class="never" data-hits="" data-linenumber="46">
729
735
 
730
736
 
731
737
  <code class="ruby"> end</code>
732
738
  </li>
733
739
 
734
- <li class="never" data-hits="" data-linenumber="46">
740
+ <li class="never" data-hits="" data-linenumber="47">
735
741
 
736
742
 
737
743
  <code class="ruby"></code>
738
744
  </li>
739
745
 
740
- <li class="covered" data-hits="1" data-linenumber="47">
746
+ <li class="covered" data-hits="1" data-linenumber="48">
741
747
  <span class="hits">1</span>
742
748
 
743
749
  <code class="ruby"> attr_accessor :name, :executable, :options</code>
744
750
  </li>
745
751
 
746
- <li class="never" data-hits="" data-linenumber="48">
752
+ <li class="never" data-hits="" data-linenumber="49">
747
753
 
748
754
 
749
755
  <code class="ruby"></code>
750
756
  </li>
751
757
 
752
- <li class="covered" data-hits="1" data-linenumber="49">
758
+ <li class="covered" data-hits="1" data-linenumber="50">
759
+ <span class="hits">1</span>
760
+
761
+ <code class="ruby"> def verbose</code>
762
+ </li>
763
+
764
+ <li class="covered" data-hits="21" data-linenumber="51">
765
+ <span class="hits">21</span>
766
+
767
+ <code class="ruby"> Rake.verbose &amp;&amp; Rake.verbose != Rake::FileUtilsExt::DEFAULT</code>
768
+ </li>
769
+
770
+ <li class="never" data-hits="" data-linenumber="52">
771
+
772
+
773
+ <code class="ruby"> end</code>
774
+ </li>
775
+
776
+ <li class="never" data-hits="" data-linenumber="53">
777
+
778
+
779
+ <code class="ruby"></code>
780
+ </li>
781
+
782
+ <li class="covered" data-hits="1" data-linenumber="54">
753
783
  <span class="hits">1</span>
754
784
 
755
785
  <code class="ruby"> def name</code>
756
786
  </li>
757
787
 
758
- <li class="covered" data-hits="1" data-linenumber="50">
788
+ <li class="covered" data-hits="1" data-linenumber="55">
759
789
  <span class="hits">1</span>
760
790
 
761
791
  <code class="ruby"> @name || executable</code>
762
792
  </li>
763
793
 
764
- <li class="never" data-hits="" data-linenumber="51">
794
+ <li class="never" data-hits="" data-linenumber="56">
765
795
 
766
796
 
767
797
  <code class="ruby"> end</code>
768
798
  </li>
769
799
 
770
- <li class="never" data-hits="" data-linenumber="52">
800
+ <li class="never" data-hits="" data-linenumber="57">
771
801
 
772
802
 
773
803
  <code class="ruby"></code>
774
804
  </li>
775
805
 
776
- <li class="covered" data-hits="1" data-linenumber="53">
806
+ <li class="covered" data-hits="1" data-linenumber="58">
777
807
  <span class="hits">1</span>
778
808
 
779
809
  <code class="ruby"> def command</code>
780
810
  </li>
781
811
 
782
- <li class="covered" data-hits="12" data-linenumber="54">
812
+ <li class="covered" data-hits="12" data-linenumber="59">
783
813
  <span class="hits">12</span>
784
814
 
785
815
  <code class="ruby"> ([executable] + options + @redirections).join(&quot; &quot;)</code>
786
816
  </li>
787
817
 
788
- <li class="never" data-hits="" data-linenumber="55">
818
+ <li class="never" data-hits="" data-linenumber="60">
789
819
 
790
820
 
791
821
  <code class="ruby"> end</code>
792
822
  </li>
793
823
 
794
- <li class="never" data-hits="" data-linenumber="56">
824
+ <li class="never" data-hits="" data-linenumber="61">
795
825
 
796
826
 
797
827
  <code class="ruby"></code>
798
828
  </li>
799
829
 
800
- <li class="covered" data-hits="1" data-linenumber="57">
830
+ <li class="covered" data-hits="1" data-linenumber="62">
801
831
  <span class="hits">1</span>
802
832
 
803
833
  <code class="ruby"> def redirect_to(stream, path)</code>
804
834
  </li>
805
835
 
806
- <li class="covered" data-hits="2" data-linenumber="58">
836
+ <li class="covered" data-hits="2" data-linenumber="63">
807
837
  <span class="hits">2</span>
808
838
 
809
839
  <code class="ruby"> @redirections &lt;&lt; &quot;#{stream}&gt;#{path}&quot;</code>
810
840
  </li>
811
841
 
812
- <li class="never" data-hits="" data-linenumber="59">
842
+ <li class="never" data-hits="" data-linenumber="64">
813
843
 
814
844
 
815
845
  <code class="ruby"> end</code>
816
846
  </li>
817
847
 
818
- <li class="never" data-hits="" data-linenumber="60">
848
+ <li class="never" data-hits="" data-linenumber="65">
819
849
 
820
850
 
821
851
  <code class="ruby"></code>
822
852
  </li>
823
853
 
824
- <li class="covered" data-hits="1" data-linenumber="61">
854
+ <li class="covered" data-hits="1" data-linenumber="66">
825
855
  <span class="hits">1</span>
826
856
 
827
857
  <code class="ruby"> def redirect_from(path, stream)</code>
828
858
  </li>
829
859
 
830
- <li class="missed" data-hits="0" data-linenumber="62">
860
+ <li class="missed" data-hits="0" data-linenumber="67">
831
861
 
832
862
 
833
863
  <code class="ruby"> @redirections &lt;&lt; &quot;#{stream}&lt;#{path}&quot;</code>
834
864
  </li>
835
865
 
836
- <li class="never" data-hits="" data-linenumber="63">
866
+ <li class="never" data-hits="" data-linenumber="68">
837
867
 
838
868
 
839
869
  <code class="ruby"> end</code>
840
870
  </li>
841
871
 
842
- <li class="never" data-hits="" data-linenumber="64">
872
+ <li class="never" data-hits="" data-linenumber="69">
843
873
 
844
874
 
845
875
  <code class="ruby"></code>
846
876
  </li>
847
877
 
848
- <li class="covered" data-hits="1" data-linenumber="65">
878
+ <li class="covered" data-hits="1" data-linenumber="70">
849
879
  <span class="hits">1</span>
850
880
 
851
881
  <code class="ruby"> def copy_stream_to(from, to)</code>
852
882
  </li>
853
883
 
854
- <li class="missed" data-hits="0" data-linenumber="66">
884
+ <li class="missed" data-hits="0" data-linenumber="71">
855
885
 
856
886
 
857
887
  <code class="ruby"> @redirections &lt;&lt; &quot;#{from}&gt;&amp;#{to}&quot;</code>
858
888
  </li>
859
889
 
860
- <li class="never" data-hits="" data-linenumber="67">
890
+ <li class="never" data-hits="" data-linenumber="72">
861
891
 
862
892
 
863
893
  <code class="ruby"> end</code>
864
894
  </li>
865
895
 
866
- <li class="never" data-hits="" data-linenumber="68">
896
+ <li class="never" data-hits="" data-linenumber="73">
867
897
 
868
898
 
869
899
  <code class="ruby"></code>
870
900
  </li>
871
901
 
872
- <li class="covered" data-hits="1" data-linenumber="69">
902
+ <li class="covered" data-hits="1" data-linenumber="74">
873
903
  <span class="hits">1</span>
874
904
 
875
905
  <code class="ruby"> def redirect_stdout(path)</code>
876
906
  </li>
877
907
 
878
- <li class="covered" data-hits="1" data-linenumber="70">
908
+ <li class="covered" data-hits="1" data-linenumber="75">
879
909
  <span class="hits">1</span>
880
910
 
881
911
  <code class="ruby"> redirect_to(1, path)</code>
882
912
  </li>
883
913
 
884
- <li class="never" data-hits="" data-linenumber="71">
914
+ <li class="never" data-hits="" data-linenumber="76">
885
915
 
886
916
 
887
917
  <code class="ruby"> end</code>
888
918
  </li>
889
919
 
890
- <li class="never" data-hits="" data-linenumber="72">
920
+ <li class="never" data-hits="" data-linenumber="77">
891
921
 
892
922
 
893
923
  <code class="ruby"></code>
894
924
  </li>
895
925
 
896
- <li class="covered" data-hits="1" data-linenumber="73">
926
+ <li class="covered" data-hits="1" data-linenumber="78">
897
927
  <span class="hits">1</span>
898
928
 
899
929
  <code class="ruby"> def redirect_stderr(path)</code>
900
930
  </li>
901
931
 
902
- <li class="covered" data-hits="1" data-linenumber="74">
932
+ <li class="covered" data-hits="1" data-linenumber="79">
903
933
  <span class="hits">1</span>
904
934
 
905
935
  <code class="ruby"> redirect_to(2, path)</code>
906
936
  </li>
907
937
 
908
- <li class="never" data-hits="" data-linenumber="75">
938
+ <li class="never" data-hits="" data-linenumber="80">
909
939
 
910
940
 
911
941
  <code class="ruby"> end</code>
912
942
  </li>
913
943
 
914
- <li class="never" data-hits="" data-linenumber="76">
944
+ <li class="never" data-hits="" data-linenumber="81">
915
945
 
916
946
 
917
947
  <code class="ruby"></code>
918
948
  </li>
919
949
 
920
- <li class="covered" data-hits="1" data-linenumber="77">
950
+ <li class="covered" data-hits="1" data-linenumber="82">
921
951
  <span class="hits">1</span>
922
952
 
923
953
  <code class="ruby"> def redirect_stdin(path)</code>
924
954
  </li>
925
955
 
926
- <li class="missed" data-hits="0" data-linenumber="78">
956
+ <li class="missed" data-hits="0" data-linenumber="83">
927
957
 
928
958
 
929
959
  <code class="ruby"> redirect_from(path, 0)</code>
930
960
  </li>
931
961
 
932
- <li class="never" data-hits="" data-linenumber="79">
962
+ <li class="never" data-hits="" data-linenumber="84">
933
963
 
934
964
 
935
965
  <code class="ruby"> end</code>
936
966
  </li>
937
967
 
938
- <li class="never" data-hits="" data-linenumber="80">
968
+ <li class="never" data-hits="" data-linenumber="85">
939
969
 
940
970
 
941
971
  <code class="ruby"></code>
942
972
  </li>
943
973
 
944
- <li class="covered" data-hits="1" data-linenumber="81">
974
+ <li class="covered" data-hits="1" data-linenumber="86">
945
975
  <span class="hits">1</span>
946
976
 
947
977
  <code class="ruby"> def self.execute(command)</code>
948
978
  </li>
949
979
 
950
- <li class="covered" data-hits="5" data-linenumber="82">
980
+ <li class="covered" data-hits="5" data-linenumber="87">
951
981
  <span class="hits">5</span>
952
982
 
953
983
  <code class="ruby"> pipe = IO.popen(command)</code>
954
984
  </li>
955
985
 
956
- <li class="covered" data-hits="5" data-linenumber="83">
986
+ <li class="covered" data-hits="5" data-linenumber="88">
957
987
  <span class="hits">5</span>
958
988
 
959
989
  <code class="ruby"> pid = pipe.pid</code>
960
990
  </li>
961
991
 
962
- <li class="covered" data-hits="5" data-linenumber="84">
992
+ <li class="covered" data-hits="5" data-linenumber="89">
963
993
  <span class="hits">5</span>
964
994
 
965
995
  <code class="ruby"> pid, status = Process.wait2(pid)</code>
966
996
  </li>
967
997
 
968
- <li class="covered" data-hits="5" data-linenumber="85">
998
+ <li class="covered" data-hits="5" data-linenumber="90">
969
999
  <span class="hits">5</span>
970
1000
 
971
- <code class="ruby"> result = CommandRunResult.new(status, {1 =&gt; pipe.read})</code>
1001
+ <code class="ruby"> result = CommandRunResult.new(command, status, {1 =&gt; pipe.read})</code>
972
1002
  </li>
973
1003
 
974
- <li class="covered" data-hits="5" data-linenumber="86">
1004
+ <li class="covered" data-hits="5" data-linenumber="91">
975
1005
  <span class="hits">5</span>
976
1006
 
977
1007
  <code class="ruby"> pipe.close</code>
978
1008
  </li>
979
1009
 
980
- <li class="covered" data-hits="5" data-linenumber="87">
1010
+ <li class="covered" data-hits="5" data-linenumber="92">
981
1011
  <span class="hits">5</span>
982
1012
 
983
1013
  <code class="ruby"> return result</code>
984
1014
  </li>
985
1015
 
986
- <li class="never" data-hits="" data-linenumber="88">
1016
+ <li class="never" data-hits="" data-linenumber="93">
987
1017
 
988
1018
 
989
1019
  <code class="ruby"> end</code>
990
1020
  </li>
991
1021
 
992
- <li class="never" data-hits="" data-linenumber="89">
1022
+ <li class="never" data-hits="" data-linenumber="94">
993
1023
 
994
1024
 
995
1025
  <code class="ruby"></code>
996
1026
  </li>
997
1027
 
998
- <li class="covered" data-hits="1" data-linenumber="90">
1028
+ <li class="covered" data-hits="1" data-linenumber="95">
999
1029
  <span class="hits">1</span>
1000
1030
 
1001
1031
  <code class="ruby"> def run</code>
1002
1032
  </li>
1003
1033
 
1004
- <li class="covered" data-hits="7" data-linenumber="91">
1034
+ <li class="covered" data-hits="7" data-linenumber="96">
1005
1035
  <span class="hits">7</span>
1006
1036
 
1007
- <code class="ruby"> print command + &quot; &quot; if $verbose</code>
1037
+ <code class="ruby"> print command + &quot; &quot; if verbose</code>
1008
1038
  </li>
1009
1039
 
1010
- <li class="covered" data-hits="7" data-linenumber="92">
1040
+ <li class="covered" data-hits="7" data-linenumber="97">
1011
1041
  <span class="hits">7</span>
1012
1042
 
1013
1043
  <code class="ruby"> result = self.class.execute(command)</code>
1014
1044
  </li>
1015
1045
 
1016
- <li class="covered" data-hits="7" data-linenumber="93">
1046
+ <li class="covered" data-hits="7" data-linenumber="98">
1017
1047
  <span class="hits">7</span>
1018
1048
 
1019
- <code class="ruby"> print &quot;=&gt; #{result.exit_code}&quot; if $verbose</code>
1049
+ <code class="ruby"> print &quot;=&gt; #{result.exit_code}&quot; if verbose</code>
1020
1050
  </li>
1021
1051
 
1022
- <li class="covered" data-hits="7" data-linenumber="94">
1052
+ <li class="covered" data-hits="7" data-linenumber="99">
1023
1053
  <span class="hits">7</span>
1024
1054
 
1025
1055
  <code class="ruby"> return result</code>
1026
1056
  </li>
1027
1057
 
1028
- <li class="never" data-hits="" data-linenumber="95">
1058
+ <li class="never" data-hits="" data-linenumber="100">
1029
1059
 
1030
1060
 
1031
1061
  <code class="ruby"> ensure</code>
1032
1062
  </li>
1033
1063
 
1034
- <li class="covered" data-hits="7" data-linenumber="96">
1064
+ <li class="covered" data-hits="7" data-linenumber="101">
1035
1065
  <span class="hits">7</span>
1036
1066
 
1037
- <code class="ruby"> puts if $verbose</code>
1067
+ <code class="ruby"> puts if verbose</code>
1038
1068
  </li>
1039
1069
 
1040
- <li class="never" data-hits="" data-linenumber="97">
1070
+ <li class="never" data-hits="" data-linenumber="102">
1041
1071
 
1042
1072
 
1043
1073
  <code class="ruby"> end</code>
1044
1074
  </li>
1045
1075
 
1046
- <li class="never" data-hits="" data-linenumber="98">
1076
+ <li class="never" data-hits="" data-linenumber="103">
1047
1077
 
1048
1078
 
1049
1079
  <code class="ruby"></code>
1050
1080
  </li>
1051
1081
 
1052
- <li class="covered" data-hits="1" data-linenumber="99">
1082
+ <li class="covered" data-hits="1" data-linenumber="104">
1053
1083
  <span class="hits">1</span>
1054
1084
 
1055
1085
  <code class="ruby"> def succeeds?</code>
1056
1086
  </li>
1057
1087
 
1058
- <li class="covered" data-hits="3" data-linenumber="100">
1088
+ <li class="covered" data-hits="3" data-linenumber="105">
1059
1089
  <span class="hits">3</span>
1060
1090
 
1061
1091
  <code class="ruby"> run.succeeded?</code>
1062
1092
  </li>
1063
1093
 
1064
- <li class="never" data-hits="" data-linenumber="101">
1094
+ <li class="never" data-hits="" data-linenumber="106">
1065
1095
 
1066
1096
 
1067
1097
  <code class="ruby"> end</code>
1068
1098
  </li>
1069
1099
 
1070
- <li class="never" data-hits="" data-linenumber="102">
1100
+ <li class="never" data-hits="" data-linenumber="107">
1071
1101
 
1072
1102
 
1073
1103
  <code class="ruby"></code>
1074
1104
  </li>
1075
1105
 
1076
- <li class="covered" data-hits="1" data-linenumber="103">
1106
+ <li class="covered" data-hits="1" data-linenumber="108">
1077
1107
  <span class="hits">1</span>
1078
1108
 
1079
1109
  <code class="ruby"> def must_succeed!</code>
1080
1110
  </li>
1081
1111
 
1082
- <li class="covered" data-hits="2" data-linenumber="104">
1112
+ <li class="covered" data-hits="2" data-linenumber="109">
1083
1113
  <span class="hits">2</span>
1084
1114
 
1085
1115
  <code class="ruby"> run.must_succeed!</code>
1086
1116
  </li>
1087
1117
 
1088
- <li class="never" data-hits="" data-linenumber="105">
1118
+ <li class="never" data-hits="" data-linenumber="110">
1089
1119
 
1090
1120
 
1091
1121
  <code class="ruby"> end</code>
1092
1122
  </li>
1093
1123
 
1094
- <li class="never" data-hits="" data-linenumber="106">
1124
+ <li class="never" data-hits="" data-linenumber="111">
1095
1125
 
1096
1126
 
1097
1127
  <code class="ruby"> end</code>
1098
1128
  </li>
1099
1129
 
1100
- <li class="never" data-hits="" data-linenumber="107">
1130
+ <li class="never" data-hits="" data-linenumber="112">
1101
1131
 
1102
1132
 
1103
1133
  <code class="ruby"></code>
1104
1134
  </li>
1105
1135
 
1106
- <li class="covered" data-hits="1" data-linenumber="108">
1136
+ <li class="covered" data-hits="1" data-linenumber="113">
1107
1137
  <span class="hits">1</span>
1108
1138
 
1109
1139
  <code class="ruby"> class ShellEscaped &lt; CommandLine</code>
1110
1140
  </li>
1111
1141
 
1112
- <li class="covered" data-hits="1" data-linenumber="109">
1142
+ <li class="covered" data-hits="1" data-linenumber="114">
1113
1143
  <span class="hits">1</span>
1114
1144
 
1115
1145
  <code class="ruby"> def initialize(cmd)</code>
1116
1146
  </li>
1117
1147
 
1118
- <li class="covered" data-hits="2" data-linenumber="110">
1148
+ <li class="covered" data-hits="2" data-linenumber="115">
1119
1149
  <span class="hits">2</span>
1120
1150
 
1121
1151
  <code class="ruby"> @escaped = cmd</code>
1122
1152
  </li>
1123
1153
 
1124
- <li class="never" data-hits="" data-linenumber="111">
1154
+ <li class="never" data-hits="" data-linenumber="116">
1125
1155
 
1126
1156
 
1127
1157
  <code class="ruby"> end</code>
1128
1158
  </li>
1129
1159
 
1130
- <li class="never" data-hits="" data-linenumber="112">
1160
+ <li class="never" data-hits="" data-linenumber="117">
1131
1161
 
1132
1162
 
1133
1163
  <code class="ruby"></code>
1134
1164
  </li>
1135
1165
 
1136
- <li class="covered" data-hits="1" data-linenumber="113">
1166
+ <li class="covered" data-hits="1" data-linenumber="118">
1137
1167
  <span class="hits">1</span>
1138
1168
 
1139
1169
  <code class="ruby"> def command</code>
1140
1170
  </li>
1141
1171
 
1142
- <li class="covered" data-hits="2" data-linenumber="114">
1172
+ <li class="covered" data-hits="2" data-linenumber="119">
1143
1173
  <span class="hits">2</span>
1144
1174
 
1145
1175
  <code class="ruby"> &quot;'&quot; + @escaped.command.gsub(/'/,&quot;\'&quot;) + &quot;'&quot;</code>
1146
1176
  </li>
1147
1177
 
1148
- <li class="never" data-hits="" data-linenumber="115">
1178
+ <li class="never" data-hits="" data-linenumber="120">
1149
1179
 
1150
1180
 
1151
1181
  <code class="ruby"> end</code>
1152
1182
  </li>
1153
1183
 
1154
- <li class="never" data-hits="" data-linenumber="116">
1184
+ <li class="never" data-hits="" data-linenumber="121">
1155
1185
 
1156
1186
 
1157
1187
  <code class="ruby"></code>
1158
1188
  </li>
1159
1189
 
1160
- <li class="covered" data-hits="1" data-linenumber="117">
1190
+ <li class="covered" data-hits="1" data-linenumber="122">
1161
1191
  <span class="hits">1</span>
1162
1192
 
1163
1193
  <code class="ruby"> def name</code>
1164
1194
  </li>
1165
1195
 
1166
- <li class="missed" data-hits="0" data-linenumber="118">
1196
+ <li class="missed" data-hits="0" data-linenumber="123">
1167
1197
 
1168
1198
 
1169
1199
  <code class="ruby"> @name || @escaped.name</code>
1170
1200
  </li>
1171
1201
 
1172
- <li class="never" data-hits="" data-linenumber="119">
1202
+ <li class="never" data-hits="" data-linenumber="124">
1173
1203
 
1174
1204
 
1175
1205
  <code class="ruby"> end</code>
1176
1206
  </li>
1177
1207
 
1178
- <li class="never" data-hits="" data-linenumber="120">
1208
+ <li class="never" data-hits="" data-linenumber="125">
1179
1209
 
1180
1210
 
1181
1211
  <code class="ruby"> end</code>
1182
1212
  </li>
1183
1213
 
1184
- <li class="never" data-hits="" data-linenumber="121">
1214
+ <li class="never" data-hits="" data-linenumber="126">
1185
1215
 
1186
1216
 
1187
1217
  <code class="ruby"></code>
1188
1218
  </li>
1189
1219
 
1190
- <li class="covered" data-hits="1" data-linenumber="122">
1220
+ <li class="covered" data-hits="1" data-linenumber="127">
1191
1221
  <span class="hits">1</span>
1192
1222
 
1193
1223
  <code class="ruby"> class CommandChain &lt; CommandLine</code>
1194
1224
  </li>
1195
1225
 
1196
- <li class="covered" data-hits="1" data-linenumber="123">
1226
+ <li class="covered" data-hits="1" data-linenumber="128">
1197
1227
  <span class="hits">1</span>
1198
1228
 
1199
1229
  <code class="ruby"> def initialize</code>
1200
1230
  </li>
1201
1231
 
1202
- <li class="covered" data-hits="4" data-linenumber="124">
1232
+ <li class="covered" data-hits="4" data-linenumber="129">
1203
1233
  <span class="hits">4</span>
1204
1234
 
1205
1235
  <code class="ruby"> @commands = []</code>
1206
1236
  </li>
1207
1237
 
1208
- <li class="covered" data-hits="4" data-linenumber="125">
1238
+ <li class="covered" data-hits="4" data-linenumber="130">
1209
1239
  <span class="hits">4</span>
1210
1240
 
1211
1241
  <code class="ruby"> yield self if block_given?</code>
1212
1242
  </li>
1213
1243
 
1214
- <li class="never" data-hits="" data-linenumber="126">
1244
+ <li class="never" data-hits="" data-linenumber="131">
1215
1245
 
1216
1246
 
1217
1247
  <code class="ruby"> end</code>
1218
1248
  </li>
1219
1249
 
1220
- <li class="never" data-hits="" data-linenumber="127">
1250
+ <li class="never" data-hits="" data-linenumber="132">
1221
1251
 
1222
1252
 
1223
1253
  <code class="ruby"></code>
1224
1254
  </li>
1225
1255
 
1226
- <li class="covered" data-hits="1" data-linenumber="128">
1256
+ <li class="covered" data-hits="1" data-linenumber="133">
1227
1257
  <span class="hits">1</span>
1228
1258
 
1229
1259
  <code class="ruby"> attr_reader :commands</code>
1230
1260
  </li>
1231
1261
 
1232
- <li class="never" data-hits="" data-linenumber="129">
1262
+ <li class="never" data-hits="" data-linenumber="134">
1233
1263
 
1234
1264
 
1235
1265
  <code class="ruby"></code>
1236
1266
  </li>
1237
1267
 
1238
- <li class="covered" data-hits="1" data-linenumber="130">
1268
+ <li class="covered" data-hits="1" data-linenumber="135">
1239
1269
  <span class="hits">1</span>
1240
1270
 
1241
1271
  <code class="ruby"> def add(cmd)</code>
1242
1272
  </li>
1243
1273
 
1244
- <li class="covered" data-hits="8" data-linenumber="131">
1274
+ <li class="covered" data-hits="8" data-linenumber="136">
1245
1275
  <span class="hits">8</span>
1246
1276
 
1247
1277
  <code class="ruby"> yield cmd if block_given?</code>
1248
1278
  </li>
1249
1279
 
1250
- <li class="covered" data-hits="8" data-linenumber="132">
1280
+ <li class="covered" data-hits="8" data-linenumber="137">
1251
1281
  <span class="hits">8</span>
1252
1282
 
1253
1283
  <code class="ruby"> @commands &lt;&lt; cmd</code>
1254
1284
  </li>
1255
1285
 
1256
- <li class="never" data-hits="" data-linenumber="133">
1286
+ <li class="never" data-hits="" data-linenumber="138">
1257
1287
 
1258
1288
 
1259
1289
  <code class="ruby"> end</code>
1260
1290
  </li>
1261
1291
 
1262
- <li class="never" data-hits="" data-linenumber="134">
1292
+ <li class="never" data-hits="" data-linenumber="139">
1263
1293
 
1264
1294
 
1265
1295
  <code class="ruby"></code>
1266
1296
  </li>
1267
1297
 
1268
- <li class="covered" data-hits="1" data-linenumber="135">
1298
+ <li class="covered" data-hits="1" data-linenumber="140">
1269
1299
  <span class="hits">1</span>
1270
1300
 
1271
1301
  <code class="ruby"> def name</code>
1272
1302
  </li>
1273
1303
 
1274
- <li class="missed" data-hits="0" data-linenumber="136">
1304
+ <li class="missed" data-hits="0" data-linenumber="141">
1275
1305
 
1276
1306
 
1277
1307
  <code class="ruby"> @name || @commands.last.name</code>
1278
1308
  </li>
1279
1309
 
1280
- <li class="never" data-hits="" data-linenumber="137">
1310
+ <li class="never" data-hits="" data-linenumber="142">
1281
1311
 
1282
1312
 
1283
1313
  <code class="ruby"> end</code>
1284
1314
  </li>
1285
1315
 
1286
- <li class="never" data-hits="" data-linenumber="138">
1316
+ <li class="never" data-hits="" data-linenumber="143">
1287
1317
 
1288
1318
 
1289
1319
  <code class="ruby"> end</code>
1290
1320
  </li>
1291
1321
 
1292
- <li class="never" data-hits="" data-linenumber="139">
1322
+ <li class="never" data-hits="" data-linenumber="144">
1293
1323
 
1294
1324
 
1295
1325
  <code class="ruby"></code>
1296
1326
  </li>
1297
1327
 
1298
- <li class="covered" data-hits="1" data-linenumber="140">
1328
+ <li class="covered" data-hits="1" data-linenumber="145">
1299
1329
  <span class="hits">1</span>
1300
1330
 
1301
1331
  <code class="ruby"> class WrappingChain &lt; CommandChain</code>
1302
1332
  </li>
1303
1333
 
1304
- <li class="covered" data-hits="1" data-linenumber="141">
1334
+ <li class="covered" data-hits="1" data-linenumber="146">
1305
1335
  <span class="hits">1</span>
1306
1336
 
1307
1337
  <code class="ruby"> def command</code>
1308
1338
  </li>
1309
1339
 
1310
- <li class="covered" data-hits="6" data-linenumber="142">
1340
+ <li class="covered" data-hits="6" data-linenumber="147">
1311
1341
  <span class="hits">6</span>
1312
1342
 
1313
1343
  <code class="ruby"> @commands.map{|cmd| cmd.command}.join(&quot; -- &quot;)</code>
1314
1344
  </li>
1315
1345
 
1316
- <li class="never" data-hits="" data-linenumber="143">
1346
+ <li class="never" data-hits="" data-linenumber="148">
1317
1347
 
1318
1348
 
1319
1349
  <code class="ruby"> end</code>
1320
1350
  </li>
1321
1351
 
1322
- <li class="never" data-hits="" data-linenumber="144">
1352
+ <li class="never" data-hits="" data-linenumber="149">
1323
1353
 
1324
1354
 
1325
1355
  <code class="ruby"> end</code>
1326
1356
  </li>
1327
1357
 
1328
- <li class="never" data-hits="" data-linenumber="145">
1358
+ <li class="never" data-hits="" data-linenumber="150">
1329
1359
 
1330
1360
 
1331
1361
  <code class="ruby"></code>
1332
1362
  </li>
1333
1363
 
1334
- <li class="covered" data-hits="1" data-linenumber="146">
1364
+ <li class="covered" data-hits="1" data-linenumber="151">
1335
1365
  <span class="hits">1</span>
1336
1366
 
1337
1367
  <code class="ruby"> class PrereqChain &lt; CommandChain</code>
1338
1368
  </li>
1339
1369
 
1340
- <li class="covered" data-hits="1" data-linenumber="147">
1370
+ <li class="covered" data-hits="1" data-linenumber="152">
1341
1371
  <span class="hits">1</span>
1342
1372
 
1343
1373
  <code class="ruby"> def command</code>
1344
1374
  </li>
1345
1375
 
1346
- <li class="covered" data-hits="3" data-linenumber="148">
1376
+ <li class="covered" data-hits="3" data-linenumber="153">
1347
1377
  <span class="hits">3</span>
1348
1378
 
1349
1379
  <code class="ruby"> @commands.map{|cmd| cmd.command}.join(&quot; &amp;&amp; &quot;)</code>
1350
1380
  </li>
1351
1381
 
1352
- <li class="never" data-hits="" data-linenumber="149">
1382
+ <li class="never" data-hits="" data-linenumber="154">
1353
1383
 
1354
1384
 
1355
1385
  <code class="ruby"> end</code>
1356
1386
  </li>
1357
1387
 
1358
- <li class="never" data-hits="" data-linenumber="150">
1388
+ <li class="never" data-hits="" data-linenumber="155">
1359
1389
 
1360
1390
 
1361
1391
  <code class="ruby"> end</code>
1362
1392
  </li>
1363
1393
 
1364
- <li class="never" data-hits="" data-linenumber="151">
1394
+ <li class="never" data-hits="" data-linenumber="156">
1365
1395
 
1366
1396
 
1367
1397
  <code class="ruby"></code>
1368
1398
  </li>
1369
1399
 
1370
- <li class="covered" data-hits="1" data-linenumber="152">
1400
+ <li class="covered" data-hits="1" data-linenumber="157">
1371
1401
  <span class="hits">1</span>
1372
1402
 
1373
1403
  <code class="ruby"> class PipelineChain &lt; CommandChain</code>
1374
1404
  </li>
1375
1405
 
1376
- <li class="covered" data-hits="1" data-linenumber="153">
1406
+ <li class="covered" data-hits="1" data-linenumber="158">
1377
1407
  <span class="hits">1</span>
1378
1408
 
1379
1409
  <code class="ruby"> def command</code>
1380
1410
  </li>
1381
1411
 
1382
- <li class="covered" data-hits="3" data-linenumber="154">
1412
+ <li class="covered" data-hits="3" data-linenumber="159">
1383
1413
  <span class="hits">3</span>
1384
1414
 
1385
1415
  <code class="ruby"> @commands.map{|cmd| cmd.command}.join(&quot; | &quot;)</code>
1386
1416
  </li>
1387
1417
 
1388
- <li class="never" data-hits="" data-linenumber="155">
1418
+ <li class="never" data-hits="" data-linenumber="160">
1389
1419
 
1390
1420
 
1391
1421
  <code class="ruby"> end</code>
1392
1422
  </li>
1393
1423
 
1394
- <li class="never" data-hits="" data-linenumber="156">
1424
+ <li class="never" data-hits="" data-linenumber="161">
1395
1425
 
1396
1426
 
1397
1427
  <code class="ruby"> end</code>
1398
1428
  </li>
1399
1429
 
1400
- <li class="never" data-hits="" data-linenumber="157">
1430
+ <li class="never" data-hits="" data-linenumber="162">
1401
1431
 
1402
1432
 
1403
1433
  <code class="ruby">end</code>
@@ -2147,409 +2177,433 @@
2147
2177
  <code class="ruby"></code>
2148
2178
  </li>
2149
2179
 
2150
- <li class="covered" data-hits="1" data-linenumber="86">
2180
+ <li class="never" data-hits="" data-linenumber="86">
2181
+
2182
+
2183
+ <code class="ruby"> # @macro [attack] configurable_property</code>
2184
+ </li>
2185
+
2186
+ <li class="never" data-hits="" data-linenumber="87">
2187
+
2188
+
2189
+ <code class="ruby"> # @method $1</code>
2190
+ </li>
2191
+
2192
+ <li class="never" data-hits="" data-linenumber="88">
2193
+
2194
+
2195
+ <code class="ruby"> # @return [$2] The default value of $1</code>
2196
+ </li>
2197
+
2198
+ <li class="never" data-hits="" data-linenumber="89">
2199
+
2200
+
2201
+ <code class="ruby"> # @method $1=</code>
2202
+ </li>
2203
+
2204
+ <li class="covered" data-hits="1" data-linenumber="90">
2151
2205
  <span class="hits">1</span>
2152
2206
 
2153
2207
  <code class="ruby"> def setting(name, default_value = RequiredField)</code>
2154
2208
  </li>
2155
2209
 
2156
- <li class="covered" data-hits="18" data-linenumber="87">
2210
+ <li class="covered" data-hits="18" data-linenumber="91">
2157
2211
  <span class="hits">18</span>
2158
2212
 
2159
2213
  <code class="ruby"> name = name.to_sym</code>
2160
2214
  </li>
2161
2215
 
2162
- <li class="covered" data-hits="18" data-linenumber="88">
2216
+ <li class="covered" data-hits="18" data-linenumber="92">
2163
2217
  <span class="hits">18</span>
2164
2218
 
2165
2219
  <code class="ruby"> attr_accessor(name)</code>
2166
2220
  </li>
2167
2221
 
2168
- <li class="covered" data-hits="18" data-linenumber="89">
2222
+ <li class="covered" data-hits="18" data-linenumber="93">
2169
2223
  <span class="hits">18</span>
2170
2224
 
2171
2225
  <code class="ruby"> if default_values.has_key?(name) and default_values[name] != default_value</code>
2172
2226
  </li>
2173
2227
 
2174
- <li class="missed" data-hits="0" data-linenumber="90">
2228
+ <li class="missed" data-hits="0" data-linenumber="94">
2175
2229
 
2176
2230
 
2177
2231
  <code class="ruby"> warn &quot;Changing default value of #{self.name}##{name} from #{default_values[name].inspect} to #{default_value.inspect}&quot;</code>
2178
2232
  </li>
2179
2233
 
2180
- <li class="never" data-hits="" data-linenumber="91">
2234
+ <li class="never" data-hits="" data-linenumber="95">
2181
2235
 
2182
2236
 
2183
2237
  <code class="ruby"> end</code>
2184
2238
  </li>
2185
2239
 
2186
- <li class="covered" data-hits="18" data-linenumber="92">
2240
+ <li class="covered" data-hits="18" data-linenumber="96">
2187
2241
  <span class="hits">18</span>
2188
2242
 
2189
2243
  <code class="ruby"> default_values[name] = default_value</code>
2190
2244
  </li>
2191
2245
 
2192
- <li class="never" data-hits="" data-linenumber="93">
2246
+ <li class="never" data-hits="" data-linenumber="97">
2193
2247
 
2194
2248
 
2195
2249
  <code class="ruby"> end</code>
2196
2250
  </li>
2197
2251
 
2198
- <li class="never" data-hits="" data-linenumber="94">
2252
+ <li class="never" data-hits="" data-linenumber="98">
2199
2253
 
2200
2254
 
2201
2255
  <code class="ruby"></code>
2202
2256
  </li>
2203
2257
 
2204
- <li class="covered" data-hits="1" data-linenumber="95">
2258
+ <li class="covered" data-hits="1" data-linenumber="99">
2205
2259
  <span class="hits">1</span>
2206
2260
 
2207
2261
  <code class="ruby"> def settings(hash)</code>
2208
2262
  </li>
2209
2263
 
2210
- <li class="covered" data-hits="1" data-linenumber="96">
2264
+ <li class="covered" data-hits="1" data-linenumber="100">
2211
2265
  <span class="hits">1</span>
2212
2266
 
2213
2267
  <code class="ruby"> hash.each_pair do |name, value|</code>
2214
2268
  </li>
2215
2269
 
2216
- <li class="covered" data-hits="2" data-linenumber="97">
2270
+ <li class="covered" data-hits="2" data-linenumber="101">
2217
2271
  <span class="hits">2</span>
2218
2272
 
2219
2273
  <code class="ruby"> setting(name, value)</code>
2220
2274
  </li>
2221
2275
 
2222
- <li class="never" data-hits="" data-linenumber="98">
2276
+ <li class="never" data-hits="" data-linenumber="102">
2223
2277
 
2224
2278
 
2225
2279
  <code class="ruby"> end</code>
2226
2280
  </li>
2227
2281
 
2228
- <li class="covered" data-hits="1" data-linenumber="99">
2282
+ <li class="covered" data-hits="1" data-linenumber="103">
2229
2283
  <span class="hits">1</span>
2230
2284
 
2231
2285
  <code class="ruby"> return self</code>
2232
2286
  </li>
2233
2287
 
2234
- <li class="never" data-hits="" data-linenumber="100">
2288
+ <li class="never" data-hits="" data-linenumber="104">
2235
2289
 
2236
2290
 
2237
2291
  <code class="ruby"> end</code>
2238
2292
  </li>
2239
2293
 
2240
- <li class="never" data-hits="" data-linenumber="101">
2294
+ <li class="never" data-hits="" data-linenumber="105">
2241
2295
 
2242
2296
 
2243
2297
  <code class="ruby"></code>
2244
2298
  </li>
2245
2299
 
2246
- <li class="covered" data-hits="1" data-linenumber="102">
2300
+ <li class="covered" data-hits="1" data-linenumber="106">
2247
2301
  <span class="hits">1</span>
2248
2302
 
2249
2303
  <code class="ruby"> def included(mod)</code>
2250
2304
  </li>
2251
2305
 
2252
- <li class="covered" data-hits="5" data-linenumber="103">
2306
+ <li class="covered" data-hits="5" data-linenumber="107">
2253
2307
  <span class="hits">5</span>
2254
2308
 
2255
2309
  <code class="ruby"> mod.extend ClassMethods</code>
2256
2310
  </li>
2257
2311
 
2258
- <li class="never" data-hits="" data-linenumber="104">
2312
+ <li class="never" data-hits="" data-linenumber="108">
2259
2313
 
2260
2314
 
2261
2315
  <code class="ruby"> end</code>
2262
2316
  </li>
2263
2317
 
2264
- <li class="never" data-hits="" data-linenumber="105">
2318
+ <li class="never" data-hits="" data-linenumber="109">
2265
2319
 
2266
2320
 
2267
2321
  <code class="ruby"> end</code>
2268
2322
  </li>
2269
2323
 
2270
- <li class="covered" data-hits="1" data-linenumber="106">
2324
+ <li class="covered" data-hits="1" data-linenumber="110">
2271
2325
  <span class="hits">1</span>
2272
2326
 
2273
2327
  <code class="ruby"> extend ClassMethods</code>
2274
2328
  </li>
2275
2329
 
2276
- <li class="never" data-hits="" data-linenumber="107">
2330
+ <li class="never" data-hits="" data-linenumber="111">
2277
2331
 
2278
2332
 
2279
2333
  <code class="ruby"></code>
2280
2334
  </li>
2281
2335
 
2282
- <li class="covered" data-hits="1" data-linenumber="108">
2336
+ <li class="covered" data-hits="1" data-linenumber="112">
2283
2337
  <span class="hits">1</span>
2284
2338
 
2285
2339
  <code class="ruby"> def copy_settings_to(other)</code>
2286
2340
  </li>
2287
2341
 
2288
- <li class="covered" data-hits="1" data-linenumber="109">
2342
+ <li class="covered" data-hits="1" data-linenumber="113">
2289
2343
  <span class="hits">1</span>
2290
2344
 
2291
2345
  <code class="ruby"> self.class.copy_settings(self, other)</code>
2292
2346
  </li>
2293
2347
 
2294
- <li class="never" data-hits="" data-linenumber="110">
2348
+ <li class="never" data-hits="" data-linenumber="114">
2295
2349
 
2296
2350
 
2297
2351
  <code class="ruby"> end</code>
2298
2352
  </li>
2299
2353
 
2300
- <li class="never" data-hits="" data-linenumber="111">
2354
+ <li class="never" data-hits="" data-linenumber="115">
2301
2355
 
2302
2356
 
2303
2357
  <code class="ruby"></code>
2304
2358
  </li>
2305
2359
 
2306
- <li class="covered" data-hits="1" data-linenumber="112">
2360
+ <li class="covered" data-hits="1" data-linenumber="116">
2307
2361
  <span class="hits">1</span>
2308
2362
 
2309
2363
  <code class="ruby"> def setup_defaults</code>
2310
2364
  </li>
2311
2365
 
2312
- <li class="covered" data-hits="10" data-linenumber="113">
2366
+ <li class="covered" data-hits="10" data-linenumber="117">
2313
2367
  <span class="hits">10</span>
2314
2368
 
2315
2369
  <code class="ruby"> self.class.set_defaults_on(self)</code>
2316
2370
  </li>
2317
2371
 
2318
- <li class="covered" data-hits="10" data-linenumber="114">
2372
+ <li class="covered" data-hits="10" data-linenumber="118">
2319
2373
  <span class="hits">10</span>
2320
2374
 
2321
2375
  <code class="ruby"> self</code>
2322
2376
  </li>
2323
2377
 
2324
- <li class="never" data-hits="" data-linenumber="115">
2378
+ <li class="never" data-hits="" data-linenumber="119">
2325
2379
 
2326
2380
 
2327
2381
  <code class="ruby"> end</code>
2328
2382
  </li>
2329
2383
 
2330
- <li class="never" data-hits="" data-linenumber="116">
2384
+ <li class="never" data-hits="" data-linenumber="120">
2331
2385
 
2332
2386
 
2333
2387
  <code class="ruby"></code>
2334
2388
  </li>
2335
2389
 
2336
- <li class="covered" data-hits="1" data-linenumber="117">
2390
+ <li class="covered" data-hits="1" data-linenumber="121">
2337
2391
  <span class="hits">1</span>
2338
2392
 
2339
2393
  <code class="ruby"> def check_required</code>
2340
2394
  </li>
2341
2395
 
2342
- <li class="covered" data-hits="9" data-linenumber="118">
2396
+ <li class="covered" data-hits="9" data-linenumber="122">
2343
2397
  <span class="hits">9</span>
2344
2398
 
2345
2399
  <code class="ruby"> missing = self.class.missing_required_fields_on(self)</code>
2346
2400
  </li>
2347
2401
 
2348
- <li class="covered" data-hits="9" data-linenumber="119">
2402
+ <li class="covered" data-hits="9" data-linenumber="123">
2349
2403
  <span class="hits">9</span>
2350
2404
 
2351
2405
  <code class="ruby"> unless missing.empty?</code>
2352
2406
  </li>
2353
2407
 
2354
- <li class="covered" data-hits="5" data-linenumber="120">
2408
+ <li class="covered" data-hits="5" data-linenumber="124">
2355
2409
  <span class="hits">5</span>
2356
2410
 
2357
2411
  <code class="ruby"> raise &quot;Required field#{missing.length &gt; 1 ? &quot;s&quot; : &quot;&quot;} #{missing.map{|field| field.to_s.inspect}.join(&quot;, &quot;)} unset on #{self.inspect}&quot;</code>
2358
2412
  </li>
2359
2413
 
2360
- <li class="never" data-hits="" data-linenumber="121">
2414
+ <li class="never" data-hits="" data-linenumber="125">
2361
2415
 
2362
2416
 
2363
2417
  <code class="ruby"> end</code>
2364
2418
  </li>
2365
2419
 
2366
- <li class="covered" data-hits="7" data-linenumber="122">
2420
+ <li class="covered" data-hits="7" data-linenumber="126">
2367
2421
  <span class="hits">7</span>
2368
2422
 
2369
2423
  <code class="ruby"> self</code>
2370
2424
  </li>
2371
2425
 
2372
- <li class="never" data-hits="" data-linenumber="123">
2426
+ <li class="never" data-hits="" data-linenumber="127">
2373
2427
 
2374
2428
 
2375
2429
  <code class="ruby"> end</code>
2376
2430
  </li>
2377
2431
 
2378
- <li class="never" data-hits="" data-linenumber="124">
2432
+ <li class="never" data-hits="" data-linenumber="128">
2379
2433
 
2380
2434
 
2381
2435
  <code class="ruby"></code>
2382
2436
  </li>
2383
2437
 
2384
- <li class="covered" data-hits="1" data-linenumber="125">
2438
+ <li class="covered" data-hits="1" data-linenumber="129">
2385
2439
  <span class="hits">1</span>
2386
2440
 
2387
2441
  <code class="ruby"> def setting(name, default_value = nil)</code>
2388
2442
  </li>
2389
2443
 
2390
- <li class="covered" data-hits="3" data-linenumber="126">
2444
+ <li class="covered" data-hits="3" data-linenumber="130">
2391
2445
  <span class="hits">3</span>
2392
2446
 
2393
2447
  <code class="ruby"> self.class.setting(name, default_value)</code>
2394
2448
  </li>
2395
2449
 
2396
- <li class="covered" data-hits="3" data-linenumber="127">
2450
+ <li class="covered" data-hits="3" data-linenumber="131">
2397
2451
  <span class="hits">3</span>
2398
2452
 
2399
2453
  <code class="ruby"> instance_variable_set(&quot;@#{name}&quot;, default_value)</code>
2400
2454
  </li>
2401
2455
 
2402
- <li class="never" data-hits="" data-linenumber="128">
2456
+ <li class="never" data-hits="" data-linenumber="132">
2403
2457
 
2404
2458
 
2405
2459
  <code class="ruby"> end</code>
2406
2460
  </li>
2407
2461
 
2408
- <li class="never" data-hits="" data-linenumber="129">
2462
+ <li class="never" data-hits="" data-linenumber="133">
2409
2463
 
2410
2464
 
2411
2465
  <code class="ruby"></code>
2412
2466
  </li>
2413
2467
 
2414
- <li class="covered" data-hits="1" data-linenumber="130">
2468
+ <li class="covered" data-hits="1" data-linenumber="134">
2415
2469
  <span class="hits">1</span>
2416
2470
 
2417
2471
  <code class="ruby"> def settings(hash)</code>
2418
2472
  </li>
2419
2473
 
2420
- <li class="covered" data-hits="2" data-linenumber="131">
2474
+ <li class="covered" data-hits="2" data-linenumber="135">
2421
2475
  <span class="hits">2</span>
2422
2476
 
2423
2477
  <code class="ruby"> hash.each_pair do |name, value|</code>
2424
2478
  </li>
2425
2479
 
2426
- <li class="covered" data-hits="3" data-linenumber="132">
2480
+ <li class="covered" data-hits="3" data-linenumber="136">
2427
2481
  <span class="hits">3</span>
2428
2482
 
2429
2483
  <code class="ruby"> setting(name, value)</code>
2430
2484
  </li>
2431
2485
 
2432
- <li class="never" data-hits="" data-linenumber="133">
2486
+ <li class="never" data-hits="" data-linenumber="137">
2433
2487
 
2434
2488
 
2435
2489
  <code class="ruby"> end</code>
2436
2490
  </li>
2437
2491
 
2438
- <li class="covered" data-hits="2" data-linenumber="134">
2492
+ <li class="covered" data-hits="2" data-linenumber="138">
2439
2493
  <span class="hits">2</span>
2440
2494
 
2441
2495
  <code class="ruby"> return self</code>
2442
2496
  </li>
2443
2497
 
2444
- <li class="never" data-hits="" data-linenumber="135">
2498
+ <li class="never" data-hits="" data-linenumber="139">
2445
2499
 
2446
2500
 
2447
2501
  <code class="ruby"> end</code>
2448
2502
  </li>
2449
2503
 
2450
- <li class="never" data-hits="" data-linenumber="136">
2504
+ <li class="never" data-hits="" data-linenumber="140">
2451
2505
 
2452
2506
 
2453
2507
  <code class="ruby"></code>
2454
2508
  </li>
2455
2509
 
2456
- <li class="covered" data-hits="1" data-linenumber="137">
2510
+ <li class="covered" data-hits="1" data-linenumber="141">
2457
2511
  <span class="hits">1</span>
2458
2512
 
2459
2513
  <code class="ruby"> def required_fields(*names)</code>
2460
2514
  </li>
2461
2515
 
2462
- <li class="covered" data-hits="1" data-linenumber="138">
2516
+ <li class="covered" data-hits="1" data-linenumber="142">
2463
2517
  <span class="hits">1</span>
2464
2518
 
2465
2519
  <code class="ruby"> self.class.required_fields(*names)</code>
2466
2520
  </li>
2467
2521
 
2468
- <li class="covered" data-hits="1" data-linenumber="139">
2522
+ <li class="covered" data-hits="1" data-linenumber="143">
2469
2523
  <span class="hits">1</span>
2470
2524
 
2471
2525
  <code class="ruby"> self</code>
2472
2526
  </li>
2473
2527
 
2474
- <li class="never" data-hits="" data-linenumber="140">
2528
+ <li class="never" data-hits="" data-linenumber="144">
2475
2529
 
2476
2530
 
2477
2531
  <code class="ruby"> end</code>
2478
2532
  </li>
2479
2533
 
2480
- <li class="covered" data-hits="1" data-linenumber="141">
2534
+ <li class="covered" data-hits="1" data-linenumber="145">
2481
2535
  <span class="hits">1</span>
2482
2536
 
2483
2537
  <code class="ruby"> alias required_field required_fields</code>
2484
2538
  </li>
2485
2539
 
2486
- <li class="never" data-hits="" data-linenumber="142">
2540
+ <li class="never" data-hits="" data-linenumber="146">
2487
2541
 
2488
2542
 
2489
2543
  <code class="ruby"></code>
2490
2544
  </li>
2491
2545
 
2492
- <li class="covered" data-hits="1" data-linenumber="143">
2546
+ <li class="covered" data-hits="1" data-linenumber="147">
2493
2547
  <span class="hits">1</span>
2494
2548
 
2495
2549
  <code class="ruby"> def nil_fields(*names)</code>
2496
2550
  </li>
2497
2551
 
2498
- <li class="missed" data-hits="0" data-linenumber="144">
2552
+ <li class="missed" data-hits="0" data-linenumber="148">
2499
2553
 
2500
2554
 
2501
2555
  <code class="ruby"> self.class.nil_fields(*names)</code>
2502
2556
  </li>
2503
2557
 
2504
- <li class="missed" data-hits="0" data-linenumber="145">
2558
+ <li class="missed" data-hits="0" data-linenumber="149">
2505
2559
 
2506
2560
 
2507
2561
  <code class="ruby"> self</code>
2508
2562
  </li>
2509
2563
 
2510
- <li class="never" data-hits="" data-linenumber="146">
2564
+ <li class="never" data-hits="" data-linenumber="150">
2511
2565
 
2512
2566
 
2513
2567
  <code class="ruby"> end</code>
2514
2568
  </li>
2515
2569
 
2516
- <li class="covered" data-hits="1" data-linenumber="147">
2570
+ <li class="covered" data-hits="1" data-linenumber="151">
2517
2571
  <span class="hits">1</span>
2518
2572
 
2519
2573
  <code class="ruby"> alias nil_field nil_fields</code>
2520
2574
  </li>
2521
2575
 
2522
- <li class="never" data-hits="" data-linenumber="148">
2576
+ <li class="never" data-hits="" data-linenumber="152">
2523
2577
 
2524
2578
 
2525
2579
  <code class="ruby"></code>
2526
2580
  </li>
2527
2581
 
2528
- <li class="covered" data-hits="1" data-linenumber="149">
2582
+ <li class="covered" data-hits="1" data-linenumber="153">
2529
2583
  <span class="hits">1</span>
2530
2584
 
2531
2585
  <code class="ruby"> class Struct</code>
2532
2586
  </li>
2533
2587
 
2534
- <li class="covered" data-hits="1" data-linenumber="150">
2588
+ <li class="covered" data-hits="1" data-linenumber="154">
2535
2589
  <span class="hits">1</span>
2536
2590
 
2537
2591
  <code class="ruby"> include Configurable</code>
2538
2592
  </li>
2539
2593
 
2540
- <li class="never" data-hits="" data-linenumber="151">
2594
+ <li class="never" data-hits="" data-linenumber="155">
2541
2595
 
2542
2596
 
2543
2597
  <code class="ruby"> end</code>
2544
2598
  </li>
2545
2599
 
2546
- <li class="never" data-hits="" data-linenumber="152">
2600
+ <li class="never" data-hits="" data-linenumber="156">
2547
2601
 
2548
2602
 
2549
2603
  <code class="ruby"> end</code>
2550
2604
  </li>
2551
2605
 
2552
- <li class="never" data-hits="" data-linenumber="153">
2606
+ <li class="never" data-hits="" data-linenumber="157">
2553
2607
 
2554
2608
 
2555
2609
  <code class="ruby">end</code>
@@ -2942,7 +2996,7 @@
2942
2996
  <li class="covered" data-hits="1" data-linenumber="29">
2943
2997
  <span class="hits">1</span>
2944
2998
 
2945
- <code class="ruby"> task =task_class.define_task(*task_args) do</code>
2999
+ <code class="ruby"> task = task_class.define_task(*task_args) do</code>
2946
3000
  </li>
2947
3001
 
2948
3002
  <li class="covered" data-hits="1" data-linenumber="30">