benchmark/appveyor.yml
Eric e63fb4961d
Begin JSON reporter change: Allow users to specify arbitrary JSON input/output. (#499)
This patch begins a set of changes to convert the library to use JSON as
the primary data type used to communicate with users; but for custom user
input and output.

The patch introduces the json.hpp header which is supplied by
https://github.com/nlohmann/json. The header is used unmodified
in the third_party directory. It is installed under the include/benchmark
prefix.

Additionally, this patch adds `Benchmark::WithInput` to allow
the passing of arbitrary JSON as an input argument to a benchmark.
The results of which can be accessed using `State::GetInput()`.

This patch also adds `State::operator[](std::string)`, which allows
users to report arbitrary JSON as output from a benchmark. See
the documentation for examples.
2018-01-06 11:50:29 -07:00

51 lines
1.2 KiB
YAML

version: '{build}'
image: Visual Studio 2017
configuration:
- Debug
- Release
environment:
matrix:
- compiler: msvc-15-seh
generator: "Visual Studio 15 2017"
- compiler: msvc-15-seh
generator: "Visual Studio 15 2017 Win64"
- compiler: msvc-14-seh
generator: "Visual Studio 14 2015"
- compiler: msvc-14-seh
generator: "Visual Studio 14 2015 Win64"
- compiler: gcc-5.3.0-posix
generator: "MinGW Makefiles"
cxx_path: 'C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin'
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
matrix:
fast_finish: true
install:
# git bash conflicts with MinGW makefiles
- if "%generator%"=="MinGW Makefiles" (set "PATH=%PATH:C:\Program Files\Git\usr\bin;=%")
- if not "%cxx_path%"=="" (set "PATH=%PATH%;%cxx_path%")
build_script:
- md _build -Force
- cd _build
- echo %configuration%
- cmake -G "%generator%" "-DCMAKE_BUILD_TYPE=%configuration%" -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON ..
- cmake --build . --config %configuration%
test_script:
- ctest -c %configuration% --timeout 300 --output-on-failure
artifacts:
- path: '_build/CMakeFiles/*.log'
name: logs
- path: '_build/Testing/**/*.xml'
name: test_results