File Coverage

blib/lib/Gentoo/Probe/PkgFiles.pm
Criterion Covered Total %
statement 13 35 37.1
branch 0 10 0.0
condition n/a
subroutine 5 9 55.5
pod 0 5 0.0
total 18 59 30.5


line stmt bran cond sub pod time code
1             package Gentoo::Probe::PkgFiles;
2             our($VERSION)=q{1.0.6};
3             our(@ISA)=qw(Gentoo::Probe::Cmd);
4 4     4   3336 use strict;$|=1;
  4         6  
  4         142  
5              
6 4     4   512 use Gentoo::Probe::Cmd;
  4         23  
  4         21  
7 4     4   20 use Gentoo::Util;
  4         7  
  4         34  
8 4     4   1687 use IO::File;
  4         4507  
  4         2406  
9              
10              
11             our %fixed_args = (
12             installed=>1,
13             uninstalled=>0,
14             versions=>1,
15             builds=>0,
16             );
17             sub veto_args(%){
18 0     0 0 0 my ( $self, $args ) = @_;
19 0         0 for ( sort keys %fixed_args ) {
20 0 0       0 confess "$_ makes no sense here" if defined $args->{$_};
21 0         0 $self->{$_} = $fixed_args{$_};
22             };
23             };
24             sub files_output($$$@){
25 0     0 0 0 return $_[0]->output($_[2]);
26             };
27             sub pkg_output($$$@){
28 0     0 0 0 return $_[0]->output($_[1].":".$_[2]);
29             };
30             sub new(@){
31 2     2 0 37 my $self = Gentoo::Probe::Cmd::new(@_);
32 0 0         if ( $self->verbose() ) {
33 0           *do_output=*pkg_output;
34             } else {
35 0           *do_output=*files_output;
36             };
37 0           return $self;
38             };
39             sub accept($$$@) {
40 0     0 0   my $self = shift;
41 0           my $base = join("/",shift,shift);
42 0           local $\="";
43 0           for ( @_ ) {
44 0           my $fn = $self->vdb_dir()."/".$base . "-" . $_ . "/CONTENTS";
45 0 0         my $fh = IO::File->new($fn) or die "open:$fn:$!\n";
46 0           while(<$fh>){
47 0           chomp;
48 0 0         next unless s/^obj\s+//;
49 0 0         next unless s/\s.*//;
50 0           $self->do_output($base,$_);
51             };
52 0           close($fh);
53             };
54             };
55             1;