File Coverage

blib/lib/SVN/Class/File.pm
Criterion Covered Total %
statement 12 25 48.0
branch 0 6 0.0
condition 0 2 0.0
subroutine 4 6 66.6
pod 2 2 100.0
total 18 41 43.9


line stmt bran cond sub pod time code
1             package SVN::Class::File;
2 2     2   93 use strict;
  2         6  
  2         96  
3 2     2   14 use warnings;
  2         3  
  2         89  
4 2     2   13 use base qw( Path::Class::File::Stat SVN::Class );
  2         3  
  2         2373  
5 2     2   3311 use SVN::Class::Dir;
  2         4  
  2         714  
6              
7             our $VERSION = '0.17';
8              
9             # override Path::Class stuff to use SVN::Class instead
10             sub new {
11 0     0 1   my $self = Path::Class::Entity::new(shift);
12 0           my $file = pop();
13 0           my @dirs = @_;
14              
15 0           my ( $volume, $dirs, $base ) = $self->_spec->splitpath($file);
16              
17 0 0         if ( length $dirs ) {
18 0           push @dirs, $self->_spec->catpath( $volume, $dirs, '' );
19             }
20              
21 0 0         $self->{dir} = @dirs ? SVN::Class::Dir->new(@dirs) : undef;
22 0           $self->{file} = $base;
23 0   0       $self->{svn} ||= 'svn';
24              
25 0           return $self;
26             }
27              
28             sub dir {
29 0     0 1   my $self = shift;
30 0 0         return $self->{dir} if defined $self->{dir};
31 0           return SVN::Class::Dir->new( $self->_spec->curdir );
32             }
33              
34             1;
35              
36             __END__