r11685@rob-kinyons-powerbook58: rob | 2006-04-29 10:50:27 -0400
[dbsrgits/DBM-Deep.git] / t / 13_setpack.t
CommitLineData
ffed8b01 1##
2# DBM::Deep Test
3##
4use strict;
9b2370e0 5use Test::More tests => 4;
fde3db1a 6use t::common qw( new_fh );
ffed8b01 7
8use_ok( 'DBM::Deep' );
9
251dfd0e 10my ($before, $after);
ffed8b01 11
251dfd0e 12{
fde3db1a 13 my ($fh, $filename) = new_fh();
251dfd0e 14 my $db = DBM::Deep->new(
2a81bf9e 15 file => $filename,
e0098e7f 16 autoflush => 1,
251dfd0e 17 );
18 $db->{key1} = "value1";
19 $db->{key2} = "value2";
20 $before = (stat($db->_fh()))[7];
21}
22
23{
fde3db1a 24 my ($fh, $filename) = new_fh();
9b2370e0 25 {
26 my $db = DBM::Deep->new(
27 file => $filename,
28 autoflush => 1,
29 pack_size => 'small',
30 );
251dfd0e 31
9b2370e0 32 $db->{key1} = "value1";
33 $db->{key2} = "value2";
34 $after = (stat($db->_fh()))[7];
35 }
36
37 # This tests the header to verify that the pack_size is really there
38 {
39 my $db = DBM::Deep->new(
40 file => $filename,
41 );
42
43 is( $db->{key1}, 'value1', 'Can read key1' );
44 is( $db->{key2}, 'value2', 'Can read key2' );
45 }
251dfd0e 46}
ffed8b01 47
9b2370e0 48cmp_ok( $after, '<', $before, "The new packsize reduced the size of the file" );