Include(FetchContent) FetchContent_Declare( Catch2 GIT_REPOSITORY https://github.com/catchorg/Catch2.git GIT_TAG v3.4.0 # or a later release ) FetchContent_MakeAvailable(Catch2) add_executable(tests QueryBuilderTest.cpp RecordTest.cpp ConnectionPoolTest.cpp BackendProviderTest.cpp models/product.hpp ColumnGeneratorTest.cpp ColumnNameGeneratorTest.cpp ValueGeneratorTest.cpp models/category.hpp models/supplier.hpp models/airplane.hpp models/flight.hpp models/person.hpp AnyTypeToVisitorTest.cpp ColumnTest.cpp models/coordinate.hpp models/location.hpp models/optional.hpp ConvertTest.cpp DummyConnection.hpp DummyConnection.cpp) target_link_libraries(tests PRIVATE Catch2::Catch2WithMain matador ${CMAKE_DL_LIBS} ${SQLite3_LIBRARIES} ${PostgreSQL_LIBRARY}) target_include_directories(tests PUBLIC $/include)