The function now takes an output buffer as a parameter. This prevents race conditions by copying the parameter value into a local buffer.
Now, given a concept xyz, * the main test file is called test_xyz.cc * the executable is called test_xyz, and * the ctest test is called text_xyz.