view release on metacpan or search on metacpan
lib/App/ArchiveDevelCover.pm view on Meta::CPAN
my @list = $self->from->parent->dir_list;
return $list[-1] || 'unknown project';
}
has 'coverage_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);
sub _build_coverage_html {
my $self = shift;
if (-e $self->from->file('coverage.html')) {
return $self->from->file('coverage.html');
}
else {
say "Cannot find 'coverage.html' in ".$self->from.'. Aborting';
exit;
}
}
has 'runtime' => (is=>'ro',isa=>'DateTime',lazy_build=>1,traits=> ['NoGetopt'],);
sub _build_runtime {
my $self = shift;
return DateTime->from_epoch(epoch=>$self->coverage_html->stat->mtime);
}
has 'archive_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);
sub _build_archive_html {
lib/App/ArchiveDevelCover.pm view on Meta::CPAN
$self->update_index;
}
sub archive {
my $self = shift;
my $from = $self->from;
my $target = $self->to->subdir($self->runtime->iso8601);
if (-e $target) {
say "This coverage report has already been archived.";
exit;
}
$target->mkpath;
my $target_string = $target->stringify;
while (my $f = $from->next) {
next unless $f=~/\.(html|css)$/;
copy($f->stringify,$target_string) || die "Cannot copy $from to $target_string: $!";
}
say "archived coverage reports at $target_string";
}
sub update_index {
my $self = shift;
my $te = HTML::TableExtract->new( headers => [qw(stm sub total)] );
$te->parse(scalar $self->coverage_html->slurp);
my $rows =$te->rows;
my $last_row = $rows->[-1];
lib/App/ArchiveDevelCover.pm view on Meta::CPAN
close $fh;
unless (-e $self->to->file('cover.css')) {
copy($self->from->file('cover.css'),$self->to->file('cover.css')) || warn "Cannot copy cover.css: $!";
}
}
sub update_archive_db {
my ($self, $last_row) = @_;
my $dbw = $self->archive_db->open(">>") || warn "Can't write archive.db: $!";
say $dbw join(';',$self->runtime->iso8601,@$last_row);
close $dbw;
}
sub generate_diff {
my $self = shift;
my $prev = $self->previous_stats;
return unless $prev->[0];
my $te_new = HTML::TableExtract->new( headers => [qw(file stm sub total)] );
t/testdata/run_1/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">11</td><td colspan="6"></td></tr><tr><td class="h">12</td><td></td><td></td><td></td><td></td><td></td><td class="s">with 'MooseX::Getopt';</td></tr>
<tr><td class="h">13</td><td colspan="6"></td></tr><tr><td class="h">14</td><td></td><td></td><td></td><td></td><td></td><td class="s">has [qw(from to)] => (is=>'ro',isa=>'Path::Class::Dir',coerce=>1,required=>1,);</td>...
<tr><td class="h">15</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'project' => (is => 'ro', isa=>'Str');</td></tr>
<tr><td class="h">16</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'coverage_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);</td></tr>
<tr><td class="h">17</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_coverage_html {</td></tr>
<tr><td class="h">18</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L18">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">19</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L19">0</a></div></td><td></td><td></td><td></td><td class="s"> if (-e $self->from-&g...
<tr><td class="h">20</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> return $self->from->file('coverage.html');</td></tr>
<tr><td class="h">21</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">22</td><td></td><td></td><td></td><td></td><td></td><td class="s"> else {</td></tr>
<tr><td class="h">23</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> say "Cannot find 'coverage.html' in ".$self->from.'. Aborting';</t...
<tr><td class="h">24</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> exit;</td></tr>
<tr><td class="h">25</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">26</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">27</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'runtime' => (is=>'ro',isa=>'DateTime',lazy_build=>1,traits=> ['NoGetopt'],);</td></tr>
<tr><td class="h">28</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_runtime {</td></tr>
<tr><td class="h">29</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L29">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">30</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> return DateTime->from_epoch(epoch=>$self->coverage_html->stat->mtime);</td></tr>
<tr><td class="h">31</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">32</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'archive_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);</td></tr>
<tr><td class="h">33</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_archive_html {</td></tr>
t/testdata/run_1/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">61</td><td colspan="6"></td></tr><tr><td class="h">62</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub run {</td></tr>
<tr><td class="h">63</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L63">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">64</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $self->archive;</td></tr>
<tr><td class="h">65</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $self->update_index;</td></tr>
<tr><td class="h">66</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">67</td><td colspan="6"></td></tr><tr><td class="h">68</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub archive {</td></tr>
<tr><td class="h">69</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L69">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">70</td><td colspan="6"></td></tr><tr><td class="h">71</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $from = $self->from;</td></tr>
<tr><td class="h">72</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $target = $self->to->subdir($self->runtime->iso8601);</td></tr>
<tr><td class="h">73</td><td colspan="6"></td></tr><tr><td class="h">74</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L74">0</a></div></td><td></td><td></td><td></td><td class="...
<tr><td class="h">75</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> say "This coverage report has already been archived.";</td></tr>
<tr><td class="h">76</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> exit;</td></tr>
<tr><td class="h">77</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">78</td><td colspan="6"></td></tr><tr><td class="h">79</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $target->mkpath;</td></tr>
<tr><td class="h">80</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $target_string = $target->stringify;</td></tr>
<tr><td class="h">81</td><td colspan="6"></td></tr><tr><td class="h">82</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> while (my $f = $from->next) {</td></tr>
<tr><td class="h">83</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L83">0</a></div></td><td></td><td></td><td></td><td class="s"> ...
<tr><td class="h">84</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L84">0</a></div></td><td></td><td></td><td></td><td class="s"> ...
<tr><td class="h">85</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">86</td><td colspan="6"></td></tr><tr><td class="h">87</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> say "archived coverage reports at $target_string";</td></t...
<tr><td class="h">88</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">89</td><td colspan="6"></td></tr><tr><td class="h">90</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub update_index {</td></tr>
<tr><td class="h">91</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L91">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">92</td><td colspan="6"></td></tr><tr><td class="h">93</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $te = HTML::TableExtract->new( headers => [qw(stm sub total...
<tr><td class="h">94</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $te->parse(scalar $self->coverage_html->slurp);</td></tr>
<tr><td class="h">95</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $rows =$te->rows;</td></tr>
<tr><td class="h">96</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $last_row = $rows->[-1];</td></tr>
<tr><td class="h">97</td><td colspan="6"></td></tr><tr><td class="h">98</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $self->update_archive_html($last_row);</td></tr>
<tr><td class="h">99</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> $self->update_archive_db($last_row);</td></tr>
<tr><td class="h">100</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
t/testdata/run_1/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">137</td><td colspan="6"></td></tr><tr><td class="h">138</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $fh = $self->archive_html->openw;</td></tr>
<tr><td class="h">139</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> print $fh $archive;</td></tr>
<tr><td class="h">140</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> close $fh;</td></tr>
<tr><td class="h">141</td><td colspan="6"></td></tr><tr><td class="h">142</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L142">0</a></div></td><td></td><td></td><td></td><td clas...
<tr><td class="h">143</td><td><div class="c0">0</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L143">0</a></div></td><td></td><td></td><td></td><td class="s"> &nbs...
<tr><td class="h">144</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">145</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">146</td><td colspan="6"></td></tr><tr><td class="h">147</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub update_archive_db {</td></tr>
<tr><td class="h">148</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L148">0</a></div></td><td></td><td class="s"> my ($self, $last_row) = @_;</t...
<tr><td class="h">149</td><td><div class="c0">0</div></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--condition.html#L149">0</a></div></td><td></td><td></td><td class="s"> my $dbw = $self->archive_db-...
<tr><td class="h">150</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> say $dbw join(';',$self->runtime->iso8601,@$last_row);</td></tr>
<tr><td class="h">151</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> close $dbw;</td></tr>
<tr><td class="h">152</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">153</td><td colspan="6"></td></tr><tr><td class="h">154</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _archive_template {</td></tr>
<tr><td class="h">155</td><td><div class="c0">0</div></td><td></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L155">0</a></div></td><td></td><td class="s"> my $self = shift;</td></tr>
<tr><td class="h">156</td><td><div class="c0">0</div></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--condition.html#L156">0</a></div></td><td></td><td></td><td class="s"> my $name = $self->project ||...
<tr><td class="h">157</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $class = ref($self);</td></tr>
<tr><td class="h">158</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> my $version = $class->VERSION;</td></tr>
<tr><td class="h">159</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td></td><td class="s"> return <<"EOTMPL";</td></tr>
<tr><td class="h">160</td><td></td><td></td><td></td><td></td><td></td><td class="s"><!DOCTYPE html</td></tr>
<tr><td class="h">161</td><td></td><td></td><td></td><td></td><td></td><td class="s"> PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"</td></tr>
t/testdata/run_2/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">11</td><td colspan="6"></td></tr><tr><td class="h">12</td><td></td><td></td><td></td><td></td><td></td><td class="s">with 'MooseX::Getopt';</td></tr>
<tr><td class="h">13</td><td colspan="6"></td></tr><tr><td class="h">14</td><td></td><td></td><td></td><td></td><td></td><td class="s">has [qw(from to)] => (is=>'ro',isa=>'Path::Class::Dir',coerce=>1,required=>1,);</td>...
<tr><td class="h">15</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'project' => (is => 'ro', isa=>'Str');</td></tr>
<tr><td class="h">16</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'coverage_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);</td></tr>
<tr><td class="h">17</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_coverage_html {</td></tr>
<tr><td class="h">18</td><td><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L18">2</a></div></td><td><div>26</div></td><td class="s"> my $self = shift;</...
<tr><td class="h">19</td><td><div class="c3">2</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L19">0</a></div></td><td></td><td></td><td><div>15</div></td><td class="s"> if (-e $sel...
<tr><td class="h">20</td><td><div class="c3">2</div></td><td></td><td></td><td></td><td><div>854</div></td><td class="s"> return $self->from->file('coverage.html');</td></tr>
<tr><td class="h">21</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">22</td><td></td><td></td><td></td><td></td><td></td><td class="s"> else {</td></tr>
<tr><td class="h">23</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td><div>0</div></td><td class="s"> say "Cannot find 'coverage.html' in ".$self->from.'. Abort...
<tr><td class="h">24</td><td><div class="c0">0</div></td><td></td><td></td><td></td><td><div>0</div></td><td class="s"> exit;</td></tr>
<tr><td class="h">25</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">26</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">27</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'runtime' => (is=>'ro',isa=>'DateTime',lazy_build=>1,traits=> ['NoGetopt'],);</td></tr>
<tr><td class="h">28</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_runtime {</td></tr>
<tr><td class="h">29</td><td><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L29">2</a></div></td><td><div>44</div></td><td class="s"> my $self = shift;</...
<tr><td class="h">30</td><td><div class="c3">2</div></td><td></td><td></td><td></td><td><div>17</div></td><td class="s"> return DateTime->from_epoch(epoch=>$self->coverage_html->stat->mtime);</td></tr>
<tr><td class="h">31</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">32</td><td></td><td></td><td></td><td></td><td></td><td class="s">has 'archive_html' => (is=>'ro',isa=>'Path::Class::File',lazy_build=>1,traits=> ['NoGetopt']);</td></tr>
<tr><td class="h">33</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _build_archive_html {</td></tr>
t/testdata/run_2/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">61</td><td colspan="6"></td></tr><tr><td class="h">62</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub run {</td></tr>
<tr><td class="h">63</td><td><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L63">2</a></div></td><td><div>242873</div></td><td class="s"> my $self = shif...
<tr><td class="h">64</td><td><div class="c3">2</div></td><td></td><td></td><td></td><td><div>18</div></td><td class="s"> $self->archive;</td></tr>
<tr><td class="h">65</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>5</div></td><td class="s"> $self->update_index;</td></tr>
<tr><td class="h">66</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">67</td><td colspan="6"></td></tr><tr><td class="h">68</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub archive {</td></tr>
<tr><td class="h">69</td><td><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L69">2</a></div></td><td><div>5</div></td><td class="s"> my $self = shift;</t...
<tr><td class="h">70</td><td colspan="6"></td></tr><tr><td class="h">71</td><td><div class="c3">2</div></td><td></td><td></td><td></td><td><div>19</div></td><td class="s"> my $from = $self->from;</td></tr>
<tr><td class="h">72</td><td><div class="c3">2</div></td><td></td><td></td><td></td><td><div>27</div></td><td class="s"> my $target = $self->to->subdir($self->runtime->iso8601);</td></tr>
<tr><td class="h">73</td><td colspan="6"></td></tr><tr><td class="h">74</td><td><div class="c3">2</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L74">0</a></div></td><td></td><td></td><td><div>2412</div><...
<tr><td class="h">75</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>47</div></td><td class="s"> say "This coverage report has already been archived.";</td></tr>
<tr><td class="h">76</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>10</div></td><td class="s"> exit;</td></tr>
<tr><td class="h">77</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">78</td><td colspan="6"></td></tr><tr><td class="h">79</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>39</div></td><td class="s"> $target->mkpath;</td></tr>
<tr><td class="h">80</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>144</div></td><td class="s"> my $target_string = $target->stringify;</td></tr>
<tr><td class="h">81</td><td colspan="6"></td></tr><tr><td class="h">82</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>31</div></td><td class="s"> while (my $f = $from->next) {</td></tr>
<tr><td class="h">83</td><td><div class="c3">11</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L83">0</a></div></td><td></td><td></td><td><div>5766</div></td><td class="s"> &n...
<tr><td class="h">84</td><td><div class="c3">6</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L84">0</a></div></td><td></td><td></td><td><div>290</div></td><td class="s"> &nbs...
<tr><td class="h">85</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">86</td><td colspan="6"></td></tr><tr><td class="h">87</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>286</div></td><td class="s"> say "archived coverage reports at $target_string&...
<tr><td class="h">88</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">89</td><td colspan="6"></td></tr><tr><td class="h">90</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub update_index {</td></tr>
<tr><td class="h">91</td><td><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L91">1</a></div></td><td><div>3</div></td><td class="s"> my $self = shift;</t...
<tr><td class="h">92</td><td colspan="6"></td></tr><tr><td class="h">93</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>15</div></td><td class="s"> my $te = HTML::TableExtract->new( headers => [qw(...
<tr><td class="h">94</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>234</div></td><td class="s"> $te->parse(scalar $self->coverage_html->slurp);</td></tr>
<tr><td class="h">95</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>3154</div></td><td class="s"> my $rows =$te->rows;</td></tr>
<tr><td class="h">96</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>142</div></td><td class="s"> my $last_row = $rows->[-1];</td></tr>
<tr><td class="h">97</td><td colspan="6"></td></tr><tr><td class="h">98</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>4</div></td><td class="s"> $self->update_archive_html($last_row);</td></tr>
<tr><td class="h">99</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>1224</div></td><td class="s"> $self->update_archive_db($last_row);</td></tr>
<tr><td class="h">100</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
t/testdata/run_2/lib-App-ArchiveDevelCover-pm.html view on Meta::CPAN
<tr><td class="h">137</td><td colspan="6"></td></tr><tr><td class="h">138</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>8</div></td><td class="s"> my $fh = $self->archive_html->openw;</td></tr>
<tr><td class="h">139</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>205</div></td><td class="s"> print $fh $archive;</td></tr>
<tr><td class="h">140</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>10</div></td><td class="s"> close $fh;</td></tr>
<tr><td class="h">141</td><td colspan="6"></td></tr><tr><td class="h">142</td><td><div class="c3">1</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L142">0</a></div></td><td></td><td></td><td><div>8</div><...
<tr><td class="h">143</td><td><div class="c3">1</div></td><td><div class="c0" title="-/-"><a href="lib-App-ArchiveDevelCover-pm--branch.html#L143">0</a></div></td><td></td><td></td><td><div>369</div></td><td class="s"> &n...
<tr><td class="h">144</td><td></td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h">145</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">146</td><td colspan="6"></td></tr><tr><td class="h">147</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub update_archive_db {</td></tr>
<tr><td class="h">148</td><td><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L148">1</a></div></td><td><div>3</div></td><td class="s"> my ($self, $last_r...
<tr><td class="h">149</td><td><div class="c3">1</div></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--condition.html#L149">0</a></div></td><td></td><td><div>8</div></td><td class="s"> my $dbw = $self->...
<tr><td class="h">150</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>166</div></td><td class="s"> say $dbw join(';',$self->runtime->iso8601,@$last_row);</td></tr>
<tr><td class="h">151</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>86</div></td><td class="s"> close $dbw;</td></tr>
<tr><td class="h">152</td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">153</td><td colspan="6"></td></tr><tr><td class="h">154</td><td></td><td></td><td></td><td></td><td></td><td class="s">sub _archive_template {</td></tr>
<tr><td class="h">155</td><td><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="lib-App-ArchiveDevelCover-pm--subroutine.html#L155">1</a></div></td><td><div>2</div></td><td class="s"> my $self = shift;<...
<tr><td class="h">156</td><td><div class="c3">1</div></td><td></td><td><div class="c0"><a href="lib-App-ArchiveDevelCover-pm--condition.html#L156">50</a></div></td><td></td><td><div>8</div></td><td class="s"> my $name = $self-&...
<tr><td class="h">157</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>11</div></td><td class="s"> my $class = ref($self);</td></tr>
<tr><td class="h">158</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>18</div></td><td class="s"> my $version = $class->VERSION;</td></tr>
<tr><td class="h">159</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td><div>10</div></td><td class="s"> return <<"EOTMPL";</td></tr>
<tr><td class="h">160</td><td></td><td></td><td></td><td></td><td></td><td class="s"><!DOCTYPE html</td></tr>
<tr><td class="h">161</td><td></td><td></td><td></td><td></td><td></td><td class="s"> PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"</td></tr>