File Coverage

blib/lib/MySQL/Util/Lite/Column.pm
Criterion Covered Total %
statement 16 28 57.1
branch 0 10 0.0
condition 0 3 0.0
subroutine 6 7 85.7
pod n/a
total 22 48 45.8


line stmt bran cond sub pod time code
1             package MySQL::Util::Lite::Column;
2              
3             our $VERSION = '0.01';
4              
5 1     1   7 use Modern::Perl;
  1         1  
  1         6  
6 1     1   111 use Moose;
  1         2  
  1         10  
7 1     1   6772 use namespace::autoclean;
  1         4  
  1         7  
8 1     1   85 use Method::Signatures;
  1         2  
  1         11  
9 1     1   352 use Data::Printer alias => 'pdump';
  1         2  
  1         7  
10              
11             has name => (
12             is => 'ro',
13             isa => 'Str',
14             required => 1,
15             );
16              
17             has key => (
18             is => 'ro',
19             isa => 'Str|Undef',
20             );
21              
22             has default => (
23             is => 'ro',
24             isa => 'Str|Undef',
25             );
26              
27             has type => (
28             is => 'ro',
29             isa => 'Str',
30             required => 1,
31             );
32              
33             has is_null => (
34             is => 'ro',
35             isa => 'Bool',
36             required => 1,
37             );
38              
39             has is_autoinc => (
40             is => 'ro',
41             isa => 'Bool',
42             default => 0,
43             );
44              
45 1 0   1   2138 method get_moose_type {
  0     0      
  0            
46              
47 0           my $str;
48 0           my $type = $self->type;
49            
50 0 0 0       if ( $type =~ /varchar/i ) {
    0          
    0          
51 0           $str = 'Str|HashRef';
52             }
53             elsif ( $type =~ /timestamp/i || $type =~ /datetime/i) {
54 0           $str = 'Str|HashRef';
55             }
56             elsif ( $type =~ /enum/i ) {
57 0           $str = 'Str|HashRef';
58             }
59             else {
60 0           $str = 'Num|HashRef';
61             }
62              
63 0 0         if ( $self->is_null ) {
64 0           $str .= '|Undef';
65             }
66              
67 0           return $str;
68             }
69              
70             1;