File Coverage

blib/lib/Config/Files/Simple/YAML.pm
Criterion Covered Total %
statement 17 22 77.2
branch 3 6 50.0
condition n/a
subroutine 5 5 100.0
pod 2 2 100.0
total 27 35 77.1


line stmt bran cond sub pod time code
1             package Config::Files::Simple::YAML;
2              
3             =encoding UTF-8
4            
5             =head1 NAME
6            
7             Config::Files::Simple::YAML - Yet another config file reader.
8              
9             =head1 VERSION
10              
11             version 0.02
12              
13             =cut
14              
15             our $VERSION = '0.02'; # VERSION
16              
17 2     2   60951 use utf8;
  2         2  
  2         12  
18 2     2   44 use strict;
  2         2  
  2         25  
19 2     2   6 use warnings;
  2         2  
  2         324  
20              
21             =head1 SUBROUTINES/METHODS
22              
23             =head2 new
24              
25             Constructor
26              
27             =cut
28              
29             sub new {
30 2     2 1 157 my $class = shift;
31 2         3 my $self = {};
32 2         8 bless $self, $class;
33             }
34              
35             =head2 config_file
36              
37             Read configuration file from given path.
38              
39             =cut
40              
41             sub config_file {
42 2 50   2 1 677 if ( !-f $_[1] ) {
43 0         0 require Carp;
44 0         0 Carp::cluck "could not find $_[1] file";
45 0         0 return undef;
46             }
47 2         843 require String::Any::Extensions;
48 2 50       736 if ( !String::Any::Extensions::include( $_[1], defined $_[2] ? $_[2] : [ '.yml', '.yaml' ] ) ) {
    50          
49 0         0 require Carp;
50 0         0 Carp::cluck("$_[1] seems not to be a YAML file.");
51             }
52 2         844 require YAML;
53 2         9008 return YAML::LoadFile( $_[1] );
54             }
55              
56             1;
57              
58             __END__