This PR introduces the Google Test (gtest) framework, a ConfigManagerTester.cpp test suite, and restructures the project with separate CMakeLists.txt files for source, tests, and the main project.
Changes
Modular CMakeLists Structure
Created three separate CMakeLists.txt files for better project organization:
src/CMakeLists.txt: Handles the build configuration for the source code.
tests/CMakeLists.txt: Configures the build for test-related files, including the integration of gtest.
CMakeLists.txt: The main CMake file, fetch content and control the two other files.
Add gtest Framework
Integrated gtest into the tests/CMakeLists.txt for unit testing.
Add ConfigManagerTester
Introduced a ConfigManagerTester.cpp in the tests directory.
Currently check for proper reading of config.json file by ConfigManager.cpp
Add ConfigFileCreator
Make a class TempConfigFile responsible for creating temporary config file to be used by tests
8
Summary
This PR introduces the Google Test (gtest) framework, a
ConfigManagerTester.cpp
test suite, and restructures the project with separateCMakeLists.txt
files for source, tests, and the main project.Changes
Modular CMakeLists Structure
CMakeLists.txt
files for better project organization:src/CMakeLists.txt
: Handles the build configuration for the source code.tests/CMakeLists.txt
: Configures the build for test-related files, including the integration ofgtest
.CMakeLists.txt
: The main CMake file, fetch content and control the two other files.Add gtest Framework
gtest
into thetests/CMakeLists.txt
for unit testing.Add ConfigManagerTester
ConfigManagerTester.cpp
in thetests
directory.Add ConfigFileCreator