| line | true | false | branch | 
 
| 29 | 0 | 7 | unless my $tmpdir = $targs{'tmpdir'} | 
 
| 30 | 0 | 7 | unless my $reset_state = $targs{'reset_state'} | 
 
| 33 | 0 | 7 | if ($targs{'reset_db_dir'}) | 
 
| 45 | 0 | 202 | unless &blessed($tm) | 
 
| 68 | 2 | 5 | if ($res->[0] == 200) | 
 
| 69 | 1 | 1 | if ($res->[3]{'do_actions'}) { } | 
 
| 84 | 0 | 7 | unless (&is($res->[0], 200, 'begin_tx succeeds')) | 
 
| 92 | 0 | 7 | unless (&is($res->[0], $estatus, "status is $estatus")) | 
 
| 96 | 4 | 3 | unless ($estatus == 200) | 
 
| 99 | 0 | 3 | unless (&is($res->[0], 200, 'commit_tx succeeds')) | 
 
| 106 | 0 | 7 | if $targs{'after_do'} | 
 
| 107 | 4 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 115 | 0 | 3 | unless (&is($res->[0], 304, 'status is 304')) | 
 
| 121 | 0 | 3 | unless (&is($res->[0], 200, 'rollback_tx succeeds')) | 
 
| 126 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 130 | 0 | 3 | if $targs{'before_undo'} | 
 
| 135 | 0 | 3 | unless (&is($res->[0], $estatus, "status is $estatus")) | 
 
| 139 | 0 | 3 | unless ($estatus == 200) | 
 
| 141 | 0 | 3 | unless &is($res->[2][0]{'tx_status'}, 'U', 'transaction status is U') | 
 
| 145 | 0 | 3 | if $targs{'after_undo'} | 
 
| 146 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 159 | 12 | 2 | $has_do_actions ? : | 
 
|  | 0 | 14 | unless $nl <= ($has_do_actions ? 2 : 1) | 
 
| 160 | 7 | 7 | if $args{'which'} eq 'rollback' | 
 
| 161 | 7 | 0 | if $args{'which'} eq 'action' | 
 
| 162 | 3 | 1 | $has_do_actions ? : | 
 
|  | 4 | 3 | if ($ja == $i and $nl == ($has_do_actions ? 2 : 1)) | 
 
| 179 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'R', 'transaction status is R') | 
 
| 184 | 1 | 2 | if not $num_actions | 
 
| 186 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 196 | 3 | 7 | if $last | 
 
| 203 | 21 | 4 | $has_do_actions ? : | 
 
|  | 0 | 25 | unless $nl <= ($has_do_actions ? 2 : 1) | 
 
| 204 | 14 | 11 | if ($args{'which'} eq 'action') | 
 
| 207 | 8 | 6 | unless ++$ja >= $num_actions | 
 
| 210 | 11 | 0 | if $args{'which'} eq 'rollback' | 
 
| 211 | 4 | 7 | if ($jrb == $i) | 
 
| 221 | 3 | 4 | unless ($crashed) | 
 
| 231 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'X', 'transaction status is X') | 
 
| 237 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 243 | 0 | 3 | unless (&is($res->[0], 200, 'redo succeeds')) | 
 
| 248 | 0 | 3 | unless &is($res->[2][0]{'tx_status'}, 'C', 'transaction status is C') | 
 
| 251 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 255 | 0 | 3 | if $targs{'before_undo'} | 
 
| 259 | 0 | 3 | unless (&is($res->[0], 200, 'undo succeeds')) | 
 
| 264 | 0 | 3 | unless &is($res->[2][0]{'tx_status'}, 'U', 'transaction status is U') | 
 
| 267 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 269 | 0 | 3 | if $targs{'after_undo'} | 
 
| 283 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'C', 'transaction status is C') | 
 
| 292 | 0 | 14 | unless $args{'which'} eq 'undo' | 
 
| 293 | 4 | 10 | if (++$ju == $i) | 
 
| 311 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'U', 'transaction status is U') | 
 
| 316 | 1 | 2 | if not $num_undo_actions | 
 
| 318 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 328 | 3 | 7 | if $last | 
 
| 338 | 0 | 7 | unless &is($res->[2][0]{'tx_status'}, 'C', 'transaction status is C') | 
 
| 345 | 15 | 11 | if ($args{'which'} eq 'undo') { } | 
 
|  | 11 | 0 | elsif ($args{'which'} eq 'rollback') { } | 
 
| 347 | 6 | 9 | if (++$ju == $num_undo_actions) | 
 
| 353 | 4 | 7 | if (++$jrb == $i) | 
 
| 363 | 3 | 4 | unless ($crashed) | 
 
| 373 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'X', 'transaction status is X') | 
 
| 378 | 1 | 2 | if not $num_undo_actions | 
 
| 380 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 390 | 3 | 8 | if $last | 
 
| 401 | 0 | 8 | unless &is($res->[2][0]{'tx_status'}, 'U', 'transaction status is U') | 
 
| 410 | 0 | 21 | unless $args{'which'} eq 'redo' | 
 
| 411 | 5 | 16 | if (++$jrd == $i) | 
 
| 420 | 3 | 5 | unless ($crashed) | 
 
| 430 | 0 | 5 | unless &is($res->[2][0]{'tx_status'}, 'C', 'transaction status is C') | 
 
| 435 | 1 | 2 | if not $num_actions | 
 
| 437 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing | 
 
| 447 | 3 | 7 | if $last | 
 
| 458 | 0 | 7 | unless &is($res->[2][0]{'tx_status'}, 'U', 'transaction status is U') | 
 
| 465 | 15 | 11 | if ($args{'which'} eq 'redo') { } | 
 
|  | 11 | 0 | elsif ($args{'which'} eq 'rollback') { } | 
 
| 467 | 6 | 9 | if (++$jrd == $num_actions) | 
 
| 473 | 4 | 7 | if (++$jrb == $i) | 
 
| 483 | 3 | 4 | unless ($crashed) | 
 
| 493 | 0 | 4 | unless &is($res->[2][0]{'tx_status'}, 'X', 'transaction status is X') | 
 
| 498 | 1 | 2 | if not $num_actions | 
 
| 500 | 0 | 3 | if $done_testing or not 'Test::More'->builder->is_passing |