X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F22_internal_copy.t;h=bda4b1d13b303a569930b7630aa00de0d9852f17;hb=4f0f6fff0474a896cad8bbb80d8c0ccce3d87bf9;hp=edd25311b6cabff9f0309c0f382433a85c8b49e4;hpb=2120a181ed29ae691819ebdbd7cf5233d7fc672c;p=dbsrgits%2FDBM-Deep.git diff --git a/t/22_internal_copy.t b/t/22_internal_copy.t index edd2531..bda4b1d 100644 --- a/t/22_internal_copy.t +++ b/t/22_internal_copy.t @@ -2,8 +2,7 @@ # DBM::Deep Test ## use strict; -use Test::More skip_all => "Internal references are not supported right now"; -#use Test::More tests => 13; +use Test::More tests => 13; use t::common qw( new_fh ); use_ok( 'DBM::Deep' ); @@ -14,15 +13,15 @@ my $db = DBM::Deep->new( $filename ); ## # Create structure in $db ## -$db->import( - hash1 => { - subkey1 => "subvalue1", - subkey2 => "subvalue2", - }, +$db->import({ + hash1 => { + subkey1 => "subvalue1", + subkey2 => "subvalue2", + }, hash2 => { subkey3 => 'subvalue3', }, -); +}); is( $db->{hash1}{subkey1}, 'subvalue1', "Value imported correctly" ); is( $db->{hash1}{subkey2}, 'subvalue2', "Value imported correctly" ); @@ -50,16 +49,19 @@ my $max_keys = 1000; my ($fh2, $filename2) = new_fh(); { - my $db = DBM::Deep->new( $filename2 ); + my $db = DBM::Deep->new( file => $filename2, fh => $fh2, ); $db->{foo} = [ 1 .. 3 ]; for ( 0 .. $max_keys ) { $db->{'foo' . $_} = $db->{foo}; } + ## Rewind handle otherwise the signature is not recognised below. + ## The signature check should probably rewind the fh? + seek $db->_get_self->_engine->storage->{fh}, 0, 0; } { - my $db = DBM::Deep->new( $filename2 ); + my $db = DBM::Deep->new( fh => $fh2, ); my $base_offset = $db->{foo}->_base_offset; my $count = -1;