Removed _get_self() call in _copy_node
[dbsrgits/DBM-Deep.git] / t / 17_import.t
CommitLineData
ffed8b01 1##
2# DBM::Deep Test
3##
4use strict;
5use Test::More tests => 2;
2a81bf9e 6use File::Temp qw( tempfile tempdir );
ffed8b01 7
8use_ok( 'DBM::Deep' );
9
2a81bf9e 10my $dir = tempdir( CLEANUP => 1 );
11my ($fh, $filename) = tempfile( 'tmpXXXX', UNLINK => 1, DIR => $dir );
12my $db = DBM::Deep->new( $filename );
ffed8b01 13
14##
15# Create structure in memory
16##
17my $struct = {
18 key1 => "value1",
19 key2 => "value2",
20 array1 => [ "elem0", "elem1", "elem2" ],
21 hash1 => {
22 subkey1 => "subvalue1",
23 subkey2 => "subvalue2"
24 }
25};
26
27##
28# Import entire thing
29##
30$db->import( $struct );
31undef $struct;
32
33##
34# Make sure everything is there
35##
36ok(
37 ($db->{key1} eq "value1") &&
38 ($db->{key2} eq "value2") &&
39 ($db->{array1} &&
40 ($db->{array1}->[0] eq "elem0") &&
41 ($db->{array1}->[1] eq "elem1") &&
42 ($db->{array1}->[2] eq "elem2")
43 ) &&
44 ($db->{hash1} &&
45 ($db->{hash1}->{subkey1} eq "subvalue1") &&
46 ($db->{hash1}->{subkey2} eq "subvalue2")
47 )
48);