Branch Coverage

blib/lib/Crypt/PK/DSA.pm
Criterion Covered Total %
branch 47 76 61.8


line true false branch
21 27 45 @_ > 0 ? :
26 1 3 if @_ == 2
27 1 2 if (@_ == 1 and ref $_[0] eq 'HASH') { }
2 0 elsif (@_ == 1 and ref $_[0] eq 'SCALAR') { }
29 0 1 unless my $p = $param->{'p'}
30 0 1 unless my $q = $param->{'q'}
31 0 1 unless my $g = $param->{'g'}
39 1 1 if ($data =~ /-----BEGIN DSA PARAMETERS-----\s*(.+)\s*-----END DSA PARAMETERS-----/s)
40 0 1 unless $data = pem_to_der($data)
50 0 8 unless $key
51 4 4 if $type eq "private"
52 4 0 if $type eq "public"
53 0 0 if $type eq "public_x509"
58 0 73 unless $key
61 2 71 if (ref $key eq "HASH")
62 2 0 if ($key->{'p'} and $key->{'q'} and $key->{'g'} and $key->{'y'})
69 36 35 if (ref $key eq 'SCALAR') { }
35 0 elsif (-f $key) { }
78 0 71 unless $data
80 17 54 if ($data =~ /-----BEGIN (DSA PRIVATE|DSA PUBLIC|PRIVATE|PUBLIC) KEY-----(.*?)-----END/gs) { }
1 53 elsif ($data =~ /---- BEGIN SSH2 PUBLIC KEY ----(.*?)---- END SSH2 PUBLIC KEY ----/gs) { }
1 52 elsif ($data =~ /ssh-dss\s+(\S+)/) { }
81 0 17 unless $data = pem_to_der($data, $password)
85 0 1 unless $data = pem_to_der($data)
87 1 0 if $typ and $p and $q and $g and $y and $typ eq "ssh-dss"
92 1 0 if $typ and $p and $q and $g and $y and $typ eq "ssh-dss"
105 1 0 unless ref $key
106 0 1 unless ref $key eq "Crypt::PK::DSA"
113 1 0 unless ref $key
114 0 1 unless ref $key eq "Crypt::PK::DSA"
121 1 0 unless ref $key
122 0 1 unless ref $key eq "Crypt::PK::DSA"
129 1 0 unless ref $key
130 0 1 unless ref $key eq "Crypt::PK::DSA"
137 1 0 unless ref $key
138 0 1 unless ref $key eq "Crypt::PK::DSA"
145 1 0 unless ref $key
146 0 1 unless ref $key eq "Crypt::PK::DSA"