TBD...
- Docker
- Google Test and Google Mock
- C++20
- clang-format (recommended minimum ver. 17)
- OpenSSL
find . -name '*.cpp' -or -name '*.h' -or -name '*.hpp' | xargs clang-format --verbose -style=file -i
# run once after repo download if permission problem occurs
chmod +x ./clang-fmt-all.sh
# run from the top of workspace directory
./clang-fmt-all.sh
docker build -t desktop-business-application .
docker run -it --entrypoint /bin/bash desktop-business-application
docker run -it --entrypoint="/application/bin/desktop-business-app-tests" desktop-business-application
After building test target locally we can run all tests:
cd bin
./desktop-business-app-tests
Or we can limit testing to some tests according to our needs (finding best phrase in our test code like test-case name), for example:
cd bin
./desktop-business-app-tests --gtest_filter="*ReceptionistTestFixture*"
xhost +local:docker
docker run --net=host -e DISPLAY=$DISPLAY desktop-business-application
Example of installing valgrind
on ubuntu:
sudo apt install valgrind
After building tests for example one can run valgrind on tests:
cd bin
valgrind --leak-check=full ./desktop-business-app-tests
If we want to limit our output somehow, we can find a best identification string in our test's name and use it like this:
valgrind --leak-check=full ./desktop-business-app-tests --gtest_filter="*Association*"