Branch Coverage

blib/lib/Authen/Passphrase/VMSPurdy.pm
Criterion Covered Total %
branch 37 60 61.6


line true false branch
157 9 45 if ($attr eq 'algorithm') { }
15 30 elsif ($attr eq 'username') { }
12 18 elsif ($attr eq 'salt') { }
2 16 elsif ($attr eq 'salt_hex') { }
1 15 elsif ($attr eq 'salt_random') { }
0 15 elsif ($attr eq 'hash') { }
6 9 elsif ($attr eq 'hash_hex') { }
9 0 elsif ($attr eq 'passphrase') { }
158 0 9 if exists $$self{'algorithm'}
160 0 9 unless $value =~ /\APURDY(?:|_V|_S)\z/
164 0 15 if exists $$self{'username'}
166 0 15 unless $value =~ /\A[_\$0-9A-Za-z]{1,31}\z/
170 0 12 if exists $$self{'salt'}
172 0 12 unless $value == int $value and $value >= 0 and $value < 65536
176 0 2 if exists $$self{'salt'}
178 0 2 unless $value =~ /\A([0-9a-fA-F]{2})([0-9a-fA-F]{2})\z/
182 0 1 if exists $$self{'salt'}
186 0 0 if exists $$self{'hash'} or defined $passphrase
189 0 0 unless $value =~ /\A[\x00-\xff]{8}\z/
193 0 6 if exists $$self{'hash'} or defined $passphrase
196 0 6 unless $value =~ /\A[0-9A-Fa-f]{16}\z/
200 0 9 if exists $$self{'hash'} or defined $passphrase
203 4 5 unless $self->_passphrase_acceptable($value)
210 2 9 unless exists $$self{'algorithm'}
211 0 11 unless exists $$self{'username'}
212 0 11 unless exists $$self{'salt'}
213 5 6 if defined $passphrase
215 0 11 unless exists $$self{'hash'}
241 2 0 if ($passwd =~ /\A\$VMS([123])\$/)
243 0 2 unless $passwd =~ /\A\$VMS[123]\$([0-9A-F]{4}) ([0-9A-F]{16})([_\$0-9A-Z]{1,31})\z/x