Refactor `tests` module
Created by: voorhs
Мне кажется, стоит использовать importlib.resources вместо таких конструкций. И надо в целом зарефакторить модуль с тестами:
- сделать отдельную папку для логов, чтобы прописать её в .gitignore
- дать файлам другие имена, чтобы отразить, что данный тест относится к узлу / модулю / пайплайну, к оптимизации / инференсу, к python API / CLI
Тогда обращение к файловой системе, чтобы достать конфиги или сохранить логи, упростится и унифицируется:
import importlib.resources as ires
# write to file
logs_dir = pathlib.Path.cwd() / "test_logs"
with logs_dir.open("w") as file:
json.dump(logs, file, indent=4)
# read file
with ires.files("autointent.datafiles").joinpath(config_name).open() as file:
file_content = file.read()
# resolve path
path = ires.files("tests.configs").joinpath("multilabel.yaml"):
config_path = path # pathlib.Path object
.gitignore
test_logs
К тому же надо добавить тесты на GPU (сейчас все тесты на CPU)