Branch Coverage

blib/lib/CGI/Application/Plugin/Output/XSV.pm
Criterion Covered Total %
branch 62 64 96.8


line true false branch
33 1 47 if ref $args ne 'HASH'
54 1 46 if $opts{'stream'}
57 2 45 if ($opts{'get_row_cb'})
58 1 1 if ($opts{'row_filter'}) { }
67 4 8 unless $opts{'values'} and ref $opts{'values'} eq 'ARRAY' or $opts{'iterator'} and ref $opts{'iterator'} eq 'CODE'
71 1 42 if $opts{'values'} and $opts{'iterator'}
77 21 21 if ($opts{'fields'}) { }
16 5 elsif ($opts{'values'}) { }
83 15 1 if (@{$opts{'values'};}) { }
87 2 13 if ($list_type eq 'HASH') { }
12 1 elsif ($list_type eq 'ARRAY') { }
109 7 33 if ($opts{'row_filter'}) { }
24 9 elsif ($opts{'values'} and @{$opts{'values'};}) { }
117 13 11 if ($list_type eq 'HASH') { }
10 1 elsif ($list_type eq 'ARRAY') { }
135 31 8 if ($opts{'include_headers'})
136 22 9 unless ($opts{'headers'})
137 2 20 if (not $opts{'headers_cb'} && ref $opts{'headers_cb'} eq 'CODE') { }
1 19 elsif (not @{$fields;}) { }
146 1 28 unless my $readable_headers = $opts{'headers'} || $opts{'headers_cb'}($fields)
149 1 27 if ref $readable_headers ne 'ARRAY'
154 1 26 if ($opts{'stream'})
160 27 8 if ($opts{'values'}) { }
166 0 31 if ($opts{'stream'})
177 1 26 if ref $list_ref ne 'ARRAY'
181 1 25 if ++$iterations > $opts{'maximum_iters'}
188 6 19 if ($opts{'stream'})
205 1 8 if ref $args ne 'HASH'
220 0 8 if ($opts{'stream'}) { }
247 2 88 unless $fields and ref $fields eq 'ARRAY'
253 1 87 unless @{$fields;}
255 1 86 unless $csv->combine(@{$fields;})