27 lines
1.0 KiB
Python
27 lines
1.0 KiB
Python
|
""" support for providing temporary directories to test functions. """
|
||
|
import pytest, py
|
||
|
|
||
|
def pytest_configure(config):
|
||
|
def ensuretemp(string, dir=1):
|
||
|
""" (deprecated) return temporary directory path with
|
||
|
the given string as the trailing part. It is usually
|
||
|
better to use the 'tmpdir' function argument which will
|
||
|
take care to provide empty unique directories for each
|
||
|
test call even if the test is called multiple times.
|
||
|
"""
|
||
|
#py.log._apiwarn(">1.1", "use tmpdir function argument")
|
||
|
return config.ensuretemp(string, dir=dir)
|
||
|
pytest.ensuretemp = ensuretemp
|
||
|
|
||
|
def pytest_funcarg__tmpdir(request):
|
||
|
"""return a temporary directory path object
|
||
|
unique to each test function invocation,
|
||
|
created as a sub directory of the base temporary
|
||
|
directory. The returned object is a `py.path.local`_
|
||
|
path object.
|
||
|
"""
|
||
|
name = request._pyfuncitem.name
|
||
|
name = py.std.re.sub("[\W]", "_", name)
|
||
|
x = request.config.mktemp(name, numbered=True)
|
||
|
return x.realpath()
|