aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.appveyor.yml
blob: 2e6b3426cc98514126504db6c8da2b5b4f076bed (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
version: '{build}'

image:
  - Visual Studio 2019
  - Visual Studio 2013
  - Visual Studio 2015
  - Visual Studio 2017

environment:
  python_exe: C:\Python36-x64\python.exe
  install_dir: C:\Projects\install\winapi-common
  test_logs_dir: C:\Projects\test_logs

platform:
  - Win32
  - x64

configuration:
  - Debug
  - RelWithDebInfo

matrix:
  fast_finish: true

  # On Win32, only build Debug to speed things up:
  exclude:
    - platform: Win32
      configuration: RelWithDebInfo

install:
  - git submodule update --init --recursive

before_build:
  - '"%python_exe%" cmake\tools\clang-format.py'

build_script:
  - cd cmake
  - >-
    "%python_exe%" -m project.ci.appveyor.cmake
    --install "%install_dir%"
    --boost "%appveyor_boost_root%"
    -- -D WINAPI_COMMON_TESTS=ON

after_build:
  - 7z.exe a "%APPVEYOR_PROJECT_NAME%-%PLATFORM%-%CONFIGURATION%.zip" "%install_dir%"
  - appveyor.exe PushArtifact "%APPVEYOR_PROJECT_NAME%-%PLATFORM%-%CONFIGURATION%.zip"

test_script:
  - mkdir "%test_logs_dir%"
  - >-
    "%install_dir%\bin\winapi-common-unit-tests.exe"
    --log_level=all
    "--log_sink=%test_logs_dir%\tests.log"
    "--report_sink=%test_logs_dir%\report.txt"
    --run_test=!console_tests,process_console_tests
    --
    "--echo_exe=%install_dir%\bin\winapi-common-test-echo.exe"
    "--worker_exe=%install_dir%\bin\winapi-common-test-worker.exe"
  - type "%test_logs_dir%\report.txt"
  - >-
    start "Console tests" /wait
    "%install_dir%\bin\winapi-common-unit-tests.exe"
    --log_level=all
    "--log_sink=%test_logs_dir%\tests_console.log"
    "--report_sink=%test_logs_dir%\report_console.txt"
    --run_test=console_tests,process_console_tests
    --
    "--echo_exe=%install_dir%\bin\winapi-common-test-echo.exe"
    "--worker_exe=%install_dir%\bin\winapi-common-test-worker.exe"
  - type "%test_logs_dir%\report_console.txt"

on_finish:
  - 7z.exe a test_logs.zip "%test_logs_dir%"
  - appveyor.exe PushArtifact test_logs.zip

for:
# Build Release on master only to speed things up:
- branches:
    except:
      - master
  configuration:
    - Debug

- matrix:
    only:
      - image: Visual Studio 2013
  environment:
    # First release of Boost.Test v3.
    boost_version: 1.59.0
  build_script:
    - cd cmake
    - '"%python_exe%" -m project.ci.appveyor.boost -- --with-test'
    - >-
      "%python_exe%" -m project.ci.appveyor.cmake
      --install "%install_dir%"
      --boost C:\projects\boost
      -- -D WINAPI_COMMON_TESTS=ON

- matrix:
    only:
      - image: Visual Studio 2015
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_63_0
- matrix:
    only:
      - image: Visual Studio 2017
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_67_0
- matrix:
    only:
      - image: Visual Studio 2019
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_71_0