The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Test::TempDir - (DEPRECATED) Temporary files support for testing

VERSION

version 0.09

DEPRECATION NOTICE

There have been numerous issues found with this module, particularly with its use of locks (unreliable, may result in your entire $TMPDIR being deleted) and MSWin32 compatibility. As well, it uses Moose, which is nowadays considered to be heavier than necessary.

Test::TempDir::Tiny was written as a replacement. Please use it instead!

SYNOPSIS

    use Test::TempDir;

    my $test_tempdir = temp_root();

    my ( $fh, $file ) = tempfile();

    my $directory_scratch_obj = scratch();

DESCRIPTION

Test::TempDir provides temporary directory creation with testing in mind.

The differences between using this and using File::Temp are:

  • If t/tmp is available (writable, creatable, etc) it's preferred over $ENV{TMPDIR} etc. Otherwise a temporary directory will be used.

    This is temp_root

  • Lock files are used on t/tmp, to prevent race conditions when running under a parallel test harness.

  • The temp_root is cleaned at the end of a test run, but not if tests failed.

  • temp_root is emptied at the beginning of a test run unconditionally.

  • The default policy is not to clean the individual tempfiles and tempdirs within temp_root, in order to aid in debugging of failed tests.

EXPORTS

temp_root

The root of the temporary stuff.

tempfile

tempdir

Wrappers for the File::Temp functions of the same name.

The default options are changed to use temp_root for DIR and disable CLEANUP, but these are overridable.

scratch

Loads Directory::Scratch and instantiates a new one, with the same default options as tempfile and tempdir.

SEE ALSO

AUTHOR

יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2006 by יובל קוג'מן (Yuval Kogman).

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

CONTRIBUTORS

  • Yuval Kogman <nothingmuch@woobling.org>

  • Karen Etheridge <ether@cpan.org>

  • Florian Ragwitz <rafl@debian.org>