Converted all relevant tests to use new_dbm instead of new_fh and all tests (except...
[dbsrgits/DBM-Deep.git] / t / 12_clone.t
index a997acc..4168a19 100644 (file)
@@ -1,54 +1,52 @@
-##
-# DBM::Deep Test
-##
 use strict;
-use Test::More tests => 14;
-use t::common qw( new_fh );
+use warnings FATAL => 'all';
 
-use_ok( 'DBM::Deep' );
+use Test::More;
+use t::common qw( new_dbm );
 
-my ($fh, $filename) = new_fh();
+use_ok( 'DBM::Deep' );
 
-{
-    my $clone;
+my $dbm_factory = new_dbm();
+while ( my $dbm_maker = $dbm_factory->() ) {
 
     {
-        my $db = DBM::Deep->new(
-            file => $filename,
-        );
+        my $clone;
 
-        $db->{key1} = "value1";
+        {
+            my $db = $dbm_maker->();
 
-        ##
-        # clone db handle, make sure both are usable
-        ##
-        $clone = $db->clone();
+            $db->{key1} = "value1";
 
-        is($clone->{key1}, "value1");
+            ##
+            # clone db handle, make sure both are usable
+            ##
+            $clone = $db->clone();
 
-        $clone->{key2} = "value2";
-        $db->{key3} = "value3";
+            is($clone->{key1}, "value1");
 
-        is($db->{key1}, "value1");
-        is($db->{key2}, "value2");
-        is($db->{key3}, "value3");
+            $clone->{key2} = "value2";
+            $db->{key3} = "value3";
+
+            is($db->{key1}, "value1");
+            is($db->{key2}, "value2");
+            is($db->{key3}, "value3");
+
+            is($clone->{key1}, "value1");
+            is($clone->{key2}, "value2");
+            is($clone->{key3}, "value3");
+        }
 
         is($clone->{key1}, "value1");
         is($clone->{key2}, "value2");
         is($clone->{key3}, "value3");
     }
 
-    is($clone->{key1}, "value1");
-    is($clone->{key2}, "value2");
-    is($clone->{key3}, "value3");
-}
-
-{
-    my $db = DBM::Deep->new(
-        file => $filename,
-    );
+    {
+        my $db = $dbm_maker->();
 
-    is($db->{key1}, "value1");
-    is($db->{key2}, "value2");
-    is($db->{key3}, "value3");
+        is($db->{key1}, "value1");
+        is($db->{key2}, "value2");
+        is($db->{key3}, "value3");
+    }
 }
+done_testing;