Started migration to Test::Class
[dbsrgits/DBM-Deep.git] / t / lib / TestBase.pm
CommitLineData
d0c365a5 1package TestBase;
2
3use 5.6.0;
4
5use strict;
6use warnings;
7
8use File::Path ();
9use File::Temp ();
10use Fcntl qw( :flock );
11
12use base 'Test::Class';
13
14use DBM::Deep;
15
16sub setup_dir : Test(startup) {
17 my $self = shift;
18
19 $self->{workdir} = File::Temp::tempdir();
20
21 return;
22}
23
24sub new_file {
25 my $self = shift;
26
27 my ($fh, $filename) = File::Temp::tempfile(
28 'tmpXXXX', DIR => $self->{workdir}, CLEANUP => 1,
29 );
30 flock( $fh, LOCK_UN );
31
32 return $filename;
33}
34
35sub remove_dir : Test(shutdown) {
36 my $self = shift;
37
38 File::Path::rmtree( $self->{workdir} );
39
40 return;
41}
42
431;
44__END__