Reading database from ... ---------- ------ ------ ------ ------ ------ File stmt bran cond sub total ---------- ------ ------ ------ ------ ------ tests/sort 96.0 n/a n/a 85.7 93.7 Total 96.0 n/a n/a 85.7 93.7 ---------- ------ ------ ------ ------ ------ Run: ... Perl version: ... OS: ... Start: ... Finish: ... tests/sort line err stmt bran cond sub code 1 #!/usr/bin/perl -w 2 3 1 1 use strict; 1 1 4 5 1 my %sort = ( 6 B => \&backwards, 7 F => \&forwards 8 ); 9 10 sub backwards { 11 6 6 return $b cmp $a; 12 } 13 14 sub forwards { 15 *** *0 *0 return $a cmp $b; 16 } 17 18 sub GetAlgorithm { 19 1 1 my ($alg) = @_; 20 1 return $sort{$alg}; 21 } 22 23 1 my @list = qw( a d e c g ); 24 25 # my $alg = GetAlgorithm(('B', 'F')[int(rand(2))]); 26 1 my $alg = GetAlgorithm(('B', 'F')[0]); 27 28 1 @list = sort {&{$alg}} @list; 6 6 29 30 1 1 use Data::Dumper; 1 1 31 32 1 print STDERR Dumper(\@list); 33 34 package Failure; 35 36 sub fail { 37 1 1 my @x = 1 .. 5; 38 1 my @y = sort { Failure->xyz( $a, $b ) } @x; 8 39 } 40 41 sub xyz { 42 8 8 my $self = shift; 43 8 my ($a, $b) = @_; 44 8 $a <=> $b; 45 } 46 package main; 47 48 1 my @l = Failure->fail; 49 50 1 print STDERR Dumper(\@l); Covered Subroutines ------------------- Subroutine Count Location ------------ ----- ------------- BEGIN 1 tests/sort:3 BEGIN 1 tests/sort:30 GetAlgorithm 1 tests/sort:19 backwards 6 tests/sort:11 fail 1 tests/sort:37 xyz 8 tests/sort:42 Uncovered Subroutines --------------------- Subroutine Count Location ------------ ----- ------------- forwards 0 tests/sort:15