from pathlib import Path from pytest_abra import DirManager, Runner def test_runner_create_status_file(tmp_path: Path): """check if _create_status_file prevents duplicates""" DIR = DirManager(output_dir=tmp_path, session_id="temp") DIR.create_all_dirs() assert len(list(DIR.STATUS.iterdir())) == 0 # create first status file Runner._create_status_file(DIR, "passed", "identifier-a") assert len(list(DIR.STATUS.iterdir())) == 1 # create second status file Runner._create_status_file(DIR, "passed", "identifier-b") assert len(list(DIR.STATUS.iterdir())) == 2 # check if _get_status_files finds only the correct status file result = Runner._get_status_files(DIR, "identifier-a") assert len(result) == 1 # overwrite first status file Runner._create_status_file(DIR, "failed", "identifier-a") assert len(list(DIR.STATUS.iterdir())) == 2 assert Runner._is_test_passed(DIR, "identifier-a") is False