-
# This was discussed here:
# http://groups.google.com/group/DBM-Deep/browse_thread/thread/a6b8224ffec21bab
# brought up by Alex Gallichotte
use strict;
-use Test;
-use DBM::Deep;
-use t::common qw( new_fh );
+use warnings FATAL => 'all';
+
+use Test::More;
+use t::common qw( new_dbm );
-my ($fh, $filename) = new_fh();
-my $db = DBM::Deep->new( file => $filename, fh => $fh, );
+use_ok( 'DBM::Deep' );
-plan tests => 3;
+my $dbm_factory = new_dbm();
+while ( my $dbm_maker = $dbm_factory->() ) {
+ my $db = $dbm_maker->();
+ eval { $db->{randkey()} = randkey() for 1 .. 10; }; ok(!$@, "No eval failures");
-eval { $db->{randkey()} = randkey() for 1 .. 10; }; ok($@, "");
+ eval {
+ #$db->begin_work;
+ $db->{randkey()} = randkey() for 1 .. 10;
+ #$db->commit;
+ };
+ ok(!$@, "No eval failures from the transaction");
-eval {
- $db->begin_work;
- $db->{randkey()} = randkey() for 1 .. 10;
- $db->commit;
-};
-ok($@, '');
+ eval { $db->{randkey()} = randkey() for 1 .. 10; };
+ ok(!$@, "No eval failures");
+}
-eval { $db->{randkey()} = randkey() for 1 .. 10; }; ok($@, "");
+done_testing;
sub randkey {
- our $i ++;
+ our $i++;
my @k = map { int rand 100 } 1 .. 10;
local $" = "-";