
* Tests live in a "Tests" folder alongside the other components. Inside the "Tests" folder, tests are split into folders by the component they test. For example, the example unit test of "rcVdot" (which is implmemented in Recast/Recast.h) lives in "Tests/Recast/Tests_Recast.h". * Uses the Catch testing framework * One example test of "rcVdot" * Tests are run on Travis and Appveyor after every build. Failing unit tests will fail the build in both case. * Added instructions on running unit tests to the readme
46 lines
1.6 KiB
YAML
46 lines
1.6 KiB
YAML
sudo: false
|
|
|
|
language: cpp
|
|
|
|
# Build with gcc and clang.
|
|
compiler:
|
|
- gcc
|
|
# Disable clang for now since it seems there's a problem using it with fast fp math; it's likely Travis' ancient environment that's at fault.
|
|
# - clang
|
|
|
|
# Build both debug and release configurations, through use of an environment variable in the build matrix.
|
|
env:
|
|
- CONFIGURATION=debug
|
|
- CONFIGURATION=release
|
|
|
|
install:
|
|
# Download and build SDL2 from source.
|
|
- mkdir dummyprefix
|
|
- export PREFIX=$PWD/dummyprefix
|
|
- export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
|
|
- export PATH=$PATH:$PWD/dummyprefix/bin
|
|
- wget https://www.libsdl.org/release/SDL2-2.0.4.tar.gz -O SDL2.tar.gz
|
|
- tar -xzf SDL2.tar.gz
|
|
- cd SDL2-2.0.4
|
|
- ./configure --prefix=$PREFIX
|
|
- make -j5
|
|
- make install
|
|
- cd ..
|
|
# Download and build premake5 from source; the Travis environment doesn't have the right version of glibc6 for the prebuilt binaries to work.
|
|
- wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha6/premake-5.0.0-alpha6-src.zip -O premake.zip
|
|
- unzip premake.zip
|
|
- cd premake-5.0.0-alpha6/build/gmake.unix
|
|
- make config=release
|
|
- cd ../../..
|
|
- mv premake-5.0.0-alpha6/bin/release/premake5 premake5
|
|
|
|
# Run premake to generate makefiles.
|
|
# Have to cd into directory and back out since premake5 doesn't appear to accept a directory argument.
|
|
before_script:
|
|
- cd RecastDemo && ../premake5 gmake && cd ..
|
|
|
|
# Run make in the directory containing generated makefiles, on the configuration specified by the environment variable.
|
|
script:
|
|
- make -C RecastDemo/Build/gmake config=$CONFIGURATION
|
|
- RecastDemo/Bin/Tests
|