#!./perl use strict; use Test::More tests => 4; use SDBM_File; use File::Temp 'tempfile'; use Fcntl; my ($dirfh, $dirname) = tempfile(UNLINK => 1); my ($pagfh, $pagname) = tempfile(UNLINK => 1); # close so Win32 allows them to be re-opened close $dirfh; close $pagfh; { my %h; ok(eval { tie %h, "SDBM_File", $dirname, O_CREAT | O_RDWR | O_TRUNC, 0640, $pagname; 1 }, "create SDBM with explicit filenames") or diag $@; is(keys %h, 0, "should be empty"); # basic sanity checks, the real storage checks are done by sdbm.t $h{abc} = 1; $h{def} = 1; } { my %h; ok(eval { tie %h, "SDBM_File", $dirname, O_RDWR, 0640, $pagname; 1 }, "open SDBM with explicit filenames"); is_deeply([ sort keys %h] , [ qw(abc def) ], "should have two keys"); }