This document assumes you have followed the Apache Geode Code contribution instructions
see BUILDING.md
Before submitting a pull request the unit and integration tests must all pass. We are using CTest, (Please see the CTest documentation for further information.)
$ cd <clone> $ cd build
The following steps will be updated once the “run-unit-tests” target is fixed.
$ cd cppcache/test/<Debug|Release|if needed> $ ./gfcppcache_unittests
$ cd <clone> $ cd build $ cmake --build . --target run-integration-tests
Which is equivalent to running ctest directly:
$ cd build/cppcache/integration-test $ ctest --timeout 2000 -L STABLE -C <Debug|Release> -R . -j1
This will take ~ 2 hours, YMMV... you can up the jobs to 4 and run in parallel, but you may end up with test failures that will need to be re-run sequentially. Like so:
$ cd build/cppcache/integration-test $ ctest -R <test_name> -C <Debug|Release>
For C++ it is required to follow the Google C++ Style Guide and have a build target that uses clang-format to achieve compliance.
$ cd <clone> $ mkdir build $ cd build $ cmake ../src -DCLANG_FORMAT=<path to clang-format> $ cmake --build . --target format
Xcode command line developer tools
$ xcode-select --install