Skip to content

Latest commit

 

History

History
73 lines (60 loc) · 2.06 KB

CONTRIBUTING.md

File metadata and controls

73 lines (60 loc) · 2.06 KB

Contributing

Before you can contribute, EA must have a Contributor License Agreement (CLA) on file that has been signed by each contributor. You can sign here: Go to CLA

Pull Request Policy

All code contributions are submitted as Github pull requests. All pull requests will be reviewed by a maintainer according to the guidelines found in the next section.

Your pull request should:

  • merge cleanly
  • come with tests
    • tests should be minimal and stable
    • fail before your fix is applied
  • pass the test suite
  • code formatting is encoded in clang format
    • limit using clang format on new code
    • do not deviate from style already established in the files

Running the Unit Tests

EAAssert uses CMake as its build system.

  • Create and navigate to "your_build_folder":
    • mkdir your_build_folder && cd your_build_folder
  • Generate build scripts:
    • cmake source_folder -DEATHREAD_BUILD_TESTS:BOOL=ON
  • Build unit tests for "your_config":
    • cmake --build . --config your_config
  • Run the unit tests for "your_config" from the test folder:
    • cd test && ctest -C your_config

Here is an example batch file.

set build_folder=out
mkdir %build_folder%
pushd %build_folder%
call cmake .. -DEATHREAD_BUILD_TESTS:BOOL=ON
call cmake --build . --config Release
call cmake --build . --config Debug
call cmake --build . --config RelWithDebInfo
call cmake --build . --config MinSizeRel
pushd test
call ctest -C Release
call ctest -C Debug
call ctest -C RelWithDebInfo
call ctest -C MinSizeRel
popd
popd

Here is an example bash file

build_folder=out
mkdir $build_folder
pushd $build_folder
cmake .. -DEATHREAD_BUILD_TESTS:BOOL=ON
cmake --build . --config Release
cmake --build . --config Debug
cmake --build . --config RelWithDebInfo
cmake --build . --config MinSizeRel
pushd test
ctest -C Release
ctest -C Debug
ctest -C RelWithDebInfo
ctest -C MinSizeRel
popd
popd