Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

test: add unit tests for ctrace::RunDirectory

Aperta Adatta ai principianti
#164 2 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@tecnolgd ci sta già lavorando.

Dal 13/10/2026.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
88/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
cmake, cpp
Ambito
testing

Direzione di ricerca

Leggi tests/tool_output_tests.cpp per vedere il modello TestReport ed esamina include/Process/Tools/RunDirectory.hpp per capirne il comportamento. Aggiungi tests/run_directory_tests.cpp per i casi elencati relativi a costruzione, percorsi, unicità e pulizia, quindi registra l'eseguibile e il test in CMakeLists.txt, incluse entrambe le liste alla fine del file. Esegui ctest -L unit; il lavoro è completato quando i nuovi test passano, compresa la pulizia quando la directory contiene file e sottodirectory.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
C++
Stelle
5
Fork
4
Merge medio
1h 9m
PR unite (30g)
81

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di CoreTrace/coretrace

Tutte le issue di CoreTrace/coretrace

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.