SVCS - Русская документация
Загрузка...
Поиск...
Не найдено
Класс svcs::test::cli::utils::ClearCommandTest

Тестовый фикстур для интеграционных тестов ClearCommand. Подробнее...

#include <ClearCommandTest.hxx>

Граф наследования:svcs::test::cli::utils::ClearCommandTest:

Защищенные члены

void SetUp () override
 Настраивает тестовое окружение.
void TearDown () override
 Очищает тестовое окружение.
void createTestFile (const std::string &filename, const std::string &content="test content") const
 Создает тестовый файл внутри тестовой директории.
void createTestDirectory (const std::string &dirname) const
 Создает тестовую директорию внутри тестовой директории.
void simulateUserInput (const std::string &input)
 Имитирует пользовательский ввод путем перенаправления std::cin в строковый поток.
bool repositoryExists () const
 Проверяет, существует ли директория репозитория .svcs.

Защищенные данные

std::shared_ptr< MockSubjectmockEventBus
 Mock шина событий для захвата системных уведомлений.
std::shared_ptr< RepositoryManagerrepoManager
 Реальный экземпляр RepositoryManager под тестом.
std::unique_ptr< ClearCommandcommand
 Экземпляр ClearCommand под тестом.
std::filesystem::path testDir
 Путь к временной директории, используемой как корень репозитория.
std::stringstream inputStream
 Строковый поток, используемый для подачи имитированного ввода в std::cin.
std::streambuf * originalCin
 Указатель на оригинальный буфер std::cin, сохраненный для восстановления.

Подробное описание

Тестовый фикстур для интеграционных тестов ClearCommand.

Управляет настройкой и очисткой временного инициализированного репозитория SVCS. Предоставляет служебные методы для создания тестовых файлов/директорий и для имитации пользовательского ввода, необходимого для подтверждения очистки репозитория.

Методы

◆ createTestDirectory()

void svcs::test::cli::utils::ClearCommandTest::createTestDirectory ( const std::string & dirname) const
protected

Создает тестовую директорию внутри тестовой директории.

Аргументы
dirnameИмя создаваемой директории.

◆ createTestFile()

void svcs::test::cli::utils::ClearCommandTest::createTestFile ( const std::string & filename,
const std::string & content = "test content" ) const
protected

Создает тестовый файл внутри тестовой директории.

Аргументы
filenameИмя создаваемого файла.
contentСодержимое файла (по умолчанию "test content").

◆ repositoryExists()

bool svcs::test::cli::utils::ClearCommandTest::repositoryExists ( ) const
protected

Проверяет, существует ли директория репозитория .svcs.

Возвращает
true если репозиторий существует, false в противном случае.

◆ SetUp()

void svcs::test::cli::utils::ClearCommandTest::SetUp ( )
overrideprotected

Настраивает тестовое окружение.

Создает и инициализирует новый временный репозиторий SVCS и сохраняет оригинальный буфер std::cin.

◆ simulateUserInput()

void svcs::test::cli::utils::ClearCommandTest::simulateUserInput ( const std::string & input)
protected

Имитирует пользовательский ввод путем перенаправления std::cin в строковый поток.

Аргументы
inputСтрока, которая будет прочитана как пользовательский ввод.

◆ TearDown()

void svcs::test::cli::utils::ClearCommandTest::TearDown ( )
overrideprotected

Очищает тестовое окружение.

Восстанавливает оригинальный буфер std::cin и рекурсивно удаляет временную директорию.


Объявления и описания членов классов находятся в файлах: