Added generic way to cover code by tests for many languages (you just need to make a correct header file for generator for your language - example in netcore implementation)
At current moment these tests use free Catch library (https://github.com/catchorg/Catch2/tree/Catch1.x) for easy test creation and usage. Decision to use it was because of simplicity, easy usage, one header file to use, stable community and growing interest (https://cpp.libhunt.com/project/googletest-google/vs/catch?rel=cmp-cmp)
Also, maybe, later it will be migrated to Catch2 (https://github.com/philsquared/Catch) - depends on need to support legacy compilers (c++98)
THRIFT_ADD_COMPILER(netcore "Enable compiler for .NET Core" ON)
Create folder with name specified in list of languages in CMakeLists.txt
Create tests in folder for your language (with extensions like .c - cc, cpp, etc)
#include "../catch/catch.hpp"
If you need - add files manually to thrift_compiler_tests_manual_SOURCES in CMakeLists.txt similar to
# you can add some files manually there set(thrift_compiler_tests_manual_SOURCES # tests file to avoid main in every test file ${CMAKE_CURRENT_SOURCE_DIR}/tests_main.cc )
mkdir cmake-vs && cd cmake-vs cmake .. cmake --build . ctest -C Debug -V
mkdir cmake-vs cd cmake-vs cmake .. cmake --build . ctest -C Debug -V