A new version of
Test::DatabaseRow has just escaped onto the CPAN, with a minor new feature
verbose data to make working out what went wrong in the database test even easier when the worst happens
In a nutshell this feature allows you to output in diagnostics all the results the database returned (not just listing the first thing that didn't match, which is the default thing
row_ok
does in a similar way to Test::More's
is_deeply
does.)
In other words instead of writing this:
all_row_ok(
table => "contacts",
where => [ cid => 123 ],
tests => [ name => "trelane" ],
store_rows => \@rows,
description => "contact 123's name is trelane"
) or diag explain \@rows;
You can just write this:
all_row_ok(
table => "contacts",
where => [ cid => 123 ],
tests => [ name => "trelane" ],
verbose_data => 1,
description => "contact 123's name is trelane"
);
Or even just write this:
all_row_ok(
table => "contacts",
where => [ cid => 123 ],
tests => [ name => "trelane" ],
description => "contact 123's name is trelane"
);
And turn on verbosity from the command line when you run the tests
TEST_DBROW_VERBOSE_DATA=1 perl mytest.pl