Flushing problems fixed
[dbsrgits/DBM-Deep.git] / t / 12_clone.t
1 ##
2 # DBM::Deep Test
3 ##
4 use strict;
5 use Test::More tests => 14;
6 use t::common qw( new_fh );
7
8 use_ok( 'DBM::Deep' );
9
10 my ($fh, $filename) = new_fh();
11
12 {
13     my $clone;
14
15     {
16         my $db = DBM::Deep->new(
17             file => $filename,
18         );
19
20         $db->{key1} = "value1";
21
22         ##
23         # clone db handle, make sure both are usable
24         ##
25         $clone = $db->clone();
26
27         is($clone->{key1}, "value1");
28
29         $clone->{key2} = "value2";
30         $db->{key3} = "value3";
31
32         is($db->{key1}, "value1");
33         is($db->{key2}, "value2");
34         is($db->{key3}, "value3");
35
36         is($clone->{key1}, "value1");
37         is($clone->{key2}, "value2");
38         is($clone->{key3}, "value3");
39     }
40
41     is($clone->{key1}, "value1");
42     is($clone->{key2}, "value2");
43     is($clone->{key3}, "value3");
44 }
45
46 {
47     my $db = DBM::Deep->new(
48         file => $filename,
49     );
50
51     is($db->{key1}, "value1");
52     is($db->{key2}, "value2");
53     is($db->{key3}, "value3");
54 }