Branch Coverage

blib/lib/Crypt/PK/Ed25519.pm
Criterion Covered Total %
branch 20 70 28.5


line true false branch
20 0 1 @_ > 0 ? :
25 0 0 unless $key
26 0 0 unless length $key == 32
27 0 0 unless $type
28 0 0 if $type eq "private"
29 0 0 if $type eq "public"
36 0 6 unless $key
39 2 4 if (ref $key eq "HASH")
40 0 0 if ($key->{'kty'} and $key->{'kty'} eq "OKP" and $key->{'crv'} and $key->{'crv'} eq "Ed25519")
43 0 0 if $key->{'d'}
44 0 0 if $key->{'x'}
46 2 0 if ($key->{'curve'} and $key->{'curve'} eq "ed25519" and $key->{'priv'} || $key->{'pub'})
48 1 1 if $key->{'priv'}
49 1 0 if $key->{'pub'}
55 0 4 if (ref $key eq 'SCALAR') { }
4 0 elsif (-f $key) { }
64 0 4 unless $data
66 0 4 if ($data =~ /-----BEGIN (PUBLIC|PRIVATE|ENCRYPTED PRIVATE) KEY-----(.+?)-----END (PUBLIC|PRIVATE|ENCRYPTED PRIVATE) KEY-----/s) { }
0 4 elsif ($data =~ /-----BEGIN CERTIFICATE-----(.+?)-----END CERTIFICATE-----/s) { }
2 2 elsif ($data =~ /-----BEGIN OPENSSH (PUBLIC|PRIVATE) KEY-----(.+?)-----END/s) { }
1 1 elsif ($data =~ /---- BEGIN SSH2 PUBLIC KEY ----(.+?)---- END SSH2 PUBLIC KEY ----/s) { }
0 1 elsif ($data =~ /^\s*(\{.*?\})\s*$/s) { }
1 0 elsif ($data =~ /(ssh-ed25519)\s+(\S+)/) { }
0 0 elsif (length $data == 32) { }
80 0 0 if ($h->{'kty'} and $h->{'kty'} eq "OKP" and $h->{'crv'} and $h->{'crv'} eq "Ed25519")
81 0 0 if $h->{'d'}
82 0 0 if $h->{'x'}
88 1 0 if $typ eq "ssh-ed25519" and length $pubkey == 32
97 0 0 if $rv
106 0 0 unless $key
107 0 0 if substr($type, 0, 7) eq "private"
108 0 0 if substr($type, 0, 6) eq "public"
115 0 0 unless $kh
118 0 0 if $type and $type eq "private" and $kh->{'priv'}
119 0 0 $wanthash ? :