mirror of
https://github.com/visualboyadvance-m/visualboyadvance-m
synced 2025-10-05 23:52:49 +02:00
Add the Catch2 headers to third_party/include/catch2. Add Catch.cmake and CatchAddTests.cmake to cmake/. Add unit tests src/wx/tests/strutils.cpp using Catch2 to test src/wx/strutils.cpp. Make some code changes to strutils.cpp to make the tests pass. See src/wx/tests/CMakeLists.txt for how to set up unit test files; they plug into the normal CTest mechanism in cmake. The test binaries are written to the tests/ subdirectory of the build directory. Building the tests and enabling the CTest support can be turned off by passing -DBUILD_TESTING=OFF to cmake, the default is ON, this is the standard mechanism. Start running ctest on travis and appveyor. Move stb to third_party/include where Catch2 is now as well. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
48 lines
1007 B
YAML
48 lines
1007 B
YAML
version: '{build}'
|
|
|
|
image:
|
|
- Visual Studio 2017
|
|
|
|
build:
|
|
verbosity: detailed
|
|
|
|
configuration:
|
|
- Debug
|
|
- Release
|
|
|
|
platform:
|
|
- x64
|
|
- x86
|
|
|
|
environment:
|
|
matrix:
|
|
- STATIC: " "
|
|
- STATIC: "-static"
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
|
|
install:
|
|
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-win.zip"
|
|
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
|
|
- 7z x ninja.zip -oc:\projects\ninja > nul
|
|
- set PATH=c:\projects\ninja;%PATH%
|
|
- ninja --version
|
|
|
|
before_build:
|
|
- call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" %PLATFORM%
|
|
|
|
build_script:
|
|
- mkdir build
|
|
- cd build
|
|
- cmake .. -DVCPKG_TARGET_TRIPLET=%PLATFORM%-windows%STATIC% -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DENABLE_SDL=TRUE -G Ninja
|
|
- ninja
|
|
|
|
# only debug builds are console mode apps, in them test --help
|
|
test_script:
|
|
- if not %CONFIGURATION%==Release .\visualboyadvance-m.exe --help
|
|
- ctest -V
|
|
|
|
cache:
|
|
- c:\vcpkg\installed
|