Я пишу кусок простого класса C++ и стараюсь иметь unittest case для кода.Unittest design pattern для статических функций
Код просто:
class Foo
{
static int EntryFunction(bool flag)
{
if(flag)
{
TryDownload();
}
else
{
TryDeleteFile();
}
return 0;
}
static void TryDownload()
{
// http download code
}
static void TryDeleteFile()
{
// delete file code
}
}
Выпуск, в соответствии с концепцией UT, мы не можем передать на подключение к сети. Таким образом, unittest не может запустить код загрузки. Моя конечная цель - просто проверить путь кода, например: при переходе в TRUE
путь к каталогу загрузки должен быть удалён, иначе логика удаления должна ударить. Я думал переопределить этот класс, поэтому функция загрузки и удаления может быть переопределена, чтобы просто установить флаг и noop, но функции являются статическими.
Мне было интересно, в этом случае, что будет хорошим способом протестировать его?