use strict ; use lib 't' ; use Test::More; use BerkeleyDB; use util; plan(skip_all => "Sequence needs Berkeley DB 4.3.x or better\n" ) if $BerkeleyDB::db_version < 4.3; plan tests => 13; { my $home = "./fred7" ; ok my $lexD = new LexDir($home) ; my $Dfile = "$home/f" ; my $lex = new LexFile $Dfile; umask(0) ; my $env = new BerkeleyDB::Env -Home => $home, @StdErrFile, -Flags => DB_CREATE|DB_INIT_MPOOL; isa_ok($env, "BerkeleyDB::Env"); my $db = BerkeleyDB::Btree->new( Env => $env, -Filename => $Dfile, -Flags => DB_CREATE ); my $seq = $db->db_create_sequence(); isa_ok($seq, "BerkeleyDB::Sequence"); is int $seq->set_cachesize(42), 0, "set_cachesize"; my $key = "test sequence"; is int $seq->open($key), DB_NOTFOUND, "opened with no CREATE"; is int $seq->open($key, DB_CREATE), 0, "opened"; my $gotcs; is int $seq->get_cachesize($gotcs), 0; is $gotcs, 42; # First sequence should be 0 my $val; is int $seq->get($val), 0, "get"; is length($val), 8, "64 bts == 8 bytes"; my $gotkey =''; is int $seq->get_key($gotkey), 0, "get_key"; is $gotkey, $key; is int $seq->close(), 0, "close"; }