Вопрос про cmake, add_test() и передачу аргументов в тест при генерации решения для Visual Studio

Скажите, пожалуйста, поддерживает ли команда add_test() из cmake добавление переданных для теста аргументов в проект в Visual Studio?

Я делаю так:

add_test(${PROJECT_NAME} "123")

Где ${PROJECT_NAME} - это цель, которая собирает исполняемый файл.

Проблема в том, что если генерируется решение для Visual Studio, то в проекте сборки исполняемого файла нет никаких параметров, которые передаются собираемому приложению.

Более того, даже если запускать обозначенный тест через GTest adapter, то тест все равно не получает никаких аргументов, кроме адреса, откуда этот тест запустили.

Скажите, можно ли решить эту проблему?


Ответы (1 шт):

Автор решения: Andrej Levkovitch

Смотрим официальную документацию. Как видим add_test поддерживает ключевые NAME и COMMAND и если указывать без них, то вызов выглядит как:

add_test(<name> <command> <args>)

Чтобы у вас не возникало путаницы, указывайте ключевые слова явно

add_test(NAME my_test COMMAND ${PROJECT_NAME} "123")
→ Ссылка