Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

test: add unit tests for ctrace::RunDirectory

Abierto Apto para principiantes
#164 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@tecnolgd ya está trabajando en esto.

Desde el 13/10/2026.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
88/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
cmake, cpp
Área
testing

Línea de trabajo

Lee tests/tool_output_tests.cpp para ver el patrón de TestReport e inspecciona include/Process/Tools/RunDirectory.hpp para entender su comportamiento. Añade tests/run_directory_tests.cpp para los casos indicados de construcción, rutas, unicidad y limpieza; después, registra el ejecutable y la prueba en CMakeLists.txt, incluidas ambas listas al final del archivo. Ejecuta ctest -L unit; la tarea estará terminada cuando pasen las nuevas pruebas, incluida la limpieza cuando el directorio contiene archivos y subdirectorios.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

good first issue test

ctrace::RunDirectory (include/Process/Tools/RunDirectory.hpp) gives each tool run its own temporary directory (created with mkdtemp, removed in the destructor). It has no direct unit tests.

To do: add tests/run_directory_tests.cpp covering:

  • the directory exists right after construction;
  • it is located under std::filesystem::temp_directory_path(), and its name starts with the given prefix followed by -;
  • two instances created with the same prefix get two different paths;
  • the directory is removed when the object is destroyed, including when it still contains files and subdirectories.

How: follow the pattern of tests/tool_output_tests.cpp (a small TestReport with expect, main returns non-zero on failure). The header is header-only, so the test needs no source file. Register it in CMakeLists.txt like the other tests:

add_executable(ctrace_run_directory_tests tests/run_directory_tests.cpp)
add_test(NAME ctrace_run_directory_tests COMMAND ctrace_run_directory_tests)

and add ctrace_run_directory_tests to the two lists at the end of CMakeLists.txt: coretrace_unit_tests (so ctest -L unit runs it) and the foreach(coretrace_target ...) list of executables.

Lenguaje dominante
C++
Estrellas
5
Forks
4
Merge medio
1 h 4 min
PR fusionados (30 d)
71

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de CoreTrace/coretrace

Todos los issues de CoreTrace/coretrace

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.