Branch Coverage

blib/lib/WWW/Salesforce/Report.pm
Criterion Covered Total %
branch 84 304 27.6


line true false branch
285 0 6 if defined $options{'verbose'}
290 0 6 if defined $options{'convert_dates'}
293 0 6 if (defined $options{'login_url'}) { }
300 0 6 if (defined $options{'csv_report_url'}) { }
308 0 6 if (defined $options{'xls_report_url'}) { }
319 2 4 if (defined $options{'file'}) { }
322 0 2 unless -e $options{'file'}
329 3 1 if (defined $options{'id'}) { }
336 2 1 if (defined $options{'user'}) { }
342 1 1 if (defined $options{'password'}) { }
352 0 3 if (defined $options{'format'})
357 0 3 if (defined $options{'cache'})
362 0 3 if (defined $options{'pre_import_query'})
367 0 3 if (defined $options{'post_import_query'})
372 3 0 unless defined $$self{'erase_db'}
375 3 0 unless defined $$self{'allow_duplicates'}
377 3 0 unless defined $$self{'primary_key_type'}
380 3 0 unless defined $$self{'primary_key'}
384 3 0 unless defined $$self{'erase_reports_table'}
387 0 3 unless defined $$self{'erase_reports_table'}
390 3 0 unless defined $$self{'clean_on_destroy'}
393 0 0 unless $$self{'file'} or $$self{'id'} or $self->name
421 0 1 unless $self
423 1 0 if ($$self{'file'})
426 0 1 if $$self{'verbose'}
437 0 0 if $$self{'verbose'}
443 0 0 unless $res->is_success
449 0 0 if ($res->content =~ /Challenge User/)
459 0 0 if $res->content =~ /Login Page/
470 0 0 if ($server =~ /(.+?)\.salesforce\.com/)
478 0 0 if $$self{'verbose'}
506 0 1 unless $self
508 0 1 unless ($$self{'file'})
511 0 0 if ($server =~ /(.+?)\.salesforce\.com/)
519 0 1 if $$self{'verbose'}
536 0 0 unless defined $options{'delete'}
538 0 0 if ($options{'id'})
542 0 0 if $$self{'id'} eq $options{'id'}
564 0 7 unless $self
568 0 6 unless $$self{'id'} or $$self{'file'}
601 0 11 unless $self
605 0 8 unless $$self{'id'} or $$self{'file'}
607 6 5 unless defined $options{'format'}
611 4 1 if ($$self{'format'} =~ /csv/i) { }
1 0 elsif ($$self{'format'} =~ /xls/i) { }
616 0 4 if $$self{'verbose'}
622 1 0 if $$self{'file'}
630 0 0 if $$self{'verbose'}
662 2 2 if defined $options{'cache'}
694 0 3 if ($$self{'name'} and $$self{'format'} =~ /csv|xls/i and -e $$self{'name'})
699 0 0 unless unlink $$self{'name'}
748 0 1 unless $self
752 0 1 unless $$self{'id'} or $$self{'file'}
754 1 0 unless defined $options{'force'}
756 0 1 if ($$self{'data'} and not $options{'force'})
760 0 0 if $$self{'verbose'}
765 0 1 if ($options{'format'})
776 0 1 if (not $$self{'file'}) { }
780 0 0 if $$self{'verbose'}
788 0 1 if $$self{'verbose'}
791 0 1 unless open my $fh, '<', $$self{'file'}
801 1 0 if ($$self{'format'} =~ /csv/i)
820 1 0 if $self->cache
824 0 0 if not $self->cache and $$self{'verbose'}
859 0 0 unless $self
863 0 0 unless $$self{'id'} or $$self{'file'}
866 0 0 unless $$self{'data'}
869 0 0 if ($options{'file'}) { }
0 0 elsif ($$self{'file'}) { }
0 0 elsif ($$self{'id'}) { }
883 0 0 unless defined $options{'compress'}
885 0 0 if (not $options{'compress'}) { }
886 0 0 unless open my $fh, '>', $name
893 0 0 if $$self{'verbose'}
904 0 0 if ($name =~ /\..+/) { }
917 0 0 unless my $z = 'IO::Compress::Zip'->new($zip_name, 'name', $name, 'ExtAttr', 28704768, 'AutoClose', 1)
927 0 0 if $$self{'verbose'}
966 0 0 unless $self
970 0 0 unless $$self{'id'} or $$self{'file'}
973 0 0 unless -e $$self{'name'}
976 0 0 unless defined $options{'query'}
978 0 0 unless $self->cache
981 0 0 unless defined $options{'hash'}
984 0 0 unless $$self{'dbh'} = 'DBI'->connect('dbi:SQLite:dbname=' . $$self{'name'}, '', '')
988 0 0 unless $sth = $$self{'dbh'}->prepare($options{'query'})
992 0 0 if $$self{'verbose'}
994 0 0 unless $sth->execute
1006 0 0 if ($options{'hash'}) { }
1043 0 0 unless $self
1047 0 0 unless $$self{'id'} or $$self{'file'}
1050 0 0 unless defined $$self{'dbh'}
1076 0 0 unless defined $url
1077 0 0 unless $self
1079 0 0 unless $self->login_server
1090 0 0 unless $res->is_success
1145 0 1 unless $self
1149 0 1 unless $$self{'id'} or $$self{'file'}
1152 0 1 unless $options{'fields'}
1154 0 1 unless $self->format =~ /csv/i
1163 0 1 if ($$self{'erase_db'} and -e $db_name)
1166 0 0 unless unlink $db_name
1170 0 0 if $$self{'verbose'}
1174 1 0 unless (-e $db_name)
1185 1 0 if ($$self{'primary_key'} eq '__id') { }
1194 0 0 unless $options{'fields'} =~ /$$self{'primary_key'}/
1206 0 4 if ($field eq $$self{'primary_key'}) { }
1218 0 0 unless my $dbh = 'DBI'->connect("dbi:SQLite:dbname=$db_name", '', '')
1221 0 0 unless $dbh->do($report_table)
1224 0 0 unless $dbh->do($notify_table)
1229 0 0 unless ($$self{'allow_duplicates'})
1232 0 0 if $$self{'verbose'}
1235 0 0 if ($$self{'primary_key'} eq '__id') { }
1241 0 0 unless $dbh->do($index)
1246 0 0 unless $dbh->disconnect
1251 0 0 if ($$self{'erase_reports_table'} or $$self{'erase_notifications_table'})
1254 0 0 unless my $dbh = 'DBI'->connect("dbi:SQLite:dbname=$db_name", '', '')
1257 0 0 if ($$self{'erase_reports_table'})
1260 0 0 if $$self{'verbose'}
1262 0 0 unless $dbh->do('DELETE FROM report')
1266 0 0 if ($$self{'erase_notifications_table'})
1269 0 0 if $$self{'verbose'}
1271 0 0 unless $dbh->do('DELETE FROM notifications')
1275 0 0 unless $dbh->disconnect
1305 0 1 unless $self
1309 0 1 unless $$self{'id'} or $$self{'file'}
1311 0 1 unless $self->format =~ /csv/i
1315 0 1 unless $$self{'data'}
1318 0 1 if $$self{'verbose'}
1321 0 1 if $$self{'verbose'}
1335 0 1 if ($res eq $first_line)
1338 0 0 if $$self{'verbose'}
1358 0 0 unless $$self{'dbh'} = 'DBI'->connect('dbi:SQLite:dbname=' . $$self{'name'}, '', '')
1362 0 0 if $$self{'pre_import_query'}
1372 0 0 if $line eq ''
1374 0 0 if ($$self{'convert_dates'})
1386 0 0 unless $$self{'dbh'}->do($tsql)
1391 0 0 unless $$self{'dbh'}->disconnect
1395 0 0 if $$self{'verbose'}
1398 0 0 if $$self{'post_import_query'}
1435 0 4 unless $self
1439 0 3 unless $$self{'id'} or $$self{'file'}
1443 4 0 unless defined $options{'delete'}
1444 4 0 if ($options{'delete'})
1451 4 0 unless defined $options{'name'}
1453 4 0 if (not $options{'name'}) { }
1458 3 1 if ($$self{'file'}) { }
1 0 elsif ($$self{'id'}) { }
1466 1 0 if ($self->format =~ /csv/i) { }
0 0 elsif ($self->format =~ /xls/i) { }
1490 0 4 unless $$self{'name'}
1507 0 5 unless $self
1509 2 3 if $$self{'clean_on_destroy'}