benchmark crud: use TemporaryDirectory below given path, fixes #4706

This commit is contained in:
Thomas Waldmann 2023-04-07 18:05:19 +02:00
parent 09781e1d30
commit 08a2db9410
No known key found for this signature in database
GPG Key ID: 243ACFA951F78E01
1 changed files with 2 additions and 6 deletions

View File

@ -2,7 +2,7 @@ import argparse
from contextlib import contextmanager
import functools
import os
import shutil
import tempfile
import time
from ..constants import * # NOQA
@ -60,9 +60,7 @@ class BenchmarkMixIn:
@contextmanager
def test_files(path, count, size, random):
try:
path = os.path.join(path, "borg-test-data")
os.makedirs(path)
with tempfile.TemporaryDirectory(prefix="borg-test-data-", dir=path) as path:
z_buff = None if random else memoryview(zeros)[:size] if size <= len(zeros) else b"\0" * size
for i in range(count):
fname = os.path.join(path, "file_%d" % i)
@ -70,8 +68,6 @@ class BenchmarkMixIn:
with SyncFile(fname, binary=True) as fd: # used for posix_fadvise's sake
fd.write(data)
yield path
finally:
shutil.rmtree(path)
if "_BORG_BENCHMARK_CRUD_TEST" in os.environ:
tests = [("Z-TEST", 1, 1, False), ("R-TEST", 1, 1, True)]