да, структура типа files->и тут пошли файлы xlsx, они генерятся и сразу же отдаются ссылки на них, они хранятся N-количество времени и автоудаляются если пользователь их не забрал
глобалы это изначально к проблемам при тестировании
если я сейчас вынесу бизнес-логику удаления файлов в функцию, которая будет возвращать ok,err то тестирование будет провести супер легко. но на сколько это корректно? есть же void функции и их как-то тестируют, или я где-то ошибаюсь ?(
Моками такие вещи тестируются. Вкину теорию, а практику конкретно для вашего случая не подскажу. Есть 2 вида функций: 1. query - без сайд эффектов (принимают аргументы, возвращают результат). Они тестируются относительно просто. Если без зависимостей, то подаем что-то на вход и ожидаем нужный результат. Если с зависимостями, то подаем на вход зависимость (ее фейк\дубль) и ожидаем нужный результат. Зависимость меняем на Фейк\дубль, чтобы при тестировании тестировать именно нашу функцию, а не то, от чего она зависит. 2. Command - функции с сайд эффектами. Например запись в базу или функция печатающая в stdout. Чтобы их тестировать нужны моки.
примерно понял, т.е. мне нужно моками сделать состояние и при вызове моей функции это состояние меняется - и если оно изменилось так, как планировалось, значит все ок - правильно?
Я не особо представил, что там за ситуация в коде у вас( Ну в целом, да. Написал выше, чтобы мб дать направление, куда гуглить
хорошо, спасибо большое
Небольшое уточнение: это значит то, что то, что покрыто тестом, не сломалось. Но тест может покрывать не все вероятные сценарии
Да, конечно, я понимаю. Спасибо!
Обсуждают сегодня