Generate a minimum of 2 files in the GC test case

This commit is contained in:
Olivier 'reivilibre' 2021-11-14 06:45:52 +00:00
parent b90ce1abbd
commit 350f5beb05
2 changed files with 7 additions and 3 deletions

View File

@ -94,7 +94,7 @@ def generate_random_file(rng: Random, path: Path) -> FileDescriptor:
def generate_random_dir(
rng: Random, path: Path, max_remaining_files: int
rng: Random, path: Path, max_remaining_files: int, min_files: int = 0
) -> Tuple[DirectoryDescriptor, int]:
"""
Generates a random directory at the given path, and returns its descriptor
@ -102,12 +102,13 @@ def generate_random_dir(
:param rng: PRNG to use
:param path: path to use
:param max_remaining_files: The maximum number of files allowed.
:param min_files: The minimum number of files in this directory directly.
:return: (descriptor, number of files allowed remaining)
"""
os.mkdir(path)
num_files = rng.randint(0, max_remaining_files)
num_files = rng.randint(min_files, max_remaining_files)
max_remaining_files -= num_files
contents = dict()

View File

@ -181,9 +181,12 @@ class TestYamaCheck(TestCase):
rng = Random()
seed = rng.randint(0, 9001)
seed = 3674 # todo
print(f"seed: {seed}")
rng.seed(seed)
later_expected_descriptor, _ = generate_random_dir(rng, src_path, 32)
later_expected_descriptor, _ = generate_random_dir(
rng, src_path, 32, min_files=2
)
subprocess.check_call(("datman", "backup-one", "srca", "main"), cwd=datman_path)