my ($tmp);
use IO::File;
use POSIX qw(tmpnam);
do { $tmp = tmpnam() ; } until IO::File->new ($tmp, O_RDWR|O_CREAT|O_EXCL);
END { unlink ($tmp) || warn "cannot unlink tmp file '$tmp'"; }
{
use TM::Materialized::MLDBM;
my $tm = new TM::Materialized::MLDBM (file => $tmp);
$tm->assert (Assertion->new (
type => 'isa',
roles => [ 'instance', 'class' ],
players => [ 'sacklpicka', 'cat' ]));
$tm->sync_out;
}
utime time + 1, time + 1, $tmp; # lets pretend that the file has been changed
{
use TM::Materialized::MLDBM;
my $tm = new TM::Materialized::MLDBM (file => $tmp);
use Data::Dumper;
warn Dumper [ $tm->tids ('cat') ]; # nothing there
$tm->sync_in;
warn Dumper [ $tm->instances ($tm->tids ('cat')) ]; # sacklpicka is back!
}